package org.example; public class BST { Node root; public BST() { this.root = null; } public void insertNode(Node node) { if (root == null) { root = node; } else { Node local = root; while (local != null) { if (node.getValue() > local.getValue()) { if (local.right != null) { //posun local = local.right; } else { //insert right local.right = node; break; } } else { if (local.left != null) { //posun local = local.left; } else { //insert left local.left = node; break; } } } } } public void printPreorder (Node node) { if (node == null) { return; } System.out.print(node.getValue() + " "); printPreorder(node.left); printPreorder(node.right); } public void printInorder (Node node) { if (node == null) { return; } printInorder(node.left); System.out.print(node.getValue() + " "); printInorder(node.right); } public void printPostorder (Node node) { if (node == null) { return; } printPostorder(node.left); printPostorder(node.right); System.out.print(node.getValue() + " "); } }