• 4-savol: Sheyker (to’lqinsimon) saralash usuli algoritmini yozing va misollar yordamida tushuntirib bering. Javob
  • Texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent




    Download 1,34 Mb.
    Pdf ko'rish
    bet3/15
    Sana20.11.2023
    Hajmi1,34 Mb.
    #101891
    1   2   3   4   5   6   7   8   9   ...   15
    Bog'liq
    Ma\'lumotlar tuzilmasi Maruza Mustaqil ishAAA

     
    Ishlash tartibi: 
     
    1. togridan_togri_almashtirish funksiyasi ro'yxatni o'z ichiga qabul qilib 
    oladi. 
    2. Ikki to'g'ridan-to'g'ri for tsikli orqali o'zgaruvchilarni solishtirib ketadi. 
    3. Har bir takrorlashda, yuqori qiymatni pastgi qiymat bilan solishtiradi. 
    4. Bu jarayon ro'yxat to'la tartiblangan bo'lguncha davom etadi. 
    4-savol: 
    Sheyker (to’lqinsimon) saralash usuli algoritmini yozing va misollar 
    yordamida tushuntirib bering. 
     
    Javob: 
    Sheyker (to'lqinsimon) saralash usuli, to'g'ridan-to'g'ri almashtirish usuli 
    (Bubble Sort) kabi o'zgaruvchilarni bir-biriga solishtirish asosida saralash algoritmi. 
    Sheyker saralash esa shu algoritmni boshqa bir usulida amalga oshiradi va takrorlash 
    jarayonini o'z ichiga olgan, ammo har bir takrorlashda ikki tomonlama solishtirish 
    usuli bilan saralashni amalga oshiradi. 



    Quyidagi Python kodi Sheyker (to'lqinsimon) saralash usulini tushuntiradi: 
     
    def sheyker_saralash(arr): 
    n = len(arr) 
    deyishdi = True 
    bosh = 0 
    oxir = n - 1 
     
    while (deyishdi == True): 
    # Oldingi takrorlash jarayonida 
    deyishdi = False 
     
    # Ortga yo'nalgan solishtirish 
    for i in range(bosh, oxir): 
    if (arr[i] > arr[i + 1]): 
    arr[i], arr[i + 1] = arr[i + 1], arr[i] 
    deyishdi = True 
     
    # Oxirgi takrorlash jarayonida 
    if (deyishdi == False): 
    break 
     
    deyishdi = False 
     
    # Ortga qaytarilgan solishtirish 
    oxir -= 1 
     
    for i in range(oxir - 1, bosh - 1, -1): 
    if (arr[i] > arr[i + 1]): 
    arr[i], arr[i + 1] = arr[i + 1], arr[i] 
    deyishdi = True 
     
    # Avvalgi takrorlash jarayonida 
    bosh += 1 
     
    # Misol 
    raqamlar = [64, 34, 25, 12, 22, 11, 90] 
    print("Boshlang'ich ro'yxat:", raqamlar) 



     
    sheyker_saralash(raqamlar) 
     
    print("Sheyker (to'lqinsimon) saralangan ro'yxat:", raqamlar) 
     

    Download 1,34 Mb.
    1   2   3   4   5   6   7   8   9   ...   15




    Download 1,34 Mb.
    Pdf ko'rish

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent

    Download 1,34 Mb.
    Pdf ko'rish