static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            var bst = new BinarySearchTree <int>();

            bst.Insert(10);
            Console.WriteLine("\nAfter Inserting 10");
            bst.PrintInOrderRec(bst.Root);

            bst.Insert(9);
            Console.WriteLine("\nAfter Inserting 9");
            bst.PrintInOrderRec(bst.Root);

            bst.Insert(11);
            Console.WriteLine("\nAfter Inserting 11");
            bst.PrintInOrderRec(bst.Root);

            bst.Insert(3);
            Console.WriteLine("\nAfter Inserting 3");
            bst.PrintInOrderRec(bst.Root);

            bst.Insert(18);
            Console.WriteLine("\nAfter Inserting 18");
            bst.PrintInOrderRec(bst.Root);

            bst.Insert(6);
            Console.WriteLine("\nAfter Inserting 6");
            bst.PrintInOrderRec(bst.Root);

            bst.Insert(15);
            Console.WriteLine("\nAfter Inserting 15");
            bst.PrintInOrderRec(bst.Root);

            var delNode = bst.Delete_V2(bst.Root, 10);

            Console.WriteLine("\nAfter Deleting 10");
            bst.PrintInOrderRec(bst.Root);

            var max = bst.FindMax(bst.Root);

            Console.WriteLine("\nAfter FindMax");
            Console.WriteLine(max);

            var find18 = bst.Find(18);

            Console.WriteLine("\nAfter Find 18");
            Console.WriteLine(find18.Data);

            var find20 = bst.Find(20);

            Console.WriteLine("\nAfter Find 20");
            Console.WriteLine(find18);

            Console.WriteLine("\nInOrderTraverseStack");
            bst.InOrderTraverseStack(bst.Root);

            Console.WriteLine("\nInOrderTraverse Morris");
            bst.InOrderTraverseMorris(bst.Root);
        }
Exemple #2
0
        static void Main(string[] args)
        {
            BinarySearchTree nums = new BinarySearchTree();

            nums.Add(50);
            nums.Add(17);
            nums.Add(23);
            nums.Add(7);
            nums.Add(1);
            nums.Add(72);
            nums.Add(76);
            nums.Add(12);
            nums.Add(62);

            nums.Display();

            Console.WriteLine();
            Console.WriteLine("50 " + nums.Find(50));
            Console.WriteLine("76 " + nums.Find(76));
            Console.WriteLine("7 " + nums.Find(7));
            Console.WriteLine("10 " + nums.Find(10));
            Console.WriteLine("100 " + nums.Find(100));

            Console.ReadKey();
        }
Exemple #3
0
        static void Main(string[] args)
        {
            //Random random = new Random();
            BinarySearchTree newTree = new BinarySearchTree();

            //for (int i = 0; i < 10; i++)
            //{
            //int tempInt = random.Next(1, 101);
            //newTree.Insert(tempInt);

            newTree.Insert(48);
            newTree.Insert(59);
            newTree.Insert(22);
            newTree.Insert(13);
            newTree.Insert(7);
            newTree.Insert(11);
            newTree.Insert(57);
            newTree.Insert(85);
            newTree.Insert(56);
            newTree.Insert(99);

            //}

            try
            {
                Node tempNode = newTree.Find(22);

                if (tempNode != null)
                {
                    Console.WriteLine(tempNode.Data);
                }

                tempNode = newTree.Find(96);
                if (tempNode != null)
                {
                    Console.WriteLine("somehow found 96");
                }
                else if (tempNode == null)
                {
                    Console.WriteLine("did not find 96.");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
Exemple #4
0
        static void Main(string[] args)
        {
            BinarySearchTree binarySearchTree = new BinarySearchTree();

            binarySearchTree.Add(20);
            binarySearchTree.Add(7);
            binarySearchTree.Add(6);
            binarySearchTree.Add(9);
            binarySearchTree.Add(3);
            binarySearchTree.Add(4);
            binarySearchTree.Add(8);
            binarySearchTree.Find(9);
        }
        static void Main(string[] args)
        {
            BinarySearchTree<int> myTree = new BinarySearchTree<int>();

            myTree.Add(86);
            myTree.Add(12);
            myTree.Add(45);
            myTree.Add(34);
            myTree.Add(100);
            myTree.Add(89);
            myTree.Add(14);
            myTree.Add(55);

            myTree.Find(34);

            // myTree.RemoveNode(45);
            // myTree.RemoveNode(34);
            myTree.RemoveNode(89);

            foreach (var item in myTree)
            {
                Console.WriteLine(item);
            }

            Console.WriteLine();
            BinarySearchTree<int> myNewTree = (BinarySearchTree<int>)myTree.Clone();

            myTree.Root.value = 87;
            foreach (var item in myNewTree)
            {
                Console.WriteLine(item);
            }

            Console.WriteLine();
            foreach (var item in myTree)
            {
                Console.WriteLine(item);
            }

            Console.WriteLine(myTree.Equals(myNewTree));
            Console.WriteLine(myNewTree.ToString());
            Console.WriteLine(myNewTree == myTree);
            Console.WriteLine(myNewTree != myTree);
            Console.WriteLine(myTree.GetHashCode());

        }
Exemple #6
0
        static void Main(string[] args)
        {
            BinarySearchTree <int> myTree = new BinarySearchTree <int>();

            myTree.Add(86);
            myTree.Add(12);
            myTree.Add(45);
            myTree.Add(34);
            myTree.Add(100);
            myTree.Add(89);
            myTree.Add(14);
            myTree.Add(55);

            myTree.Find(34);

            // myTree.RemoveNode(45);
            // myTree.RemoveNode(34);
            myTree.RemoveNode(89);

            foreach (var item in myTree)
            {
                Console.WriteLine(item);
            }

            Console.WriteLine();
            BinarySearchTree <int> myNewTree = (BinarySearchTree <int>)myTree.Clone();

            myTree.Root.value = 87;
            foreach (var item in myNewTree)
            {
                Console.WriteLine(item);
            }

            Console.WriteLine();
            foreach (var item in myTree)
            {
                Console.WriteLine(item);
            }

            Console.WriteLine(myTree.Equals(myNewTree));
            Console.WriteLine(myNewTree.ToString());
            Console.WriteLine(myNewTree == myTree);
            Console.WriteLine(myNewTree != myTree);
            Console.WriteLine(myTree.GetHashCode());
        }