المعلوماتية > معجم المعلوماتية

الخوارزمية Algorithm

تُعدّ الخوارزمية (Algorithm) أحد أهم المفهومات التي شاع استخدامها في مجال الحوسبة، لكنّها لا تقتصر عليه (7-3)، وتعود هذه التسمية إلى عالم الرياضيات والفلك الفارسي "محمد بن موسى الخوارزمي" الذي أوجد هذا المصطلح في القرن التاسع الميلادي (7-5).

التعريف العام

الخوارزمية: مجموعة محدودة ومتسلسلة من الخطوات أو الإجراءات المنطقية التي يؤدّي تنفيذها على نحو صحيح إلى حل مشكلة معينة؛ كوصفة إعداد وجبة ما (5،8).

التعريف في مجال الحوسبة

مجموعة محدودة من التعليمات البرمجية المفصّلة التي يُزوَّد بها الحاسب بهدف تحقيق مهمة معينة (1،4)، ويجب أن تستوفي المعايير الآتية (4):

  1. الدخل Input: يغذّي المبرمجُ الخوارزمية بقيمة واحدة أو أكثر 
  2. الخرج Output: تُنتِج الخوارزمية قيمة واحدة على الأقل لتكون نتيجةً لعملها
  3. الوضوح Definiteness: يجب أن تكون كل تعليمة واضحة لا غموض فيها
  4. محدودية التعليمات Finiteness (أن تكون منتهية): إذا تتبّعنا تعليمات الخوارزمية نجد أنها تنتهي بعد عدد محدود من الخطوات
  5. الفعالية Effectiveness: يجب أن تكون كل التعليمات أساسية بما يكفي لتنفّذ باستخدام قلم وورقة فقط.
يُقسَم مجال علوم الحاسب (Computer Science) إلى العديد من المجالات الفرعية: نظم التشغيل، والشبكات، وهندسة البرمجيات، والذكاء الصنعي، والتشفير، وأمن المعلومات.. إلخ، لكنّ المشترك بينها جميعًا أنها تستخدم الخوارزميات (2).

طرائق تمثيل الخوارزميات (7)

أشهر الخوارزميات (2،8)

هناك العديد من أنواع الخوارزميات وفق طرائق تصنيف مختلفة، نذكر منها:

المصادر:

1- E. Knuth D. Algorithms [Internet]. Scientific American. 1977 [cited 6 July 2020]. Available from: هنا  

2- Kamara S، Woos D. Introduction to Algorithms and Data Structures [Internet]. Cs.brown.edu. 2020 [cited 6 July 2020]. Available from: هنا 

3- [Internet]. Csie.ntu.edu.tw. [cited 6 July 2020]. Available from: هنا 

4- ALGORITHM | meaning in the Cambridge English Dictionary [Internet]. Dictionary.cambridge.org. [cited 6 July 2020]. Available from: هنا

5- How Algorithm Got Its Name [Internet]. Earthobservatory.nasa.gov. 2017 [cited 6 July 2020]. Available from: هنا  

6- Schnhart S، Podlipnig S. History of Algorithms [Internet]. Cs-exhibitions.uni-klu.ac.at. [cited 6 July 2020]. Available from: هنا  

7- Data Structures and Algorithms، Introduction to Algorithms Lecture [Internet]. Dl.sumdu.edu.ua. 2018 [cited 6 July 2020]. Available from: هنا  

8- Concept: Types of algorithms [Internet]. 2010 [cited 18 October 2010]. Available from: هنا