B-medis ir dvejetainis medis

Autorius: Laura McKinney
Kūrybos Data: 4 Balandis 2021
Atnaujinimo Data: 25 Balandis 2024
Anonim
BTree vs  Binary Tree
Video.: BTree vs Binary Tree

Turinys

Skirtumas tarp B-medžio ir dvejetainio medžio yra tas, kad B-medis yra rūšiuotas medis, kuriame mazgai yra rūšiuojami pagal skersinį kelią, tuo tarpu dvejetainis medis yra užsakytas medis, turintis rodyklę kiekviename mazge.


Duomenų struktūros yra svarbiausios sąvokos kompiuteriniame programavime, o duomenų struktūrose dvi svarbiausios sąvokos yra B-medis ir Dvejetainis medis. Abu skiriasi vienas nuo kito. B-medis yra rūšiuotas medis, kuriame mazgai rūšiuojami pagal skersą, tuo tarpu dvejetainis medis yra užsakytas medis, turintis rodyklę kiekviename mazge. B ir dvejetainiai medžiai yra netiesinės duomenų struktūros. Pagal pavadinimą abu terminai atrodo vienodi, tačiau jie nėra vienodi, nes skiriasi. Dvejetainis medžio kodas yra saugomas RAM, o B-medžio kodas yra saugomas diske.

B-medis yra M kelio medis, kuris yra subalansuotas, B-medis yra žinomas kaip subalansuotas rūšiuoti medis. B-medis yra perbrauktas. B-medžio erdvės sudėtingumas yra O (n). Įterpimo ir ištrynimo laiko sudėtingumas yra O (log n). B medyje medžio aukštis turėtų būti kuo mažesnis. B-medyje neturėtų būti tuščio poskyrio. Visi medžio lapai turėtų būti vienodo lygio. Kiekviename mazge gali būti didžiausias M vaikų skaičius ir mažiausias M / 2 vaikų skaičius. Kiekviename B medžio mazge turėtų būti mažiau raktų nei antriniame raide. B medyje klavišai, esantys subfaree, esančiame kairėje klavišo dalyje, yra pirmtakai. Kai mazgas yra pilnas ir bandote įterpti naują mazgą, medis suskaidomas į dvi dalis. Galite sujungti mazgus B-medyje, kol mazgai bus ištrinti.


Dvejetainis medis turi du rodykles, kuriuose yra jo vaiko mazgų adresas. Yra dvejetainių medžių tipai, tokie kaip griežtai dvejetainis medis, pilnas dvejetainis medis, išplėstas dvejetainis medis ir tt. Griežtai dvejetainiame medyje turi būti kairysis poskyris ir dešinysis poskyris. Visame dvejetainiame medyje turėtų būti du mazgai. kiekviename lygyje, o srieginiame dvejetainiame medyje turėtų būti nuo 0 iki 2 mazgų skaičius. Jei mes kalbėsime apie skersinius metodus, trys skersiniai būdai yra skersiniai, iš anksto užsakomi skersiniai ir po užsakymų.

Turinys: skirtumas tarp B medžio ir dvejetainio medžio

  • Palyginimo diagrama
  • B-medis
  • Dvejetainis medis
  • Pagrindiniai skirtumai
  • Išvada
  • Aiškinamasis vaizdo įrašas

Palyginimo diagrama

PagrindasB-medisDvejetainis medis
PagrindasB-medis yra išrūšiuotas medis, kuriame mazgai yra rūšiuojami pagal skersinį kelią.Dvejetainis medis yra užsakytas medis, turintis rodyklę kiekviename mazge.
ParduotuvėB medžio kodas saugomas diske.Dvejetainis medžio kodas saugomas RAM
ŪgisB medžio aukštis bus log NDvejetainio medžio aukštis bus rąstas2 N
TaikymasDBVS yra B medžio taikymas.„Huffman“ kodavimas yra dvejetainio medžio programa.

B-medis

B-medis yra M kelio medis, kuris yra subalansuotas, B-medis yra žinomas kaip subalansuotas rūšiuoti medis. B-medis yra perbrauktas. B-medžio erdvės sudėtingumas yra O (n). Įterpimo ir ištrynimo laiko sudėtingumas yra O (log n). B medyje medžio aukštis turėtų būti kuo mažesnis.


B-medyje neturėtų būti tuščio poskyrio. Visi medžio lapai turėtų būti vienodo lygio. Kiekviename mazge gali būti didžiausias M vaikų skaičius ir mažiausias M / 2 vaikų skaičius. Kiekviename B medžio mazge turėtų būti mažiau raktų nei antriniame raide. B medyje klavišai, esantys subfaree, esančiame kairėje klavišo dalyje, yra pirmtakai. Kai mazgas užpildytas ir bandote įterpti naują mazgą, medis padalijamas į dvi dalis. Galite sujungti mazgus B-medyje, kol mazgai bus ištrinti.

Dvejetainis medis

Dvejetainis medis turi du rodykles, kuriuose yra jo vaiko mazgų adresas. Yra dvejetainių medžių tipai, tokie kaip griežtai dvejetainis medis, pilnas dvejetainis medis, išplėstas dvejetainis medis ir kt.

Griežtai dvejetainiame medyje turi būti kairysis poskyris ir dešinysis potekstė, visame dvejetainiame medyje kiekviename lygyje turėtų būti du mazgai, o srieginiame dvejetainiame medyje turėtų būti nuo 0 iki 2 mazgų skaičius. Jei mes kalbėsime apie skersinius metodus, yra trys horizontalūs metodai, kurie yra skersiniai, iš anksto užsakomi ir po užsakymo.

Pagrindiniai skirtumai

  1. B-medis yra surūšiuotas medis, kuriame mazgai yra rūšiuojami pagal skersinį kelią, tuo tarpu dvejetainis medis yra užsakytas medis, turintis rodyklę kiekviename mazge.
  2. B medžio kodas yra saugomas diske, tuo tarpu dvejetainis medžio kodas yra saugomas RAM.
  3. B medžio aukštis bus logN, o dvejetainio medžio aukštis bus log2 N
  4. DBMS yra B medžio taikymas, o Huffman kodavimas yra dvejetainio medžio programa.

Išvada

Šiame aukščiau esančiame straipsnyje matome aiškų skirtumą tarp B medžio ir dvejetainių medžių, juos įgyvendinant.

Aiškinamasis vaizdo įrašas