• Foydalanilgan adabiyotlar
  • Algoritmlarni layihalash




    Download 247,14 Kb.
    Pdf ko'rish
    bet4/4
    Sana24.05.2024
    Hajmi247,14 Kb.
    #252361
    1   2   3   4
    Bog'liq
    5-mustaqil ishi

    Psevdokod 
    [ tahrirlash ] 
    Quyidagi kod ajratilgan ma'lumotlar tuzilmasi bilan amalga oshiriladi. U 
    F o'rmonini yo'naltirilmagan qirralarning to'plami sifatida ifodalaydi va ikkita cho'qqi 
    bir daraxtning bir qismi ekanligini samarali aniqlash uchun ajratilgan ma'lumotlar 
    strukturasidan foydalanadi. 
    Kruskal ( G ) algoritmi 
    F:= 

    GVdagi har bir v uchun do 
    SOZLASH(v) 
    GEdagi har bir {u, v} uchun og‘irlik ({u, v}) bo‘yicha tartiblangan, agar 
    FIND-SET(u) ≠ FIND-SET(v) bo‘lsa , ortib boradi 
    F := F 

    { {u, v} } 
    UNION(FIND-SET(u), FIND-SET(v)) 
    qaytish F 
    Murakkablik
    [ tahrirlash ] 
    E qirralari va V cho'qqilari bo'lgan grafik uchun Kruskal algoritmini oddiy 
    ma'lumotlar tuzilmalari bilan O ( E log E ) vaqtida ishlashini ko'rsatish mumkin . Bu 
    yerda O vaqtni katta O belgisida ifodalaydi va log har qanday asosga logarifmdir 
    (chunki O-notatsiya ichidagi barcha asoslarning logarifmlari ekvivalentdir, chunki 
    ular doimiy omilgacha bir xil). Bu vaqt chegarasi ko'pincha uning o'rniga 
    O ( E log V ) ko'rinishida yoziladi , bu hech qanday ajratilgan uchlari bo'lmagan 
    grafiklar uchun ekvivalentdir, chunki bu grafiklar uchun 
    / 2

    V
    E
    V
     
    va
    V
    va 
    E
    logarifmlari yana doimiy omil doirasidadir.
    Bu chegaraga erishish uchun avval 
    (
    )
    O E logE
    vaqtida taqqoslashdan foydala-nib, 
    qirralarni og'irlik bo'yicha tartiblang . Saralangandan so'ng, har bir chekkada
    doimiy 



    vaqt ichida tartiblangan tartibda chekkalarni aylanib o'tish mumkin. Keyin, har bir 
    komponent 
    uchun 
    cho'qqilar 
    to'plami 
    bilan ajratilgan 
    ma'lumotlar 
    tuzilmasidan foydalaning, qaysi cho'qqilar qaysi komponentlarda ekanligini kuzatib 
    boring. Har bir cho'qqi uchun alohida to'plam bilan ushbu tuzilmani yaratish 
    V
    operatsiyalari va 
    ( )
    O V
    vaqtini oladi. Barcha qirralarning yakuniy iteratsiyasi ikkita 
    topish amalini va, ehtimol, har bir chekkada birlashma amalini bajaradi. Ushbu 
    operatsiyalar har bir operatsiya uchun amortizatsiya qilingan vaqt O ( a ( V )) vaqtni 
    oladi va bu tsikl uchun eng yomon umumiy vaqt O ( E a ( V )) ni beradi , bu 
    erda a juda sekin o'sib boruvchi teskari Akkerman funktsiyasidir . Cheklangan 
    vaqtning bu qismi saralash bosqichi uchun vaqtdan ancha kichik, shuning uchun 
    algoritm uchun umumiy vaqtni saralash bosqichiga qadar soddalashtirish mumkin. 
    Qirralar allaqachon tartiblangan bo'lsa yoki butun sonlarni saralash 
    algoritmlariga, masalan, chiziqli vaqt ichida saralash imkonini beradigan darajada 
    kichik butun son og'irligiga ega bo'lsa , ajratilgan to'plam operatsiyalari algoritm-
    ning eng sekin qolgan qismidir va umumiy vaqt O ( E a( V )) ga teng . 


    Foydalanilgan adabiyotlar: 
    1.
    Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд 
    Штайн. Алгоритмы: построение и анализ. Москва-Санкт-Петербург-Киев. 
    Изд. дом «Вильямс», 2003. 1293 стр. 
    2.
    Levetan Anany. Introduction to the design & analisis of algorithms. 3rd 
    ed. Villanova university. New Jersey. 2012. 693 page. 
    3.
    Род Стивенс. Готовые алгоритмы. М.: ДМК Пресс. Питер 2004. 384 
    стр. 
    4.
    Стивен Скиены. Алгоритмы. Руководство по разработке. Питер 
    2011. 715 стр. 

    Download 247,14 Kb.
    1   2   3   4




    Download 247,14 Kb.
    Pdf ko'rish