Example #1
0
        static void Main(string[] args)
        {
            BinaryFunctions tree = new BinaryFunctions();
            int sumdepth = 0;
            int numberOfNodes = 0;
            double minLevel = 0;

            Console.WriteLine("Enter a collection of numbers in the range [0,100], seperated by spaces:\n");
            string line = Console.ReadLine();

            string[] line_parsed = line.Split(new char[] {' '});
            for (int i = 0; i < line_parsed.Length; i++)
                tree.insert(tree.root, int.Parse(line_parsed[i]));

            Console.Write("Tree Contents: ");
            tree.inOrderTraversal(tree.root);
            numberOfNodes = tree.returnNodes();
            sumdepth = tree.countLevels(tree.root);
            minLevel = Math.Log(numberOfNodes, 2.0);
            Console.WriteLine();
            Console.WriteLine("Tree Statistics:");
            Console.WriteLine("  Number of nodes: " + numberOfNodes);          
            Console.WriteLine(" Number of levels: " + sumdepth);
            Console.WriteLine(" Minumum number of levels that a tree with " + numberOfNodes + " nodes could have = " + Math.Ceiling(minLevel));
            Console.WriteLine("Done!");
            
            
        }