• (n* log( n )). 6.6. Quiksort – tez saralash algoritmi
  • “Dasturiy injiniring” fakulteti “MA‟lumotlar tuzilmasi va algoritmlar”




    Download 1,33 Mb.
    Pdf ko'rish
    bet51/56
    Sana18.05.2024
    Hajmi1,33 Mb.
    #242340
    1   ...   48   49   50   51   52   53   54   55   56
    Bog'liq
    b2d1fe5c-9484-4aea-a5e7-95281604b19a

    6.5.
     
    “Pufaksimon” usulni yaxshilash 
    1)
    Agar massivda o„tishlar nafaqat yuqoridan pastga, balki bir vaqtning


    116 
    o„zida pastdan yuqoriga ham bo„lsa, u holda “yengil” elementlar “yuqoriga 
    suzib” chiqadi va “og„ir” elementlar esa “cho„kadi”. 
    2)
    Massivda “bekor” o„tishni yo„q qilish uchun, tashqi siklda massiv 
    saralanganligini tekshiruvchi belgi qo„yish lozim. 
    for (int i=0;i
    for (int j=n-1;j>i;j--) 
    if (a[j] < a[j - 1]){ 
    int x= a[j - 1]; 
    a[j - 1] = a[j]; 
    a[j] = x; 

    O„rinlashtirish va taqqoslashlar soni: 
    (n* log( n )). 
     
    6.6.
     
    Quiksort – tez saralash algoritmi 
     
    Bu algoritm “bo„lib ol va egalik qil” tamoyilining yaqqol misolidir. Bu 
    algotirm rekursiv bo„lib, o„rtacha 
    N*log
    2
    N
    ta solishtirish natijasida saralaydi. 
    Algoritm berilgan massivni saralash uchun uni 2 taga bo„lib oladi. Bo„lib olish 
    uchun ixtiyoriy elementni tanlab undan 2 ta qismga ajratiladi. Lekin o„rtadagi 
    elementni tanlab, massivning teng yarmidan 2 ga ajratgan ma‟qul. Tanlangan kalit 
    elementga nisbatan chapdagi va o„ngdagi har bir element solishtiriladi. Kalit 
    elementdan kichiklar chapga, kattalar o„ng tomonga o„tkaziladi (6.3-rasm). Endi 
    massivning har ikkala tomonida xuddi yuqoridagi amallar takrorlanadi. Ya‟ni bu 
    oraliqlarning o„rtasidagi elementlar kalit sifatida olinadi va h.k. 
    Misol uchun rasmdagi massivni saralash algoritmini ko„rib chiqamiz. 
    1.
    Oraliq sifatida 
    0
    dan 
    n-1
    gacha bo„lgan massivning barcha elementlarini 
    olamiz. 
    2.
    Oraliq o„rtasidagi kalit elementni tanlaymiz, ya‟ni 

    Download 1,33 Mb.
    1   ...   48   49   50   51   52   53   54   55   56




    Download 1,33 Mb.
    Pdf ko'rish

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    “Dasturiy injiniring” fakulteti “MA‟lumotlar tuzilmasi va algoritmlar”

    Download 1,33 Mb.
    Pdf ko'rish