يتضمن الاختيار حالات خاصة مثل العثور على الحد الأدنى والمتوسط والقيمة القصوى. تتمتع خوارزميات الاختيار الشائعة مثل الاختيار السريع ووسيط المتوسطات بتعقيد زمني يبلغ O(n) عند تطبيقها على مجموعة من n قيمة.
في التطبيقات العملية، يمكن وصف مشكلة خوارزمية الاختيار على النحو التالي: إذا أعطيت مجموعة من القيم وعدد k، فقم بإخراج أصغر قيمة k أو أصغر مجموعة قيم k في هذه المجموعة. يعتمد هذا على القدرة على فرز هذه القيم، والتي عادةً ما تكون أعدادًا صحيحة، أو أرقامًا ذات فاصلة عائمة، أو كائنات أخرى بمفاتيح رقمية. نظرًا لأن القيم غير مرتبة، يجب على أي خوارزمية اختيار إجراء المقارنات ضمن القيود المحددة.
كخوارزمية أساسية، يمكن اختيار القيمة الأصغر k من خلال الخطوتين التاليتين:
<أول>يعتمد استهلاك الوقت لهذه الطريقة بشكل أساسي على خطوة الفرز، والتي تستغرق عادةً O(n log n) من الوقت. ومع ذلك، عندما نتعامل مع مدخلات ذات حجم متواضع، قد يكون الفرز أسرع من خوارزميات الاختيار غير العشوائية لأن العوامل الثابتة في وقت التشغيل تكون أصغر.
بعد تطبيق تحسين فرز الكومة، يمكن لخوارزمية اختيار الكومة تحديد أصغر قيمة k في زمن O(n + k log n). يعمل هذا بشكل جيد بالنسبة للقيم الصغيرة لـ k بالنسبة إلى n، ولكنه يتدهور إلى O(n log n) للقيم الأكبر لـ k.
تعتمد العديد من طرق الاختيار على تحديد عنصر "محوري" معين من الإدخال الذي تتم مقارنة القيم المتبقية به لتقسيمه إلى مجموعتين فرعيتين. إذا كانت القيمة الأصغر k موجودة في مجموعة أصغر من المحور، فيمكننا تحديدها بشكل متكرر. إذا كان k يساوي بالضبط عدد القيم الأقل من المحور زائد واحد، فإن المحور نفسه هو القيمة التي نبحث عنها.
يمكن استخدام طريقة اختيار المحور لاختيار المحاور بشكل عشوائي مع تعقيد زمني متوقع يبلغ O(n)، ولكن إذا لم يكن الاختيار مناسبًا، فقد يصل وقت التشغيل إلى O(n²).
على سبيل المثال، تقوم طريقة التحديد السريع بإجراء تحديد عشوائي عند البحث عن محور وتصفية القيم استنادًا إلى المحور. وهذا يجعلها فعالة للغاية في معظم الحالات، بينما تعمل خوارزمية فلويد-ريفست على تحسين الكفاءة من خلال اختيار المحاور بشكل أسهل من خلال عينات عشوائية.
هذه الخوارزمية هي أول خوارزمية اختيار حتمية خطية معروفة، ومع ذلك، في الممارسة العملية، غالبًا ما تكون أقل كفاءة من الاختيار السريع بسبب عاملها الثابت العالي.
تُظهِر الأبحاث أن الخوارزميات المتوازية تم إجراؤها منذ عام 1975، ويثبت النموذج الخوارزمي أنه حتى في حالة الاختيار الأدنى أو الأقصى، يتطلب الاختيار عددًا خطيًا من المقارنات، خطوات Ω(log log n). في نموذج الحوسبة RAM المتوازية الأكثر واقعية، يمكن إظهار أن التعقيد الزمني هو O(log n)، وأن هذه العملية أكثر كفاءة بكثير.
باختصار، تلعب خوارزميات الاختيار دورًا رئيسيًا في تكنولوجيا المعلومات، حيث تساعدنا في العثور على القيم المطلوبة بكفاءة من خلال استراتيجيات وأساليب مختلفة. من الفرز البسيط إلى خوارزميات اختيار المحور المتقدمة، أدى تطور هذه التقنيات إلى جعلنا أكثر مرونة وكفاءة في معالجة البيانات. في المستقبل، هل ستفكر في استخدام هذه الخوارزميات لاستعلامات البيانات الأكثر تعقيدًا؟