class BinaertSokeTre { private class Node { Node hoyreBarn, venstreBarn; int verdi; public Node(int verdi) { this.verdi = verdi; } } private Node roten; public void settInn(int tall) { if (roten == null) { roten = new Node(tall); } else { settInn(roten, tall); } } private void settInn(Node gjeldene, int tall) { if (tall < gjeldene.verdi) { if (gjeldene.venstreBarn == null) { gjeldene.venstreBarn = new Node(tall); } else { settInn(gjeldene.venstreBarn, tall); } } else { if (gjeldene.hoyreBarn == null) { gjeldene.hoyreBarn = new Node(tall); } else { settInn(gjeldene.hoyreBarn, tall); } } } public void skrivUt() { skrivUt(roten); } private void skrivUt(Node gjeldene) { if (gjeldene == null) { return; } skrivUt(gjeldene.venstreBarn); System.out.println(gjeldene.verdi); skrivUt(gjeldene.hoyreBarn); } public int storrelse() { return storrelse(roten); } private int storrelse(Node gjeldene) { if (gjeldene == null) { return 0; } return 1 + storrelse(gjeldene.venstreBarn) + storrelse(gjeldene.hoyreBarn); } }