logo

Binārais koks pret bināro meklēšanas koku

Pirmkārt, mēs sapratīsim binārais koks un binārā meklēšanas koks atsevišķi, un tad mēs aplūkosim atšķirības starp bināro koku un bināro meklēšanas koku.

Kas ir binārais koks?

A Binārais koks irRādītājs uz kreiso bērnu:Tajā tiek saglabāta kreisā pakārtota mezgla atsauce.Rādītājs uz pareizo bērnu:Tajā tiek saglabāta labā pakārtotā mezgla atsauce.Datu elements:Datu elements ir mezglā saglabāto datu vērtība.

Bināro koku var attēlot šādi:

Binārais koks pret bināro meklēšanas koku

Iepriekš redzamajā attēlā var novērot, ka katrā mezglā ir maksimāli 2 bērni. Ja nevienā mezglā nav kreisās vai labās puses atvasinājuma, rādītāja vērtība attiecībā uz šo bērnu būtu NULL.

Binārajā kokā izmantotās pamata terminoloģijas ir:

    Saknes mezgls:Saknes mezgls ir pirmais vai augstākais mezgls binārajā kokā.Vecuma mezgls:Ja mezgls ir savienots ar citu mezglu caur malām, šo mezglu sauc par vecākmezglu. Binārajā kokā vecākajam mezglam var būt ne vairāk kā 2 bērni.Bērnu mezgls:Ja mezglam ir priekštecis, tad šis mezgls ir pazīstams kā a bērnu mezgls .Lapu mezgls:Mezgls, kurā nav neviena bērna, kas pazīstams kā a lapas mezgls .Iekšējais mezgls:Mezgls, kuram ir vismaz 2 bērni, kas pazīstams kā an iekšējais mezgls .Mezgla dziļums:Attālums no saknes mezgla līdz dotajam mezglam ir zināms kā a mezgla dziļums . Mēs nodrošinām etiķetes visiem mezgliem, piemēram, saknes mezgls ir apzīmēts ar 0, jo tam nav dziļuma, saknes mezglu bērni ir apzīmēti ar 1, saknes bērna bērni ir apzīmēti ar 2.Augstums:Garākais attālums no saknes mezgla līdz lapas mezglam ir mezgla augstums .

Binārajā kokā ir viens koks, kas pazīstams kā a ideāls binārais koks . Tas ir koks, kurā visos iekšējos mezglos ir jābūt diviem mezgliem, un visiem lapu mezgliem jābūt vienādā dziļumā. Perfekta binārā koka gadījumā kopējo binārajā kokā esošo mezglu skaitu var aprēķināt, izmantojot šādu vienādojumu:

n = 2m+1-1

kur n ir mezglu skaits, m ir mezgla dziļums.

Kas ir binārās meklēšanas koks?

A Binārais meklēšanas koks ir koks, kas seko noteiktai secībai, lai sakārtotu elementus, savukārt binārais koks neseko nevienai secībai. Binārajā meklēšanas kokā kreisā mezgla vērtībai ir jābūt mazākai par vecākmezglu, bet labā mezgla vērtībai ir jābūt lielākai par vecākmezglu.

Izpratīsim binārā meklēšanas koka jēdzienu, izmantojot piemērus.

Binārais koks pret bināro meklēšanas koku

Iepriekš redzamajā attēlā var novērot, ka saknes mezgla vērtība ir 15, kas ir lielāka par visu kreisā apakškoka mezglu vērtību. Saknes mezgla vērtība ir mazāka par visu labās puses apakškoka mezglu vērtībām. Tagad mēs pārejam uz saknes mezgla kreiso bērnu. 10 ir lielāks par 8 un mazāks par 12; tas apmierina arī binārā meklēšanas koka īpašību. Tagad mēs pārejam uz saknes mezgla labo bērnu; vērtība 20 ir lielāka par 17 un mazāka par 25; tas atbilst arī binārā meklēšanas koka īpašībai. Tāpēc mēs varam teikt, ka iepriekš parādītais koks ir binārais meklēšanas koks.

Tagad, ja mēs mainām vērtību 12 uz 16 iepriekš minētajā binārajā kokā, mums ir jāatrod, vai tas joprojām ir binārais meklēšanas koks.

Binārais koks pret bināro meklēšanas koku

