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

 

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

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

في هذا البرنامج التعليمي ، سوف نتعلم ماهية الخوارزميات بمساعدة الأمثلة.

في مصطلحات برمجة الكمبيوتر ، الخوارزمية هي مجموعة من التعليمات المحددة جيدًا لحل مشكلة معينة. يأخذ مجموعة من المدخلات وينتج المخرجات المطلوبة. فمثلا

  1. خوارزمية لإضافة رقمين:     
    الخوارزميات
  2. خذ اثنين من المدخلات
  3. أضف الأرقام باستخدام عامل التشغيل +
  4. اعرض النتيجة

تستخدم الخوارزميات على نطاق واسع في جميع مجالات تكنولوجيا المعلومات. في الرياضيات وعلوم الكمبيوتر ، تشير الخوارزمية عادةً إلى إجراء صغير يحل مشكلة متكررة. تُستخدم الخوارزميات أيضًا كمواصفات لأداء معالجة البيانات وتلعب دورًا رئيسيًا في الأنظمة الآلية.

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

كيف تعمل الخوارزميات؟

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

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


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

ما هي أنواع الخوارزميات المختلفة؟

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

  1. خوارزمية محرك البحث. تأخذ هذه الخوارزمية سلاسل البحث من الكلمات الرئيسية وعوامل التشغيل كمدخلات ، وتبحث في قاعدة البيانات المرتبطة بها عن صفحات الويب ذات الصلة وتعيد النتائج.
  2. خوارزمية التشفير. تقوم خوارزمية الحوسبة هذه بتحويل البيانات وفقًا لإجراءات محددة لحمايتها. تستخدم خوارزمية المفتاح المتماثل ، مثل معيار تشفير البيانات ، على سبيل المثال ، نفس المفتاح لتشفير البيانات وفك تشفيرها. طالما أن الخوارزمية معقدة بما فيه الكفاية ، فلا يمكن لأي شخص يفتقر إلى المفتاح فك تشفير البيانات.
  3. خوارزمية الجشع. تحل هذه الخوارزمية مشاكل التحسين من خلال إيجاد الحل الأمثل محليًا ، على أمل أن يكون الحل الأمثل على المستوى العالمي. ومع ذلك ، فإنه لا يضمن الحل الأمثل.
  4. الخوارزمية العودية. تستدعي هذه الخوارزمية نفسها بشكل متكرر حتى تحل مشكلة. تستدعي الخوارزميات العودية نفسها بقيمة أصغر في كل مرة يتم فيها استدعاء دالة تكرارية.
  5. خوارزمية التراجع. تجد هذه الخوارزمية حلاً لمشكلة معينة في مناهج تدريجية وتحلها قطعة واحدة في كل مرة.
  6. خوارزمية فرق تسد. تنقسم هذه الخوارزمية الشائعة إلى جزأين. جزء واحد يقسم المشكلة إلى مشاكل فرعية أصغر. الجزء الثاني يحل هذه المشاكل ثم يجمعها معًا للتوصل إلى حل.
  7. خوارزمية البرمجة الديناميكية. تعمل هذه الخوارزمية على حل المشكلات عن طريق تقسيمها إلى مشكلات فرعية. ثم يتم تخزين النتائج ليتم تطبيقها على المشاكل المقابلة في المستقبل.
  8. خوارزمية القوة الغاشمة. تكرر هذه الخوارزمية جميع الحلول الممكنة لمشكلة ما بشكل أعمى ، وتبحث عن حل واحد أو أكثر لوظيفة ما.
  9. خوارزمية الفرز. تُستخدم خوارزميات الفرز لإعادة ترتيب بنية البيانات بناءً على عامل المقارنة ، والذي يستخدم لتحديد ترتيب جديد للبيانات.
  10. خوارزمية التجزئة. تأخذ هذه الخوارزمية البيانات وتحولها إلى رسالة موحدة مع التجزئة
  11. خوارزمية عشوائية. تقلل هذه الخوارزمية من أوقات التشغيل والتعقيدات المستندة إلى الوقت. يستخدم عناصر عشوائية كجزء من منطقه.

ما هي أمثلة الخوارزميات؟

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

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



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

أمثلة الخوارزمية
    الخوارزميات
  • خوارزمية لجمع رقمين
  • خوارزمية للعثور على الأكبر بين ثلاثة أرقام
  • خوارزمية لإيجاد جميع جذور المعادلة التربيعية
  • خوارزمية سلسلة فيبوناتشي

الخوارزمية 1: أضف رقمين أدخلهما المستخدم

الخطوة 1: ابدأ
الخطوة 2: قم بتعريف المتغيرات num1 و num2 و sum.
الخطوة 3: قراءة القيمتين num1 و num2.
الخطوة 4: أضف num1 و num2 وقم بتعيين النتيجة لمجموع.       مجموع ← عدد 1 + عدد 2
الخطوة 5: عرض المبلغ
الخطوة 6: توقف

الخوارزمية 2: ابحث عن أكبر رقم بين ثلاثة أرقام

الخطوة 1: ابدأ
الخطوة 2: قم بتعريف المتغيرات a و b و c.
الخطوة 3: اقرأ المتغيرات a و b و c.
الخطوة 4: إذا أ> ب        إذا أ> ج
               عرض أ هو أكبر رقم.
            آخر
               العرض c هو أكبر رقم.
         آخر
            إذا ب> ج
               العرض ب هو أكبر رقم.
            آخر
               العرض c هو أكبر عدد.
الخطوة 5: توقف

الخوارزمية 3: أوجد جذور المعادلة التربيعية ax2 + bx + c = 0

الخطوة 1: ابدأ
الخطوة 2: قم بتعريف المتغيرات a و b و c و D و x1 و x2 و rp و ip ؛
الخطوة 3: حساب المميز
          د ← b2-4ac
الخطوة 4: إذا كانت D ≥ 0
               r1 ← (-b + √D) / 2 أ
               r2 ← (-b-√D) / 2 أ
               عرض r1 و r2 كجذور.
         آخر
               احسب الجزء الحقيقي والجزء التخيلي
               rp ← -b / 2a
               ip ← √ (-D) / 2a
               اعرض rp + j (ip) و rp-j (ip) كجذور
الخطوة 5: توقف

الخوارزمية 4: أوجد سلسلة فيبوناتشي حتى الحد الأدنى من 1000

الخطوة 1: ابدأ
الخطوة 2: قم بتعريف المتغيرات first_term و second_term و temp.
الخطوة 3: تهيئة المتغيرات first_term ← 0 second_term ← 1
الخطوة 4: عرض المصطلحين الأول والثاني
الخطوة 5: كرر الخطوات حتى الثانية_المصطلح 1000
      5.1: درجة الحرارة ← الثانية_المصطلح
      5.2: المصطلح_الثاني ← المصطلح_الثاني + المصطلح الأول
      5.3: المصطلح الأول ← درجة الحرارة
      5.4: عرض المصطلح الثاني
الخطوة 6: توقف


الخوارزميات


 Eng :Rabea SH EL-Zayat


تعليقات