هل تعرف ما هي الخوارزمية ، ماذا تعني وما هي خصائصها؟

ما هي الخوارزمية

هل تعرف ما هي الخوارزمية ، ماذا تعني وما هي خصائصها؟





ما هي الخوارزمية؟

الخوارزمية هي مجموعة من الخطوات الرياضية والمنطقية والمتسلسلة المطلوبة لحل مشكلة ما. سميت الخوارزمية على اسم العالم المسلم أبو جعفر محمد بن موسى الخوارزمي الذي ابتكرها في القرن التاسع الميلادي. الكلمة الشائعة في اللغات اللاتينية والأوروبية هي "algorithm" وكان معناها في الأصل مقصورا على خوارزمية لثلاث تراكيب فقط: التسلسل والاختيار والتكرار.

التسلسل: تكون الخوارزمية عبارة عن مجموعة من التعليمات المتسلسلة، هذه التعليمات قد تكون إما بسيطة أو من النوعين التاليين.

الاختيار: بعض المشاكل لا يمكن حلها بتسلسل بسيط للتعليمات، وقد تحتاج إلى اختبار بعض الشروط وتنظر إلى نتيجة الاختبار، إذا كانت النتيجة صحيحة تتبع مسار يحوي تعليمات متسلسلة، وإذا كانت خاطئة تتبع مسار آخر مختلف من التعليمات. هذه الطريقة هي ما تسمى اتخاذ القرار أو الاختيار.

التكرار: عند حل بعض المشاكل لا بد من إعادة نفس تسلسل الخطوات عدد من المرات. وهذا ما يطلق عليه التكرار.

و قد أثُبت أنه لاحاجة إلى تراكيب إضافية. استخدام هذه التراكيب الثلاث يسهل فهم الخوارزمية واكتشاف الأخطاء الواردة فيها وتغييرها.


مصطلح الاختيار الحالي لإجراء حل المشكلات ، الخوارزمية ، يستخدم بشكل شائع في الوقت الحاضر لمجموعة القواعد التي يتبعها الجهاز (وخاصة الكمبيوتر) لتحقيق هدف معين. ومع ذلك ، فإنه لا ينطبق دائما على النشاط الذي يتم بوساطة الكمبيوتر. يمكن استخدام المصطلح بدقة للخطوات المتبعة في صنع بيتزا كما هو الحال في تحليل البيانات التي تعمل بالكمبيوتر.

غالبا ما يتم إقران الخوارزمية بكلمات تحدد النشاط الذي تم تصميم مجموعة من القواعد من أجله. خوارزمية البحث ، على سبيل المثال ، هي إجراء يحدد نوع المعلومات التي يتم استردادها من كتلة كبيرة من البيانات. خوارزمية التشفير هي مجموعة من القواعد التي يتم من خلالها تشفير المعلومات أو الرسائل بحيث لا يتمكن الأشخاص غير المصرح لهم من قراءتها.


ما هي خصائص الخوارزمية؟

حيث لن يتبع المرء أي تعليمات مكتوبة لطهي الوصفة ، ولكن فقط التعليمات القياسية. وبالمثل ، ليست كل التعليمات المكتوبة الخاصة بالبرمجة عبارة عن خوارزمية. لكي تكون بعض التعليمات خوارزمية ، يجب أن تتمتع بالخصائص التالية:

واضح ولا لبس فيه: يجب أن تكون الخوارزمية واضحة ولا لبس فيها. يجب أن تكون كل خطوة من خطواتها واضحة من جميع الجوانب ويجب أن تؤدي إلى معنى واحد فقط.

مدخلات محددة جيدا: إذا قالت الخوارزمية أنها تأخذ مدخلات ، فيجب أن تكون مدخلات محددة جيدا.

مخرجات محددة جيدا: يجب أن تحدد الخوارزمية بوضوح ما هو الناتج الذي سيتم تحقيقه ويجب أن تكون محددة جيدا أيضا.

المنتهية: يجب أن تكون الخوارزمية محدودة ، أي لا ينبغي أن ينتهي بها الأمر في حلقات لا نهائية أو ما شابه ذلك.

مجدية: يجب أن تكون الخوارزمية بسيطة وعامة وعملية ، بحيث يمكن تنفيذها باستخدام الموارد المتاحة. يجب ألا تحتوي على بعض التقنيات المستقبلية ، أو أي شيء آخر.

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


صفات الخوارزميات الجيدة:

  • يجب تحديد المدخلات والمخرجات بدقة.
  • يجب أن تكون كل خطوة في الخوارزمية واضحة ولا لبس فيها.
  • يجب أن تكون الخوارزميات أكثر فعالية من بين العديد من الطرق المختلفة لحل مشكلة ما.
  • لا ينبغي أن تتضمن الخوارزمية رمز الكمبيوتر. بدلا من ذلك ، يجب كتابة الخوارزمية بطريقة يمكن استخدامها في لغات برمجة مختلفة.

تعليقات



حجم الخط
+
16
-
تباعد السطور
+
2
-