Saknes mezgla vērtība ir 15, kas ir lielāka par 10, bet mazāka par 16, tāpēc tā neatbilst binārā meklēšanas koka īpašībai. Tāpēc tas nav binārs meklēšanas koks.

Operācijas binārajā meklēšanas kokā

Mēs varam veikt ievietošanas, dzēšanas un meklēšanas darbības binārajā meklēšanas kokā. Sapratīsim, kā tiek veikta meklēšana binārajā meklēšanā. Tālāk ir parādīts binārais koks, kurā mums jāveic meklēšanas darbība:

Binārais koks pret bināro meklēšanas koku

Pieņemsim, ka mums ir jāmeklē 10 iepriekš minētajā binārajā kokā. Lai veiktu bināro meklēšanu, mēs ņemsim vērā visus veselos skaitļus sakārtotā masīvā. Pirmkārt, mēs izveidojam pilnu sarakstu meklēšanas laukā, un visi skaitļi būs meklēšanas laukā. Meklēšanas vieta ir atzīmēta ar diviem rādītājiem, t.i., sākumu un beigas. Iepriekš minētā binārā koka masīvu var attēlot kā

Binārais koks pret bināro meklēšanas koku

Vispirms mēs aprēķināsim vidējo elementu un salīdzināsim vidējo elementu ar meklējamo elementu. Vidējais elements tiek aprēķināts, izmantojot n/2. n vērtība ir 7; tāpēc vidējais elements ir 15. Vidējais elements nav vienāds ar meklēto elementu, t.i., 10.

Piezīme: Ja meklējamais elements ir mazāks par vidējo elementu, tad meklēšana tiks veikta kreisajā pusē; pretējā gadījumā meklēšana tiks veikta labajā pusē. Vienlīdzības gadījumā elements tiek atrasts.

Tā kā meklējamais elements ir mazāks par vidējo elementu, meklēšana tiks veikta kreisajā masīvā. Tagad meklēšana ir samazināta uz pusi, kā parādīts zemāk:

Binārais koks pret bināro meklēšanas koku

Vidējais elements kreisajā masīvā ir 10, kas ir vienāds ar meklēto elementu.

Laika sarežģītība

Binārajā meklēšanā ir n elementi. Ja vidējais elements nav vienāds ar meklēto elementu, tad meklēšanas telpa tiek samazināta līdz n/2, un mēs turpināsim samazināt meklēšanas telpu par n/2, līdz elementu atradīsim. Visā samazināšanā, ja mēs pārietam no n uz n/2 uz n/4 un tā tālāk, tad tas aizņems log2n soļi.

Atšķirības starp bināro koku un bināro meklēšanas koku

Binārais koks pret bināro meklēšanas koku

Pamats salīdzināšanai Binārais koks Binārais meklēšanas koks
Definīcija Binārais koks ir nelineāra datu struktūra, kurā mezglam var būt maksimāli divi bērni, t.i., mezglam var būt 0, 1 vai ne vairāk kā divi bērni. Binārais meklēšanas koks ir sakārtots binārs koks, kurā tiek ievērota noteikta secība, lai sakārtotu mezglus kokā.
Struktūra Binārā koka struktūra ir tāda, ka pirmais mezgls vai augšējais mezgls ir pazīstams kā saknes mezgls. Katrs binārā koka mezgls satur kreiso un labo rādītāju. Kreisais rādītājs satur kreisā apakškoka adresi, bet labais rādītājs satur labā apakškoka adresi. Binārais meklēšanas koks ir viens no binārā koka veidiem, kura visu kreisā apakškoka mezglu vērtība ir mazāka vai vienāda ar saknes mezglu, un visu labā apakškoka mezglu vērtība ir lielāka vai vienāda ar saknes mezgla vērtība.
Operācijas Operācijas, kuras var īstenot binārajā kokā, ir ievietošana, dzēšana un šķērsošana. Binārie meklēšanas koki ir sakārtoti binārie koki, kas nodrošina ātru ievietošanu, dzēšanu un meklēšanu. Uzmeklēšana galvenokārt īsteno bināro meklēšanu, jo visas atslēgas ir sakārtotas sakārtotā secībā.
veidi Četri bināro koku veidi ir pilns binārais koks, pilnīgs binārais koks, ideāls binārais koks un paplašinātais binārais koks. Ir dažādi bināro meklēšanas koku veidi, piemēram, AVL koki, Splay koks, tango koki utt.