Video: Ikkilik qidiruv daraxtining eng yomon holatlari va o'rtacha murakkabligi qanday?
2024 Muallif: Lynn Donovan | [email protected]. Oxirgi o'zgartirilgan: 2023-12-15 23:54
Ikkilik qidiruv daraxti
Algoritm | O'rtacha | Eng yomon holat |
---|---|---|
Kosmos | O(n) | O(n) |
Qidirmoq | O(log n) | O(n) |
Kiritmoq | O(log n) | O(n) |
Oʻchirish | O(log n) | O(n) |
Bundan tashqari, ikkilik qidiruv daraxtining katta O eng yomon vaqt murakkabligi nima?
a ning rekursiv tuzilishi BST rekursiv algoritmni beradi. Qidirilmoqda a ichida BST ega O (h) eng yomoni - hol ish vaqti murakkablik , bu yerda h - balandligi daraxt . s beri ikkilik qidiruv daraxti bilan n tugunlari minimal ega O (log n) darajalari, kamida talab qiladi O (log n) muayyan tugunni topish uchun taqqoslash.
Ikkinchidan, iteratsiya bilan ikkilik qidiruvning vaqt murakkabligi qanday? ning ijrosi Ikkilik qidiruv algoritmi : Shuning uchun, ikkilik qidiruv algoritmining vaqt murakkabligi O (log2n) bu juda samarali. U tomonidan ishlatiladigan yordamchi fazo O(1) uchun iterativ amalga oshirish va O(log2n) qo'ng'iroqlar to'plami tufayli rekursiv amalga oshirish uchun.
Bundan tashqari, savol tug'iladi, ikkilik qidiruv daraxtida elementni qidirishning eng yomon vaqt murakkabligi qanday bo'lishi mumkin?
Vaqtning murakkabligi : The eng yomon vaqt murakkabligi ning qidirmoq va qo'shish amallari O(h) bo'ladi, bu erda h - balandligi Ikkilik qidiruv daraxti . In eng yomon holat , biz mumkin bor uchun ildizdan sayohat uchun eng chuqur barg tugunlari. Egri chiziqning balandligi daraxt mumkin n va ga aylanadi vaqt murakkabligi ning qidirmoq va kiritish operatsiyasi mumkin O(n) ga aylanadi.
Big O eng yomon holatmi?
Shunday qilib, ikkilik qidiruvda eng yaxshisi hol hisoblanadi O (1), o'rtacha va eng yomon holat hisoblanadi O (logn). Qisqasi, bunday turdagi munosabatlar yo'q katta O uchun ishlatiladi eng yomon holat , Teta o'rtacha hol ”. Eng yaxshi, o'rtacha yoki haqida gapirganda barcha turdagi notalardan foydalanish mumkin (va ba'zan qo'llaniladi). eng yomon holat algoritmdan.
Tavsiya:
Ikkilik qidiruv eng tezmi?
Ikkilik qidiruv chiziqli qidiruvga qaraganda tezroq, kichik massivlardan tashqari. Biroq, ikkilik qidiruvni qo'llash uchun massiv avval tartiblangan bo'lishi kerak. Tez qidirish uchun mo'ljallangan maxsus ma'lumotlar tuzilmalari mavjud, masalan, xesh jadvallari, ularni ikkilik qidiruvdan ko'ra samaraliroq qidirish mumkin
Ikkilik qidiruv rekursiyasi bormi?
Ikkilik qidiruv - bu bo'lish va zabt etish algoritmi. Barcha bo'lish va zabt etish algoritmlari singari, Ikkilik qidiruv birinchi navbatda katta massivni ikkita kichik kichik massivlarga ajratadi, so'ngra kichik massivlarni rekursiv (yoki iterativ) ishlaydi. Shunday qilib, Ikkilik qidiruv har bir qadamda qidiruv maydonini yarmiga qisqartiradi
Java-da ikkilik qidiruv daraxtini qanday amalga oshirasiz?
Java-da Binary Search Tree (BST) ni amalga oshirish Tugunning chap pastki daraxtida faqat tugmachalari tugun kalitidan kamroq bo'lgan tugunlar mavjud. Tugunning o'ng pastki daraxti faqat tugun kalitidan kattaroq kalitlarga ega bo'lgan tugunlarni o'z ichiga oladi. Chap va o'ng pastki daraxt ham ikkilik qidiruv daraxti bo'lishi kerak. Ikki nusxadagi tugunlar bo'lmasligi kerak
C++ da ikkilik qidiruv nima?
Ikkilik qidiruv - tartiblangan ro'yxatda saqlangan elementning joylashuvini topish uchun mo'ljallangan soddalashtirilgan algoritm. C dasturida ikkilik qidiruvning bir nechta o'zgarishlari mavjud, masalan, algoritmning har bir bosqichida tenglik va kamroq testlar
Birlashtirishning eng yaxshi vaqt murakkabligi qanday?
Saralash algoritmlari Algoritm Ma’lumotlar strukturasi Fazoning murakkabligi: Eng yomon Tez tartiblash Massiv O(n) Birlashtirish tartiblash Massiv O(n) Uyma tartiblash Massiv O(1) Silliq tartiblash Massiv O(1)