Pereiti prie turinio

2-3-4 medis

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
2-3-4 medžio viršūnės

2-3-4 medis – savaime susibalansuojanti duomenų struktūra, naudojama efektyviam žodyno paieškos ir kitų panašių algoritmų programavimui.[1] Tai balansuotas 2-os eilės B-medis. Pirmasis tokį medį 1970 m. pasiūlė Džonas Hopkoftas. Kiekviena 2-3-4 medžio viršūnė turi nuo 2 iki 4 viršūnių, taip pat kiekviena viršūnė gali saugoti 1, 2 arba tris raktus (duomenų elementus).

  1. visi lapai yra viename lygyje
  2. kiekviena vidinė viršūnė turi 2 arba 3 vaikus
  3. kiekviena viršūnė turi 1 arba 2 reikšmes
  4. medžio gylis yra tarp ir , kur n yra viršūnių skaičius

Viršūnių rūšys

[redaguoti | redaguoti vikitekstą]
2-tipo
viršūnėje saugomas 1 duomenų elementas ir yra 2 rodyklės į vaikus. Kaip ir binariniame paieškos medyje, viename pomedyje yra mažesni duomenų elementai, kitame – didesni.
3-tipo
viršūnėje saugomi 2 duomenų elementai ir yra 3 rodyklės į vaikus. Viena rodyklė – vaikams su mažesniais elementais, antra – elementams esantiems tarp viršūnės elementų, trečia – vaikams su didesniais elementais
4-tipo
viršūnėje saugomi 3 duomenų elementai ir yra 4 rodyklės į vaikus. Dvi rodyklės vaikams su mažesniais ir didesniais elementais, kitos dvi rodyklės elementams, esantiems viršūnės raktais apibrėžtuose rėžiuose.
Įterpimo operacija

2-3-4 medžiuose labai efektyvios tiek paieškos, tiek ir įterpimo bei šalinimo operacijos. Įterpiant elementą, medis auga į viršų, ne į apačią, kaip dvejetainis medis. Įterpiant 2-tipo viršūnė virsta 3-tipo viršūne, 3-tipo viršūnė virsta 4-tipo viršūne, o 4-tipo viršūnė skyla į dvi viršūnes ir vieną iš vidurinių raktų perduoda tėvinei viršūnei.

  1. Knuth, Donald (1998). Sorting and Searching. The Art of Computer Programming. 3 (Second leid.). Addison–Wesley. ISBN 0-201-89685-0.. Skyrius 6.2.4: Multiway Trees, psl. 481–491. Taip pat ir skyrius 6.2.3 (psl. 476–477)(„subalansuoti medžiai“) aptaria 2-3 medžius.
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy