Binary search tree ustida amallar. API yoziş

BSTga element qöşiş, öçiriş, qidiriş, maksimum/minimum elementni çiqariş uçun API yozamiz. APIning tuzilişi quyidagiça böladi.
Dasturchi, frilanser, gik va introvert

BSTga element qöşiş, öçiriş, qidiriş, maksimum/minimum elementni çiqariş uçun API yozamiz. APIning tuzilişi quyidagiça böladi.

Binary search tree (BST) - çap çild'ining qiymati özidan kiçik bölgan, öng çild'ining qiymati özidan katta bölgan node'lardan iborat binary tree.
Dictionary (yoki Symbol table) - obyektlar guruhini özida jamlagan ma'lumot tuzilmasi. Unda özaro boğlangan kalit (key) va qiymat (value) guruhi saqlanadi. Dictionary'dan ma'lumotni key'ni körsatgan holda olinadi.
Heapsort - binary heap ma'lumotlar tuzilmasi asosidagi tartiblaş algoritmi. Biz heap har doim ma'lum bir tartibga rioya qilişini bilganimiz uçun, uning bu hususiyatidan tartiblaşda foydalanişimiz - array'ning eng katta qiymatini olib uni array'ning ohiriga qöyib boriş orqali array'ni tartiblaşimiz m

Binary heap - har bir tuguni (node) maxsus tartiblangan va complete binary tree. Complete binary tree nima ekanligi haqida bu yerda tuşuntirib ötilgani uçun, maxsus tartiblangan ma'nosiga töxtalamiz.

Tree - çiziqli bölmagan ma'lumot tuzilmasi (data structure) bölib u ma'lumotlarni ierarxik körinişda taşkil qiladi. Masalan, oila şajarasini tasavvur qiladigan bölsak, u ham tree ma'lumot tuzilmasi hisoblanadi.

Priority queue (PQ) - huddi stack va queue kabi ma'lumotlar töplami. Yagona farqi - qaysi element öçirilişida. Stack'da ohirgi qöşilgan element birinçi bölib öçirilsa, queue'da birinçi qöşilgan element birinçi öçiriladi.
Ok, bunisi oson, Quickselect ni örganiş nimaga kerak deyişingiz mumkin. Töğri, şunçaki array'ni ösiş böyiça tartiblab, keyin array[k] ni topsa böladi. Quicksort yoki Mergesort yordamida array tartiblangaç, k-nçi kiçik element topiladi.
Quicksort bilan tanişib çiqqan bölsangiz, algoritmda böluvçi element (pivot) array'ni ikkiga böladi. Bunda array[pivot]'ning çap tarafida undan kiçkina qiymatlar, öng tarafida undan katta qiymatlar örin oladi. Uşbu algoritmning kamçiligi şundaki - röyhatda bir xil qiymatlar köp uçraydigan bölsa, işl
Mergesort kabi, Quicksort ham rekursiv algoritm, lekin Quicksort'ning Mergesort'dan farqi - rekursiya iş tugallangaç işga tuşadi (Mergesort'da avval rekursiya, keyin iş boşlanardi).