Yığın çeşidləmə alqoritminin mürəkkəbliyi nədir?
Yığın çeşidləmə alqoritminin mürəkkəbliyi nədir?

Video: Yığın çeşidləmə alqoritminin mürəkkəbliyi nədir?

Video: Yığın çeşidləmə alqoritminin mürəkkəbliyi nədir?
Video: Verilənlər Bazası. Access 2010 - Dərs 1 2024, Bilər
Anonim

Yığın çeşidləmə yerində alqoritmdir. Zamanın mürəkkəbliyi : Zamanın mürəkkəbliyi heapify O(Logn)-dir. Zamanın mürəkkəbliyi createAndBuildHeap() funksiyası O(n) və ümumilikdə zaman mürəkkəbliyi Yığın Sıralaması O(nLogn)-dir.

Bununla əlaqədar olaraq, yığın çeşidləmə alqoritmi nədir?

Yığın çeşidləmə alqoritmi iki əsas hissəyə bölünür: Yaradılması a Yığın çeşidlənməmiş siyahı/massiv. Sonra a sıralanır massiv ən böyük/kiçik elementi təkrar-təkrar silməklə yaradılır yığın , və onu seriala daxil edin. The yığın hər çıxarıldıqdan sonra yenidən qurulur.

Eynilə, yığın çeşidləmə alqoritminin tipik işləmə müddəti nədir? Bununla belə, Quicksort ən pis vəziyyətə malikdir işləmə vaxtı O (n 2) O(n^2) O(n2) və ən pis fəza mürəkkəbliyi O (log ? n O(log n O(logn), belə ki, əgər ən sürətli vəziyyətin olması çox vacibdirsə) işləmə vaxtı və yerdən səmərəli istifadə, yığın sırası ən yaxşı variantdır.

Eynilə, soruşulur ki, Heapify funksiyasının mürəkkəbliyi nədir?

Əsas fikir build_heap-də olmasıdır alqoritm faktiki yığmaq xərc bütün elementlər üçün O(log n) deyil. When yığmaq adlanırsa, işləmə müddəti proses bitməzdən əvvəl faran elementinin ağacda necə aşağı hərəkət edə biləcəyindən asılıdır. Başqa sözlə, yığındakı elementin hündürlüyündən asılıdır.

Hansı çeşidləmə alqoritmi ən yaxşı asimptotik mürəkkəbliyə malikdir?

üçün Ən yaxşısı halda daxil Cür və Heap Sıralama Ən Yaxşısıdır biri onların kimi ən yaxşı işin icra müddəti mürəkkəblik O(n)-dir. Orta hal üçün ən yaxşı asimptotik icra vaxtı mürəkkəblik Merge tərəfindən verilən O(nlogn)-dir Cür , Yığın Cür , Tez Cür . Ən pis vəziyyət üçün ən yaxşı icra vaxtı mürəkkəblik Merge tərəfindən verilən O(nlogn)-dir Cür , Yığın Cür.

Tövsiyə: