Beispiel #1
0
        private static void Insert_NodeDistanceTree(Trees.Binary.NodeDistance.Tree tree)
        {
            //Test Insert
            Console.WriteLine("Inserting");
            tree.Insert(8);
            tree.Insert(4);
            tree.Insert(12);
            tree.Insert(2);
            tree.Insert(6);
            tree.Insert(10);
            tree.Insert(14);

            tree.Insert(1);
            tree.Insert(3);
            tree.Insert(9);
            tree.Insert(11);
            tree.Insert(15);
            tree.Insert(13);
            tree.Insert(7);
            tree.Insert(5);
        }
Beispiel #2
0
        /// Test Tree Node Distance
        private static void NodeDistanceTree_Tests()
        {
            Trees.Binary.NodeDistance.Tree tree = new Trees.Binary.NodeDistance.Tree();

            //Test Insert
            Insert_NodeDistanceTree(tree);

            //Test InOrder

            Console.WriteLine("Traversing");
            var list = tree.InOrderTraverse();

            Console.WriteLine(string.Join(" ", list.Select(x => x.ToString())));

            //Test Node Exist
            Console.WriteLine("Node 7 Exist: " + tree.NodeExist(7));
            Console.WriteLine("Node 16 Exist: " + tree.NodeExist(16));

            //Test Node Distance
            Console.WriteLine("testing Distances");
            var distance = tree.DistanceBetweenNodes(2, 6);

            Console.WriteLine("Distance between 2 and 6: " + distance);

            distance = tree.DistanceBetweenNodes(13, 3);
            Console.WriteLine("Distance between 13 and 3: " + distance);

            distance = tree.DistanceBetweenNodes(3, 10);
            Console.WriteLine("Distance between 3 and 10: " + distance);

            distance = tree.DistanceBetweenNodes(3, 4);
            Console.WriteLine("Distance between 3 and 4: " + distance);

            distance = tree.DistanceBetweenNodes(4, 4);
            Console.WriteLine("Distance between 4 and 4: " + distance);
        }