A bináris fa olyan hierarchikus adatstruktúra, amelyben minden csomópont nulla, egy vagy legfeljebb két gyermeket tartalmaz. Minden csomópont tartalmaz egy „bal” mutatót, „jobb” mutatót és adatelemet. A „gyökér” mutató a fa legfelső csomópontját jelöli. Az adatszerkezet minden csomópontja közvetlenül kapcsolódik tetszőleges számú csomóponttal, mindkét oldalon, gyermekekre hivatkozva. A nullmutató a bináris fát jelöli. Nincs külön sorrend a csomópontok rendezéséhez a bináris fában. Azok a csomópontok, amelyekben nincs gyermekcsomópont, levélcsomópontnak vagy külső csomópontnak nevezzük.
Egyszerűen fogalmazva meghatározza a csomópontok szervezett címkézési funkcióját, amelyek viszont egyes csomópontokhoz valamilyen véletlenszerű értéket rendelnek. Bármelyik, amelynek két gyermeke és egy szülőcsomója van, egy bináris fa. A bináris fákat olyan információk tárolására használják, amelyek hierarchiát képeznek, mint például a fájlrendszer a személyi számítógépen. A tömbökkel ellentétben a fák nem rendelkeznek felső határértékkel a csomópontok számára, mivel mutatókkal vannak összekapcsolva, például a kapcsolt listákkal. A bináris fa fő funkciói között szerepel a hierarchikus adatok ábrázolása, az adatlisták rendezése, a hatékony beszúrási / törlési műveletek biztosítása stb. A fa csomópontjai a C struktúrákkal vannak ábrázolva..
A bináris keresési fa olyan bináris fa adatstruktúra, amelyben a csomópontok rendben vannak elrendezve, ezért „rendezett bináris fa” -nak is hívják. Ez egy csomópont-alapú adatszerkezet, amely hatékony és gyors módszert kínál az adatok válogatására, visszakeresésére és keresésére. Mindegyik csomópont esetében a bal oldali részfában lévő elemeknek legalább a szülőcsomópontban (LP) lévő kulcsnak kell lennie vagy azzal egyenlőnek kell lennie. Nem szabad másolatot készíteni a kulcsokról. Egyszerűen fogalmazva, ez egy speciális típusú bináris fa adatstruktúra, amely hatékonyan tárolja és kezeli a memóriában lévő elemeket.
Ez lehetővé teszi az információk gyors elérését, az adatok beillesztését és eltávolítását, valamint felhasználható olyan keresési táblázatok megvalósításához, amelyek lehetővé teszik az elemek keresését egyedi kulcsuk alapján, például egy személy telefonszámának név szerinti keresését. Az egyedi kulcsok szervezett módon vannak rendezve, hogy a keresés és az egyéb dinamikus műveletek bináris kereséssel történjenek. Három fő műveletet támogat: az elemek keresését, az elemek beillesztését és az elemek törlését. A bináris keresési fa lehetővé teszi a fában tárolt elemek gyors visszakeresését, mivel minden csomópont kulcsot alaposan összehasonlítanak a gyökér csomóponttal, amely a fa felét eldobja..
Bináris fa | Bináris keresési fa |
A bináris fa egy fa speciális formája, amely a hierarchikus adatokat képviseli a fa struktúrájában. | A bináris keresési fa egy olyan típusú bináris fa, amely a billentyűket a gyors keresés érdekében rendezett sorrendben tartja. |
Mindegyik csomópontnak legfeljebb két gyermekcsomópontot kell tartalmaznia, mindegyik csomópont pontosan egy másik csomóponttól van egy irányított éllel összekötve. | A bal alfában lévő csomópontok értéke kevesebb vagy egyenlő a gyökér csomópont értékével, és a jobb oldali részfához tartozó csomópontok értéke nagyobb vagy egyenlő a gyökér csomópont értékével. |
Nincs relatív sorrend a csomópontok felépítésére vonatkozóan. | A végső sorrendet követi, hogy a csomópontokat hogyan kell egy fában rendezni. |
Alapvetően egy hierarchikus adatstruktúra, amely csomópontoknak nevezett elemek gyűjteménye. | A bináris fa egy változata, amelyben a csomópontok relatív sorrendben vannak elrendezve. |
Az adatok és információk gyors és hatékony keresésére szolgálnak a fa struktúrájában. | Elsősorban elemek beillesztésére, törlésére és keresésére használják. |
Bár mindkettő szimulál egy hierarchikus fa struktúrát, amely a csomópontok gyűjteményét reprezentálja, mindegyik csomóponttal egy értéket képviselve, ezek meglehetősen különböznek egymástól a megvalósításuk és felhasználásuk szempontjából. A bináris fa egy egyszerű szabályt követ, amely szerint minden szülő csomópontnak nem lehet kettőnél több gyermek csomópontja, míg a bináris keresési fa a bináris fa csak egy változata, amely követi a csomópontok szervezésének relatív sorrendjét egy fában..