Ո՞րն է կույտային տեսակավորման ալգորիթմի բարդությունը:
Ո՞րն է կույտային տեսակավորման ալգորիթմի բարդությունը:

Video: Ո՞րն է կույտային տեսակավորման ալգորիթմի բարդությունը:

Video: Ո՞րն է կույտային տեսակավորման ալգորիթմի բարդությունը:
Video: Архитектура ЭВМ | Основы Операционных Систем | 05 2024, Ապրիլ
Anonim

Կույտային տեսակավորումը տեղում ալգորիթմ է: Ժամանակի բարդություն : Ժամանակի բարդություն heapify-ը O (Logn) է: Ժամանակի բարդություն createAndBuildHeap()-ի O(n) և ընդհանուր առմամբ ժամանակի բարդություն Կույտային տեսակավորումը O(nLogn) է:

Ինչ վերաբերում է դրան, ո՞րն է կույտային տեսակավորման ալգորիթմը:

Կույտային տեսակավորման ալգորիթմ բաժանված է երկու հիմնական մասի՝ ստեղծելով ա Կույտ չտեսակավորված ցուցակի/զանգվածի: Հետո ա տեսակավորված զանգվածը ստեղծվում է ամենախոշոր/ամենափոքր տարրը բազմիցս հեռացնելով կույտ , և զետեղելով այն զանգվածի մեջ: Այն կույտ վերակառուցվում է յուրաքանչյուր հեռացումից հետո:

Նմանապես, ո՞րն է կույտային տեսակավորման ալգորիթմի տիպիկ գործարկման ժամանակը: Այնուամենայնիվ, Quicksort-ն ունի ամենավատ դեպքը վազքի ժամանակը O (n 2) O(n^2) O(n2) և O (log ? n O(log n O(logn) ամենավատ դեպքի տարածության բարդությունը, այնպես որ, եթե շատ կարևոր է ունենալ ամենաարագ վատագույն դեպքը վազքի ժամանակը և տարածքի արդյունավետ օգտագործում, heapsort լավագույն տարբերակն է։

Նմանապես, հարցնում են, թե որն է Heapify ֆունկցիայի բարդությունը:

Հիմնական գաղափարն այն է, որ build_heap-ում ալգորիթմ փաստացի հալեցնել արժեքը O(log n) չէ բոլոր տարրերի համար: Երբ հալեցնել կոչվում է, գործարկման ժամանակը կախված է նրանից, թե որքան ֆարանի տարրը կարող է իջնել ծառի վրա մինչև գործընթացի ավարտը: Այլ կերպ ասած, դա կախված է կույտում տարրի բարձրությունից:

Տեսակավորման ո՞ր ալգորիթմն ունի լավագույն ասիմպտոտիկ բարդությունը:

Համար Լավագույնը պատյանների տեղադրում Տեսակավորել եւ կույտ Տեսակավորումը լավագույնն է մեկը որպես իրենց լավագույնը գործի գործարկման ժամանակը բարդություն O(n) է: Միջին դեպքի համար լավագույն ասիմպտոտիկ գործարկման ժամանակը բարդություն O(nlogn) է, որը տրված է Merge-ով Տեսակավորել , Կույտ Տեսակավորել , Արագ Տեսակավորել . Վատագույն դեպքի համար լավագույնը գործարկման ժամանակը բարդություն O(nlogn) է, որը տրված է Merge-ով Տեսակավորել , Կույտ Տեսակավորել.

Խորհուրդ ենք տալիս: