Пример #1
0
        public void CanDeleteNodeWithOneList()
        {
            Tree tree = new Tree();

            tree.Add(20, tree.Root);

            tree.Add(15, tree.Root);
            tree.Add(30, tree.Root);
            tree.Add(10, tree.Root);
            tree.Add(50, tree.Root);
            tree.Add(16, tree.Root);
            tree.Add(49, tree.Root);
            tree.Add(18, tree.Root);
            tree.Add(38, tree.Root);
            tree.Add(11, tree.Root);
            //tree.Add(36, tree.Root);

            tree.Delete(30, tree.Root);
            Assert.AreEqual(false, tree.Search(30, tree.Root));
            tree.Delete(49, tree.Root);
            Assert.AreEqual(false, tree.Search(49, tree.Root));
            tree.Delete(10, tree.Root);
            Assert.AreEqual(false, tree.Search(10, tree.Root));
            tree.Delete(50, tree.Root);
            Assert.AreEqual(false, tree.Search(50, tree.Root));
        }
Пример #2
0
 private void button1_Click(object sender, EventArgs e)
 {
     if (checkedListBox1.SelectedIndex == 0)
     {
         while (main_tree.root != null)
         {
             main_tree.Delete(main_tree.root.Value);
         }
     }
     main_tree.AllDraw();
     NameTextBox.Text = "Очистка";
     textBox1.Text    = Logs.Text = "";
 }
Пример #3
0
        public void CanDeleteNodeFail()
        {
            Tree tree = new Tree();

            tree.Add(20, tree.Root);

            tree.Add(15, tree.Root);
            tree.Add(30, tree.Root);
            //    tree.Add(10, tree.Root);
            tree.Add(50, tree.Root);
            tree.Add(16, tree.Root);
            tree.Add(49, tree.Root);
            tree.Add(18, tree.Root);
            tree.Add(38, tree.Root);
            tree.Add(24, tree.Root);
            tree.Delete(37, tree.Root);
            // Assert.AreEqual(false, tree.Search(37, tree.Root));
        }
Пример #4
0
        public void CanDeleteLeftList()
        {
            Tree tree = new Tree();

            tree.Add(20, tree.Root);

            tree.Add(15, tree.Root);
            tree.Add(30, tree.Root);
            tree.Add(10, tree.Root);
            tree.Add(50, tree.Root);
            tree.Add(16, tree.Root);
            tree.Add(49, tree.Root);
            tree.Add(18, tree.Root);
            tree.Add(38, tree.Root);
            tree.Add(24, tree.Root);

            //   tree.Delete(24, tree.Root);
            tree.Delete(10, tree.Root);
            //  Assert.AreEqual(false, tree.Search(24, tree.Root));
            Assert.AreEqual(false, tree.Search(10, tree.Root));
        }
Пример #5
0
        static void Main(string[] args)
        {
            var tree = new Tree <double>(10.0f);

            Console.WriteLine(tree.Print());
            tree.AddLeft(5);
            Console.WriteLine(tree.Print());
            tree.AddRight(15);
            Console.WriteLine(tree.Print());
            tree.FindNode(new Tree <double>(5)).AddLeft(2);
            Console.WriteLine(tree.Print());
            tree.FindNode(new Tree <double>(5)).AddRight(7);
            Console.WriteLine(tree.Print());
            tree.Delete(new Tree <double>(7));
            Console.WriteLine(tree.Print());
            var a = tree.FindNode(new Tree <double>(2));

            Console.WriteLine(a.Print());



            Console.ReadKey();
        }
