ما هي الخوارزميات؟
- حصل الخوارزمي على اسمه من محمد بن موسى الخوارزمي الذي طور علم الجبر وسماه بهذا الاسم. ثم انتقل هذا العلم إلى جميع البلدان وترجم إلى العديد من اللغات الأخرى.
- ظلت كلمة خوارزمية متداولة في الدول الغربية حتى أصبحت مصطلحًا جديدًا يدل على البرمجة ، وهناك مصطلحات أخرى تشير إلى بعض الخوارزميات مثل الإجرائية والتقنية والطريقة.
- عندما يصنع خبير البرمجة برنامجًا معينًا ، فإن أول شيء يفكر فيه بعد الفهم والدراسة الكافية هو تطوير استراتيجيات للحل ثم ترجمتها إلى لغة يفهمها الكمبيوتر ، تسمى هذه الاستراتيجيات الخوارزميات.
- تُستخدم الخوارزميات في معالجة البيانات والعمليات الحسابية والعديد من المجالات الأخرى المعروفة والعمليات المحددة لتنفيذ مهمة محددة.
- الخوارزمية عبارة عن قائمة دقيقة بالخطوات الدقيقة ، لذلك يجب ترتيب التعليمات وترقيمها بشكل صحيح من أعلى إلى أسفل ، وهذا ضروري بالنسبة لنا لتنفيذ الخوارزمية.
أنواع الخوارزميات
- يمكن تصنيف الخوارزميات بناءً على الوظيفة التي تؤديها ، مثل خوارزميات البحث ، حيث تهدف إلى العثور على عنصر معين بين مجموعة من العناصر في البيانات.
1- خوارزميات التصنيف
2- الخوارزميات المتسلسلة
يمكن تنفيذه عندما يتم تسلسل مجموعة من التعليمات وترتيبها ، وخوارزميات متوازية ، حيث يمكن تنفيذ أكثر من جزء في نفس الوقت ، وهذا يحدث على عدة معالجات.
3- خوارزميات التراجع
يتم استخدامه لإيجاد حل من مجموعة من التجارب ، نظرًا لأن هذه التجارب تمثل فروعًا ، وعندما لا يتم العثور على حل ، نعود ونختار مسارًا آخر حتى يتم العثور على المسار الصحيح.
4- الخوارزميات العودية
من بين التعليمات المستخدمة لهذه الخوارزمية هو استدعاء الخوارزمية نفسها ، وهناك أنواع أخرى من الخوارزميات.
خصائص الخوارزمية
- الخوارزميات هي مجموعة من التعليمات والقواعد الدقيقة ، التي يفهمها الجميع ، والتي يتم تطبيقها على مجموعة من البيانات القابلة للتعديل ، حتى يتم الحصول على النتيجة.
- يجب أن يكون وقت تنفيذه قصيرًا جدًا حتى يكون فعالًا ، ويجب أن يكون مجموعة محدودة من البيانات ، وينتهي بعد عدد محدود من التعليمات ، ويجب أن يعرف مجال متغيرات الإدخال.
- يجب أن يكون الشخص قادرًا على أداء جميع العمليات في وقت محدد باستخدام القدرات اليدوية ، وليس باستخدام الكمبيوتر ، ويجب أن تكون هناك نتيجة واحدة على الأقل.
الهياكل الثلاثة للخوارزمية.
اقتصرت الخوارزمية في البداية على ثلاثة هياكل ، وفهم هذه الهياكل واستخدامها يساعد الشخص على فهم الخوارزمية بطريقة سهلة واكتشاف الأخطاء الموجودة وتغييرها ، وهي كالتالي:
1- التسلسل
يجب أن تكون الخوارزمية عبارة عن مجموعة من التعليمات والقواعد المتسلسلة ، ويجب أن تكون هذه التعليمات بسيطة أو تنتمي إلى أي من النوعين الآخرين.
2- الاختيار
- هناك مشاكل لا يمكن حلها بتسلسل بسيط من التعليمات ، لذلك يجب تغيير بعض الشروط واختبار نتيجتها ، وإذا كانت نتيجة هذا الاختبار صحيحة ، فاتبع التعليمات.
- وفي حال كانت التعليمات خاطئة ، عليك تجربة نتائج أخرى ، أو اتباع مسار تعليمات مختلف ، وتسمى هذه الطريقة اختيار أو اتخاذ قرار.
3- الهيكل الثالث هو التكرار
- هذه البنية ، الموجودة في حل بعض المشكلات حيث تعيد كتابة الخطوات المتسلسلة أكثر من مرة ، تسمى التكرار ، وليست هناك حاجة لاستخدام بنى أخرى.
الطريقة الصحيحة لتعلم الخوارزميات
- في بداية تعلم الخوارزميات ، تحتاج إلى توفير دفتر ملاحظات لتدوينه ، لأنك تحتاج إلى تحليل البرنامج على الورق أولاً ، ثم كتابته على الكمبيوتر للتأكد من صحة التحليل.
- أيضًا ، يساعدك تحليل الورقة في البداية على معرفة المزيد ، ويكتب المحترفون على الورقة قبل كتابة الكود ، لذلك يجب عليك كتابة الكود عدة مرات في البداية.
- يجب أيضًا محاولة تغيير الكود ومعالجته واختباره على الكمبيوتر ، حتى تتمكن من فهم أهمية كل سطر من التعليمات البرمجية ، وهذا يساعد على تطوير مهاراتك وتحليلك بشكل أسرع وأسرع.
- يجب فهم المشكلة وتحليلها بدقة ، ومعرفة المدخلات المراد معالجتها والمخرجات التي سيتم الحصول عليها ، ثم صياغة المعلومات بوضوح واستخدام العمليات الحسابية المناسبة.
- تحتاج إلى تصور حل شامل للمشكلة ، ثم تقسيم هذا الحل إلى وظائف أساسية ، وإعادة النظر في كل وظيفة كمشكلة جديدة يجب حلها ، وتتكون هذه المشكلة من خطوات متعددة.
- يجب الحرص دائمًا على استخدام الإرشادات الأساسية عند الضرورة ، ثم تتكرر هذه العملية حتى الوصول إلى العمليات التي يمكن التعبير عنها باستخدام طرق بسيطة.
- عندما نصل إلى المستويات الأخيرة ، تكون الخوارزمية كاملة ومكتوبة بلغة الخوارزمية ، وباستخدام هذه الخوارزمية يمكننا الترميز باللغة المناسبة مثل Java و Pascal و C ++.
التعبير عن الخوارزمية وتمثيلها.
- يمكننا التعبير عن الخوارزميات بأنواع مختلفة من التدوين ، بالإضافة إلى جداول التحكم التي يمكن معالجتها بواسطة المترجمين الفوريين والرموز الكاذبة ولغات البرمجة والمزيد.
- يتم تمثيل الخوارزمية أيضًا من خلال مخططات انسيابية ، والتي توضح خطوات حل المشكلة من البداية إلى النهاية ، وإخفاء التفاصيل ، وإعطاء صورة عامة للحل.
- يتم تصنيف المخططات الانسيابية إلى أربع فئات ، وهي مخططات انسيابية للعملية المتسلسلة ، ومخططات انسيابية للعملية المتفرعة ، ومخططات انسيابية للعملية التكرارية ، ومخططات انسيابية للعملية الانتقائية.
- يمكن أيضًا تمثيل الخوارزمية برمز وصفي ، حيث يتم وصف الخوارزمية بلغات بشرية ، على غرار لغات البرمجة ، ولا توجد قواعد محددة لاستخدام هذا النوع من التمثيل.
طريقة نصية للتعبير عن الخوارزمية.
- من أفضل الطرق للتعبير عن الخوارزمية استخدام إحدى لغات البرمجة ، حيث تتميز هذه اللغات بوجود صيغ نحوية ، مما يتجنب أي ارتباك عند التعبير بلغات مشتركة.
- إن استخدام النماذج المهيكلة للتعبير عن الخوارزمية يوفر للمستخدم حرية التعبير والاحتفاظ بنقل الحل إلى لغة برمجة يمكن للكمبيوتر فهمها بسهولة ، ويسمى هذا التعبير لغة الخوارزمية.
- هناك عدة عناصر في اللغة الخوارزمية ، من بينها المتغير وهو العنصر الذي تتم معالجته والذي يتم تحويل قيمته ، والثابت وهو العنصر الذي لا تتغير قيمته ، والصيغة وهي المتغيرات والثوابت والعمليات الحسابية.
- يمكن أيضًا التعبير عن مسار الحل من خلال عبارة القراءة ، حيث تتم قراءة قيمة الإدخال في الذاكرة ، وبيان الكتابة ، حيث تتم كتابة القيم إلى وحدات الإخراج أو على الشاشة.
- واستخدام التعليمات المرجعية ، وهي تخصيص القيم أو النتائج للذاكرة ، والتعليمات المتكررة ، والتي تستخدم لتكرار التعليمات التي يتم فيها استيفاء شرط معين أو يكون الشكل المنطقي للشرط صحيحًا.
- تحتوي التعليمات الشرطية على شكلين ، إما التنفيذ بشرط ، أو التدرج الشرطي الاختياري ، والذي يسمح لك باختيار إحدى طريقتين للتنفيذ ، ويكون هذا الاختيار وفقًا لشرط معين.
الطريقة الرسومية للتعبير عن الخوارزمية.
- تعتمد هذه الطريقة على شرح الخطوات اللازمة لتنفيذ الخوارزمية باستخدام الأشكال الهندسية ، أيا كان ما تصل إليه ، وكذلك التعبيرات الرياضية وتعبيرات اللغة الطبيعية.
- بعد ذلك ، بناءً على هذه الخطوات ، يتم إنتاج ما يسمى بالمخطط الانسيابي ، ونلاحظ أيضًا أن الأسهم تفصل العمليات المطلوبة لإكمال المهمة وتوضيح تسلسلها.
- يستخدم مخطط التسلسل أشكالًا هندسية متفق عليها ، ويتم تعيين كل شكل لعملية محددة ، حيث يتم استخدام القطع الناقص لتحديد بداية الخوارزمية ونهايتها.
- بينما يتم استخدام المستطيل لأداء العمليات التشغيلية العادية ، يتم استخدام الشكل الماسي للعمليات التي تتطلب قرارات منطقية ، بالإضافة إلى اختيار تلبية شرط معين.