تقاسم يرعى!

الوجبات السريعة الرئيسية

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

ما هو البحث الخطي؟

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

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

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

ما هو البحث الثنائي؟

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

اقرأ أيضا:  Duolingo vs Duolingo Plus: الفرق والمقارنة

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

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

الفرق بين البحث الخطي والثنائي

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

مقارنة بين البحث الخطي والثنائي

المعلماتالبحث الخطيبحث ثنائي
طريقة البحثالتحقق من كل عنصر من البداية إلى النهايةيتطلب قائمة مرتبة
القابلية للتطبيقتستخدم في كل من القوائم المصنفة وغير المصنفةمصممة بشكل صريح للقوائم المصنفة
تعقيد الفضاءالحد الأدنى من المساحة الإضافيةمساحة أكبر للخلايا الوظيفية العودية أو المتغيرات التكرارية
نوع الخوارزميةخوارزمية البحث التسلسليخوارزمية فرق تسد
سهولة التنفيذسهل التنفيذ ومناسب للقوائم الصغيرةأكثر تعقيدًا في التنفيذ، خاصة للمبتدئين
مراجع حسابات
  1. https://search.informit.org/doi/abs/10.3316/INFORMIT.573360863402659
اقرأ أيضا:  [محدث] وكيل ExtraTorrent | قم بإلغاء حظر جميع مواقع Extratorrents بنسبة 100%
النقطة 1
طلب واحد؟

لقد بذلت الكثير من الجهد في كتابة منشور المدونة هذا لتقديم قيمة لك. سيكون مفيدًا جدًا بالنسبة لي ، إذا كنت تفكر في مشاركته على وسائل التواصل الاجتماعي أو مع أصدقائك / عائلتك. المشاركة هي ♥ ️

هل تريد حفظ هذه المقالة لوقت لاحق؟ انقر فوق القلب الموجود في الزاوية اليمنى السفلية للحفظ في مربع المقالات الخاصة بك!

By سانديب بهانداري

سانديب بهانداري حاصل على بكالوريوس هندسة في الحاسبات من جامعة ثابار (2006). لديه 20 عامًا من الخبرة في مجال التكنولوجيا. لديه اهتمام كبير في المجالات التقنية المختلفة ، بما في ذلك أنظمة قواعد البيانات وشبكات الكمبيوتر والبرمجة. يمكنك قراءة المزيد عنه على موقعه صفحة بيو.