示例#1
0
        public override void Run()
        {
            var      tree          = Q4_02_CreateMinimalBSTfromSortedUniqueArray.Create(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
            var      nodeToReplace = tree.Find(6);
            TreeNode newTree       = nodeToReplace.Replace(11);

            BTreePrinter.Print(tree);
            BTreePrinter.Print(newTree);
        }
示例#2
0
        public override void Run()
        {
            var tree    = Q4_02_CreateMinimalBSTfromSortedUniqueArray.Create(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
            var subTree = Q4_02_CreateMinimalBSTfromSortedUniqueArray.Create(6, 7, 8, 9, 10);

            Print(tree, subTree);
            subTree = Q4_02_CreateMinimalBSTfromSortedUniqueArray.Create(7, 8, 9, 10);
            Print(tree, subTree);
        }
        public override void Run()
        {
            var root = Q4_02_CreateMinimalBSTfromSortedUniqueArray.Create(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

            PrintTree(root);

            root = new TreeNode(2);
            root.SetLeftChild(new TreeNode(1));
            root.Left.SetLeftChild(new TreeNode(3));
            PrintTree(root);
        }
示例#4
0
        public override void Run()
        {
            var root = Q4_02_CreateMinimalBSTfromSortedUniqueArray.Create(1, 2, 3);

            BTreePrinter.Print(root);
            var results = AllSequences(root);

            foreach (var list in results)
            {
                AssortedMethods.PrintList(list);
            }
        }
        public void Run()
        {
            var tree         = Q4_02_CreateMinimalBSTfromSortedUniqueArray.Create(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
            var listOfDepths = ListOfDepths(tree);

            BTreePrinter.PrintNode(tree);
            foreach (var list in listOfDepths)
            {
                foreach (var sbList in list)
                {
                    Console.Write($"{sbList.Data},");
                }
                Console.WriteLine();
            }
        }
示例#6
0
        public void Run()
        {
            var root          = Q4_02_CreateMinimalBSTfromSortedUniqueArray.Create(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
            var node          = root.Find(6);
            var successorNode = node.Successor();

            Console.WriteLine($"Successor node of {node.Data} is { successorNode.Data}");

            node          = root.Find(1);
            successorNode = node.Successor();
            Console.WriteLine($"Successor node of {node.Data} is { successorNode.Data}");

            node          = root.Find(7);
            successorNode = node.Successor();
            Console.WriteLine($"Successor node of {node.Data} is { successorNode.Data}");
        }
示例#7
0
        public override void Run()
        {
            var root = Q4_02_CreateMinimalBSTfromSortedUniqueArray.Create(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
            var p    = root.Find(1);
            var q    = root.Find(3);
            var lca  = root.LowestCommonAncestor(p, q);

            Console.WriteLine($"LCA for {p.Data},{q.Data} is {lca.Data}"); // 2

            p   = root.Find(4);
            q   = root.Find(7);
            lca = root.LowestCommonAncestor(p, q);
            Console.WriteLine($"LCA for {p.Data},{q.Data} is {lca.Data}"); // 5

            p   = root.Find(7);
            q   = root.Find(9);
            lca = root.LowestCommonAncestor(p, q);
            Console.WriteLine($"LCA for {p.Data},{q.Data} is {lca.Data}"); // 8
        }