1. فرز الفقاعة
فكرة الخوارزمية: اجتياز الصفيف المراد فرزه ، وقارن عنصرين متجاورتين في كل مرة. إذا كان أمر الترتيب الخاص بهم خاطئًا ، فقم بتبادل مواقفهم. بعد رحلة للفرز ، سوف يطفو العنصر الأكبر حتى نهاية الصفيف. كرر حتى يكتمل الفرز.
عينة مظاهرة:
تنفيذ الخوارزمية:
لـ (int i = 0 ؛ i <array.length-1 ؛ i ++) {// sort n-1 مرات على الأكثر (int j = 0 ؛ j <array.length-i-1 ؛ j ++) {// عدد المرات التي يجب تبادلها إذا (array [j]> array [j+1]) صفيف [j] = صفيف [j+1] ؛ صفيف [j+1] = temp ؛ }}}تعقيد وقت الخوارزمية: O (N2) يجب مقارنة الحلقة الخارجية N-1 مرات ، ويجب مقارنة الحلقة الداخلية في الأوقات.
2. حدد الفرز
فكرة الخوارزمية: إعادة تحديد أصغر عنصر في الصفيف ليتم فرزه وتبادله بالعنصر في الموضع الأول من المصفوفة. ثم حدد عنصرًا أصغر من العناصر المتبقية وتبادله بالعنصر في الموضع الثاني. إذا كان العنصر الأصغر هو العنصر في هذا الموضع ، فتبادله بنفسه ، وما إلى ذلك حتى يكتمل الفرز.
عينة مظاهرة:
تنفيذ الخوارزمية:
لـ (int i = 0 ؛ i <array.length ؛ i ++) {int min = i ؛ لـ (int j = i+1 ؛ j <array.length ؛ j ++) {if (array [j] <array [min]) {min = j ؛ }} int temp = array [min] ؛ صفيف [دقيقة] = صفيف [i] ؛ صفيف [i] = temp ؛ } تعقيد الوقت: O (N2) يتطلب مقارنات N2/2 وتبادل N
3. أدخل الفرز
فكرة الخوارزمية: ابدأ في اجتياز العنصر الثاني من الصفيف ، وقارن العنصر بالعنصر السابق ، إذا كان العنصر أصغر من العنصر السابق ، وحفظ العنصر في متغير مؤقت ، وحرك العنصر السابق للخلف بدوره ، ثم أدخل العنصر في موضع مناسب. بعد اكتمال كل فرز ، يجب طلب العناصر الموجودة على الجانب الأيسر من الفهرس ، ولكن لا يزال من الممكن نقلها. بالنسبة للصفائف مع انقلابات أقل ، كلما زادت كفاءة الخوارزمية.
ملاحظة: مقلوب: 5 3 6 2 المصطلح المقلوب هو 5-3 5-2 3-2 6-2
عينة مظاهرة:
تنفيذ الخوارزمية:
لـ (int i = 1 ؛ i <array.length ؛ i ++) {for (int j = i ؛ j> 0 && array [j] <array [j-1] ؛ j-) {int temp = array [j] ؛ صفيف [j] = صفيف [J-1] ؛ صفيف [J-1] = درجة الحرارة ؛ }}تعقيد الوقت: O (N2) أسوأ حالة N2/2 مقارنة ، N2/2 Exchange أفضل المقارنة N-1 ، 0 التبادلات
خوارزميات الفرز الثلاثة أعلاه (التي تم تنفيذها باستخدام JAVA) هي المحتوى الذي أشاركه معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.