Binary Tree er en hierarkisk datastruktur, hvor hver node har nul, et eller højst to børn. Hver knude indeholder en "venstre" markør, en "højre" markør og et dataelement. "Root" -viseren repræsenterer den øverste knude i træet. Hver knude i datastrukturen er direkte forbundet med vilkårligt antal noder på hver side, kaldet børn. En nulpinder repræsenterer det binære træ. Der er ingen særlig rækkefølge til, hvordan noderne skal organiseres i det binære træ. Knudepunkter uden børn knudepunkter kaldes bladknudepunkter eller eksterne knudepunkter.
Enkelt set definerer den en organiseret mærkningsfunktion på knudepunkterne, som igen tildeler en vis tilfældig værdi til hver knude. Alt, der har to børn og en forældreknude, er et binært træ. Binære træer bruges til at gemme oplysninger, der danner et hierarki som filsystemet på din personlige computer. I modsætning til Arrays har træer ingen øvre grænse for antallet af knudepunkter, fordi de er knyttet ved hjælp af pegere, f.eks. Lænkelister. Hovedfunktioner i Binary Tree inkluderer repræsentation af hierarkiske data, sortering af datalister, tilvejebringelse af effektive indsæt / slet operationer osv. Trænoder er repræsenteret ved hjælp af strukturer i C.
Et binært søgetræ er en type binært trædatasystem, hvor knudepunkterne er arrangeret i rækkefølge, derfor også kaldet "bestilt binært træ". Det er en nodebaseret datastruktur, der giver en effektiv og hurtig måde at sortere, hente, søge i data. For hver knude skal elementerne i den venstre undertræ være mindre end eller lig med nøglen i dens overordnede knudepunkt (LP). Der skal ikke være duplikatnøgler. Enkelt sagt er det en speciel form for binær trædatastruktur, der effektivt gemmer og administrerer genstande i hukommelsen.
Det giver hurtig adgang til information, indsættelse og fjernelse af data, plus det kan bruges til at implementere opslagstabeller, der giver mulighed for at søge efter genstande ved hjælp af deres unikke nøgler, som at søge efter en persons telefonnummer ved navn. De unikke nøgler sorteres på en organiseret måde, så opslag og andre dynamiske operationer kan udføres ved hjælp af binær søgning. Det understøtter tre hovedoperationer: søgning af elementer, indsættelse af elementer og sletning af elementer. Binært søgetræ giver mulighed for hurtig hentning af elementer, der er gemt i træet, da hver nodenøgle grundigt sammenlignes med rodnoden, der kasserer halvdelen af træet.
Binært træ | Binært søgetræ |
Binary Tree er en specialiseret form for træ, der repræsenterer hierarkiske data i en træstruktur. | Binary Search Tree er en type binært træ, der holder nøglerne i en sorteret rækkefølge for hurtig opslag. |
Hver knude skal højst have to underordnede knudepunkter, hvor hver knude er forbundet til nøjagtigt en anden knude ved en rettet kant. | Værdien af knudepunkterne i den venstre undertræ er mindre end eller lig med værdien af rodnoden, og knudepunkterne til højre undertræ har værdier større end eller lig med værdien på rodnoden. |
Der er ingen relativ rækkefølge for, hvordan knudepunkterne skal organiseres. | Det følger en endelig rækkefølge for, hvordan knudepunkterne skal organiseres i et træ. |
Det er dybest set en hierarkisk datastruktur, der er en samling af elementer kaldet noder. | Det er en variant af det binære træ, hvor knudepunkterne er arrangeret i en relativ rækkefølge. |
Det bruges til hurtig og effektiv opslag af data og information i en træstruktur. | Det bruges hovedsageligt til indsættelse, sletning og søgning af elementer. |
Mens begge simulerer en hierarkisk træstruktur, der repræsenterer en samling af noder, hvor hver knude repræsenterer en værdi, er de ganske forskellige fra hinanden med hensyn til, hvordan de kan implementeres og bruges. Et binært træ følger en enkel regel om, at hver forældreknudepunkt ikke har mere end to underordnede knudepunkter, mens et binært søgetræ kun er en variant af det binære træ, der følger en relativ rækkefølge til, hvordan knudepunkterne skal organiseres i et træ.