Sobes.tech
Junior

Wat is een binaire boom?

sobes.tech AI

Antwoord van AI

Een binaire boom is een datastructuur in de vorm van een boom waarin elke knoop maximaal twee kinderen heeft: links en rechts.

Belangrijke kenmerken:

  • Elke knoop heeft een pointer naar zijn waarde (gegevens) en pointers naar zijn linker- en rechterkinderen (kunnen leeg zijn).
  • Er bestaat een wortelknoop — de bovenste knoop van de boom, zonder voorouder.
  • Bladeren zijn knopen zonder kinderen.
  • Subbomen zijn elk van de binaire bomen die de wortelboom vormen.

Belangrijkste typen binaire bomen:

  • Volledige binaire boom: op elk niveau, behalve mogelijk het laatste, hebben alle knopen twee kinderen, en op het laatste niveau zijn alle knopen naar links verschoven.
  • Perfecte binaire boom: alle niveaus zijn volledig gevuld, en elke knoop (behalve bladeren) heeft twee kinderen.
  • Gebalanceerde binaire boom: de hoogtes van de linker- en rechteronderbomen van elke knoop verschillen niet meer dan 1.

Toepassingen in QA:

  • Testhiërarchie: organisatie van testscenario's of testsets in een boomstructuur voor betere leesbaarheid en navigatie.
  • Gegevens zoeken en sorteren: binaire zoekbomen worden gebruikt voor snelle zoekopdrachten, invoegen en verwijderen van elementen (bijvoorbeeld bij prestatietests van gegevensoperaties).
  • Gegevensstructurering: voorstelling en organisatie van testgegevens of uitvoeringsresultaten.

Voorbeeld van een knooprepresentatie in Python:

class Node:
    def __init__(self, value):
        self.value = value  # Waarde van de knoop
        self.left = None    # Linker kind
        self.right = None   # Rechter kind