Пример #6
0
        static void Main(string[] args)
        {
            Tree tr = new Tree();
            tr.Add(12);
            tr.Add(45);
            tr.Add(10);
            tr.Add(25);
            tr.Add(75);
            tr.Add(39);
            tr.Add(11);
            tr.Add(2);
            tr.Add(5);
            tr.Add(1);// 11 штук
            tr.Add(22);
            tr.Add(42);
            tr.Add(40);
            tr.Add(43); // 15
            tr.Add(3);
            tr.Add(6);
            var tt = tr.Height();
            var v = tr.Size();
            tr.Delete(6);
            var vb = tr.Size();

         //  var bb = tr.Sort();
         //  var v = tr.Size();
            // подумать над тем что должно случиться если одиновый!!!!!!!!!!!!!!!!!!!!!!!

        //  var bb = tr.Find(10); // подумать как уменьшить количество возвращений. Подумать, что возвращать если такого нет значения
         //  var zz = tr.Size();
           //tr.Delete(12);
        //   var ss = tr.Height(); // разобраться!!!!!!!!!!!!
          // var vv = tr.NodeSize(tr.Left);
           //var vv1 = tr.Width();
          // var nn = tr.Sort();
        }
        public static void Main(String[] args)
        {
            int  value;
            Tree theTree = new Tree();

            theTree.Insert(50, 1.5);
            theTree.Insert(25, 1.2);
            theTree.Insert(75, 1.7);
            theTree.Insert(12, 1.5);
            theTree.Insert(37, 1.2);
            theTree.Insert(43, 1.7);
            theTree.Insert(30, 1.5);
            theTree.Insert(33, 1.2);
            theTree.Insert(87, 1.7);
            theTree.Insert(93, 1.5);
            theTree.Insert(97, 1.5);

            while (true)
            {
                Console.Write("Enter first letter of show, ");
                Console.Write("insert, find, delete, or traverse: ");
                int choice = GetChar();
                switch (choice)
                {
                case 's':
                    theTree.DisplayTree();
                    break;

                case 'i':
                    Console.Write("Enter value to insert: ");
                    value = GetInt();
                    theTree.Insert(value, value + 0.9);
                    break;

                case 'f':
                    Console.Write("Enter value to find: ");
                    value = GetInt();
                    Node found = theTree.Find(value);
                    if (found != null)
                    {
                        Console.Write("Found: ");
                        found.DisplayNode();
                        Console.Write("\n");
                    }
                    else
                    {
                        Console.Write("Could not find");
                        Console.Write(value + '\n');
                    }
                    break;

                case 'd':
                    Console.Write("Enter value to delete: ");
                    value = GetInt();
                    bool didDelete = theTree.Delete(value);
                    if (didDelete)
                    {
                        Console.Write("Deleted " + value + '\n');
                    }
                    else
                    {
                        Console.Write("Could not delete ");
                        Console.Write(value + '\n');
                    }
                    break;

                case 't':
                    Console.Write("Enter type 1, 2 or 3: ");
                    value = GetInt();
                    theTree.Traverse(value);
                    break;

                default:
                    Console.Write("Invalid Entry\n");
                    break;
                } //end switch
            }     //end while
        }         //end main()
Пример #8
0
        static void Main()
        {
            Tree tr = new Tree();

            if (tr.Insert(43))
            {
                Console.WriteLine("43 вставлено успешно!");
            }
            else
            {
                Console.WriteLine("43 не удалось вставить!");
            }
            if (tr.Insert(143))
            {
                Console.WriteLine("143 вставлено успешно!");
            }
            else
            {
                Console.WriteLine("143 не удалось вставить!");
            }
            if (tr.Insert(42))
            {
                Console.WriteLine("42 вставлено успешно!");
            }
            else
            {
                Console.WriteLine("42 не удалось вставить!");
            }
            if (tr.Insert(43))
            {
                Console.WriteLine("43 вставлено успешно!");
            }
            else
            {
                Console.WriteLine("43 не удалось вставить!");
            }
            if (tr.Insert(45))
            {
                Console.WriteLine("45 вставлено успешно!");
            }
            else
            {
                Console.WriteLine("45 не удалось вставить!");
            }

            if (tr.Delete(45))
            {
                Console.WriteLine("45 удалено успешно!");
            }
            else
            {
                Console.WriteLine("45 не удалось удалить!");
            }
            if (tr.Delete(145))
            {
                Console.WriteLine("145 удалено успешно!");
            }
            else
            {
                Console.WriteLine("145 не удалось удалить!");
            }
            if (tr.Delete(43))
            {
                Console.WriteLine("43 удалено успешно!");
            }
            else
            {
                Console.WriteLine("43 не удалось удалить!");
            }
            if (tr.Delete(43))
            {
                Console.WriteLine("43 удалено успешно!");
            }
            else
            {
                Console.WriteLine("43 не удалось удалить!");
            }
        }