Exemplo n.º 1
0
        static void Main(string[] args)
        {
            Console.WriteLine("Add ____________________________________\n");
            //Add
            RBTree tree = new RBTree();

            tree.Insert(2);
            tree.Insert(25);
            tree.DisplayTree();
            Console.WriteLine("Delete ____________________________________\n");
            ////Delete
            RBTree tree1 = new RBTree();

            //root
            tree1.Delete(8);
            tree1.DisplayTree();
            Console.WriteLine("  ");
            // node
            tree1.Delete(6);
            tree1.DisplayTree();
            Console.WriteLine("Methods ____________________________________\n");
            //Methods
            RBTree tree2 = new RBTree();

            tree2.DisplayTree();
            tree2.AllSubTreea();
            tree2.FindValue(10);
            tree2.FindValue(99);
            tree2.MaxValue();
            tree2.MinValue();
            Console.WriteLine("Tree root => {0}", tree2.treeRoot);
            Console.WriteLine("Tree height => {0}", tree2.height);
            Console.ReadLine();
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            RBTree <int, string> map = new RBTree <int, string>(CompINT);

            map.Add(1, "a");
            map.Add(3, "c");
            map.Add(4, "c");
            map.Add(2, "c");
            map.Delete(4);
            Console.WriteLine(map[8]);
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            RBTree <int, string> tree = new RBTree <int, string>(CompINT);

            tree.Add(1, "a");
            tree.Add(3, "c");
            tree.Add(4, "c");
            tree.Add(2, "c");
            tree.Delete(4);
            Console.WriteLine(tree[8]);
        }
Exemplo n.º 4
0
        //Постройте красно-черное дерево по заданным ключам
        //Реализуйте красно-черное дерево со следующими операциями:

        //создание дерева
        //добавление элемента
        //поиск элемента в дереве
        //14. Vector(53, 38, 65, 98, 38, 76, 4, 28, 14, 33, 25, 21, 54, 58, 32, 25, 63, 63, 94, 1, 86)
        static void Main(string[] args)
        {
            int[] vector = new int[] { 53, 38, 65, 98, 38, 76, 4, 28, 14, 33, 25, 21, 54, 58, 32, 25, 63, 63, 94, 1, 86 };

            RBTree <int> tree   = new RBTree <int>(new Node <int>(vector[0]));
            Random       random = new Random();

            for (int i = 1; i < vector.Length; i++)
            {
                tree.Add(vector[i]).data = random.Next(10, 100);
            }

            Console.WriteLine("Item 54 has " + tree.Find(54, tree.root).data.ToString() + " value in data");
            Console.ReadLine();
        }
Exemplo n.º 5
0
        static void Main(string[] args)
        {
            RBTree <int> tree = new RBTree <int>();

            tree.Add(30);
            tree.Add(91);
            tree.Add(19);
            tree.Add(76);
            tree.Add(40);
            tree.Add(71);
            tree.Add(8);
            tree.Add(99);
            tree.Add(90);
            tree.Add(21);
        }
Exemplo n.º 6
0
        static void Main(string[] args)
        {
            RBTree rbt = new RBTree();

            for (int i = 0; i < 8; i++)
            {
                rbt.insertNode(ref rbt.root, i + 1);
            }

            rbt.printTree(rbt.root, 0, 0);

            for (int i = 0; i < 3; i++)
            {
                rbt.removeNode(ref rbt.root, i + 1);
            }
            Console.WriteLine();

            //rbt.printTree(rbt.root,0,0);
            //Console.WriteLine();

            /*
             * MyClass source = new MyClass();
             *
             * source.MyField1 = 10;
             * source.MyField2 = 20;
             *
             * MyClass target = source;
             *
             * target.MyField2 = 30;
             *
             * Console.WriteLine("{0} {1}", source.MyField1, source.MyField2);
             * Console.WriteLine("{0} {1}", target.MyField1, target.MyField2);*/
            /*
             * Derived dv = new Derived();
             * dv.BaseMethod();
             */
        }
Exemplo n.º 7
0
 internal RBTreeEnumerator(RBTree tree)
 {
     tree.VisitTreeNodes(item => heap.Enqueue(item));
 }