コード例 #1
0
        static void TraverseBinarySearchTree()
        {
            BinarySearchTree binarySearchTree = new BinarySearchTree(60);

            Node <int> node2 = new Node <int>(25);
            Node <int> node3 = new Node <int>(90);
            Node <int> node4 = new Node <int>(10);
            Node <int> node5 = new Node <int>(70);
            Node <int> node6 = new Node <int>(120);
            Node <int> node7 = new Node <int>(3);
            Node <int> node8 = new Node <int>(131);

            binarySearchTree.Root.LeftChild  = node2;
            binarySearchTree.Root.RightChild = node3;
            node2.LeftChild  = node4;
            node3.LeftChild  = node5;
            node3.RightChild = node6;
            node4.LeftChild  = node7;
            node6.RightChild = node8;

            Console.WriteLine("Breadth First Binary Search");
            List <int> breadth = binarySearchTree.traverseBinarySearch(binarySearchTree.Root);

            Console.WriteLine(string.Join(',', breadth));
            Console.WriteLine();

            Console.WriteLine("Add new nodes 40, 115, and 44: ");
            binarySearchTree.add(binarySearchTree.Root, 40);
            binarySearchTree.add(binarySearchTree.Root, 115);
            binarySearchTree.add(binarySearchTree.Root, 44);
            List <int> breadth2 = binarySearchTree.traverseBinarySearch(binarySearchTree.Root);

            Console.WriteLine(string.Join(',', breadth2));
            Console.WriteLine();

            Console.WriteLine("Does the binary search tree contains 38?");
            Console.WriteLine(binarySearchTree.contains(binarySearchTree.Root, 38));
        }