تصميم خوارزمية
الخوارزمية هو مصطلح يشير إلى مجموعة محدودة ومعينة من الخطوات، حيث أن كل واحدة من هذه الخطوات قد تتطلب في حد ذاتها واحد أو أكثر من العمليات الحسابية والمنطقية ، وإذا ما تم إتمام وتنفيذ هذه الخطوات بشكل صحيح فإنه سوف نحصل على نتيجة أو على مجموعة من النواتج بعد فترة محدودة ومعينة من الوقت اللازم لتنفيذ ذلك .
وهناك مجموعة وعناصر من القيود والممانعات على نوع العمليات التي يمكن أن تتضمن وتحيط الخوارزمية وهي التالي:
بحث أول-أفضل
خوارزمية البحث بأولوية الأفضل هي مثال على البحث الأول-الأفضل (تعرف بـ A* بالإنجليزية)، أما الخوارزمية المعروفة بـ (B*) فهي تستخدم غالباً لإيجاد المسارات في البحث الإندماجي (combinatorial search). ولا تعتبر أي من أ* أو ب*  خوارزمية بحث أول-أفضل جشع حيث أن كلاهما لا تتناغمان مع المسافة المقطوعة من البداية مجموعة مع المسافات المقدرة نحو الهدف وهي صفة خوارزمية البحث الأول-الأفضل الجشع.