private void Button1_Click(object sender, EventArgs e) { // load a tree with random numbers BTree root = null; BTree node; Random random = new Random(); this.richTextBox1.Clear(); for (int i = 0; i < 10; ++i) { node = new BTree(random.Next(100), root); if (i == 0) { root = node; } } this.richTextBox1.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Button2_Click(object sender, EventArgs e) { // load a tree in data-ascending order, // which will cause it to be unbalanced and poor-performing BTree root = null; BTree node; this.richTextBox1.Clear(); for (int i = 0; i < 10; ++i) { //BTree node = new BTree(random.Next(100), root); node = new BTree(i, root); if (i == 0) { root = node; } } this.richTextBox1.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Exercise6__Click(object sender, EventArgs e) { // Exercise #6 // there are operator overloads to compare 2 BTree objects for BTree.data being string or int // enhance the overloads to support the Person object and compare using Person.age using: // if (a.data.GetType() == typeof(Person)) // create at least 15 new Person objects which correspond to members of your family // insert them into the tree starting with yourself this.richTextBox.Clear(); BTree node = null; BTree root = null; // the Person class is defined below Person person = null; // Your code here this.richTextBox.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Button6_Click(object sender, EventArgs e) { // Exercise #3 // insert 15 random uppercase strings this.richTextBox1.Clear(); BTree node = null; BTree root = null; node = new BTree("BURN", root, false); node = new BTree("TRIPLE", root, false); node = new BTree("MIST", root, false); node = new BTree("TWILIGHT", root, false); node = new BTree("MOON", root, false); node = new BTree("AXE", root, false); node = new BTree("GOBLIN", root, false); node = new BTree("ICE", root, false); node = new BTree("DARK", root, false); node = new BTree("FOG", root, false); node = new BTree("ROOT", root, false); node = new BTree("MAGMA", root, false); node = new BTree("GEARS", root, false); node = new BTree("SPRING", root, false); node = new BTree("KNIFE", root, false); this.richTextBox1.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Button4_Click(object sender, EventArgs e) { // Exercise #1 // insert 30 random numbers between 1 and 51 this.richTextBox1.Clear(); BTree node = null; BTree root = null; Random random = new Random(); for (int i = 0; i < 10; ++i) { node = new BTree(random.Next(1, 52), root, false); if (i == 0) { root = node; } } this.richTextBox1.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Exercise2__Click(object sender, EventArgs e) { // Exercise #2 // prime the tree for numbers between 1 and 51 // with 7 optimally distributed data points (setting isData = false) // then insert 30 random numbers between 1 and 51 BTree root = null; BTree node; Random random = new Random(); this.richTextBox.Clear(); // Your code here this.richTextBox.Clear(); node = new BTree(26, null); root = node; //insert 30 numbers b/w 1 and 51 for (int i = 0; i < 30; ++i) { node = new BTree(random.Next(1, 52), root); } this.richTextBox.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Exercise1__Click(object sender, EventArgs e) { // Exercise #1 // insert 30 random numbers between 1 and 51 BTree root = null; BTree node; Random random = new Random(); this.richTextBox.Clear(); // Your code here //clear the textbox this.richTextBox.Clear(); //loop 30 times to insert rand numbers for (int i = 0; i < 30; ++i) { //node is a random number node = new BTree(random.Next(1, 51), root); //if first node, then that is the root node if (i == 0) { root = node; } } this.richTextBox.Text += "\n"; //print the tree ascending BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Button3_Click(object sender, EventArgs e) { // Prime a tree to hold alphabetical information this.richTextBox1.Clear(); BTree node = null; BTree root = null; node = new BTree("M", null); root = node; node = new BTree("F", root, false); node = new BTree("C", root, false); node = new BTree("B", root, false); node = new BTree("A", root, false); node = new BTree("E", root, false); node = new BTree("D", root, false); node = new BTree("J", root, false); node = new BTree("I", root, false); node = new BTree("H", root, false); node = new BTree("G", root, false); node = new BTree("L", root, false); node = new BTree("K", root, false); node = new BTree("P", root, false); node = new BTree("O", root, false); node = new BTree("N", root, false); node = new BTree("T", root, false); node = new BTree("S", root, false); node = new BTree("R", root, false); node = new BTree("Q", root, false); node = new BTree("W", root, false); node = new BTree("V", root, false); node = new BTree("U", root, false); node = new BTree("X", root, false); node = new BTree("Y", root, false); node = new BTree("Z", root, false); this.richTextBox1.Text += "\n"; BTree.TraverseAscending(root); this.richTextBox1.Text += "\n"; BTree.TraverseDescending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Button8_Click(object sender, EventArgs e) { // Exercise #5 // use the code in Button3_Click to add the 26 letters to the tree // then remove nodes "C", "I" and "A" // using this code to remove each node: // // create new freestanding node for "C" // nodeToDelete = new BTree("C", null); // BTree.DeleteNode(nodeToDelete, root); // add the newline and call BTree.TraverseAscending() after each delete this.richTextBox1.Clear(); BTree node = null; BTree nodeToDelete = null; BTree root = null; Button3_Click(sender, e); nodeToDelete = new BTree("C", null); BTree.DeleteNode(nodeToDelete, root); BTree.TraverseAscending(node); nodeToDelete = new BTree("I", null); BTree.DeleteNode(nodeToDelete, root); BTree.TraverseAscending(node); nodeToDelete = new BTree("A", null); BTree.DeleteNode(nodeToDelete, root); BTree.TraverseAscending(node); this.richTextBox1.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Button5_Click(object sender, EventArgs e) { // Exercise #2 // prime the tree for numbers between 1 and 51 // with 7 optimally distributed data points setting isData = false // then insert 30 random numbers between 1 and 51 this.richTextBox1.Clear(); BTree node = null; BTree root = null; node = new BTree(26, root, false); node = new BTree(19, root, false); node = new BTree(13, root, false); node = new BTree(7, root, false); node = new BTree(32, root, false); node = new BTree(38, root, false); node = new BTree(45, root, false); Random random = new Random(); for (int i = 0; i < 30; ++i) { node = new BTree(random.Next(1, 52), root, false); if (i == 0) { root = node; } } this.richTextBox1.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Exercise7__Click(object sender, EventArgs e) { // Exercise #7 // given the age range of people in Exercise #6, // prime the tree with nodes containing Person objects (set isData = false for the seed nodes) // containing the optimal ages to balance the tree this.richTextBox.Clear(); BTree node = null; BTree root = null; // the Person class is defined below Person person = null; // Your code here this.richTextBox.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Button7_Click(object sender, EventArgs e) { // Exercise #4 // prime the tree using the code in Button3_Click() // then insert the 15 random uppercase strings from Exercise #3 this.richTextBox1.Clear(); BTree node = null; BTree root = null; Button3_Click(sender, e); Button4_Click(sender, e); //or you could brute force it and copy all of the node = new BTree-s but I dont think anyone wants that. this.richTextBox1.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Exercise3__Click(object sender, EventArgs e) { // Exercise #3 // insert 15 random uppercase strings BTree root = null; BTree node; Random random = new Random(); this.richTextBox.Clear(); // Your code here string[] chars = new string[26] { "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" }; for (int i = 0; i < 15; ++i) { int num = random.Next(1, 26); string randChar = chars[num]; //insert random strings node = new BTree(randChar, root); if (i == 0) { root = node; } } this.richTextBox.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Button5_Click(object sender, EventArgs e) { // Exercise #2 // add numbers from the test this.richTextBox1.Clear(); BTree node = null; BTree root = null; root = new BTree(1, root, true); node = new BTree(5, root, true); node = new BTree(15, root, true); node = new BTree(20, root, true); node = new BTree(21, root, true); node = new BTree(22, root, true); node = new BTree(23, root, true); node = new BTree(24, root, true); node = new BTree(25, root, true); node = new BTree(30, root, true); node = new BTree(35, root, true); node = new BTree(37, root, true); node = new BTree(40, root, true); node = new BTree(55, root, true); node = new BTree(60, root, true); List <int> list = new List <int>(); this.richTextBox1.Text += "\n"; BTree.TraverseAscending(root); this.richTextBox1.Clear(); node = null; root = null; list = TraverseAscendingII(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); //this will only work if the numbers are put into the list in the order they are on the test. //but since the visualizer isnt working, I can't really check root = new BTree(list[9], root, true); node = new BTree(list[3], root, true); node = new BTree(list[11], root, true); node = new BTree(list[1], root, true); node = new BTree(list[5], root, true); node = new BTree(list[9], root, true); node = new BTree(list[13], root, true); node = new BTree(list[0], root, true); node = new BTree(list[2], root, true); node = new BTree(list[4], root, true); node = new BTree(list[6], root, true); node = new BTree(list[8], root, true); node = new BTree(list[10], root, true); node = new BTree(list[12], root, true); node = new BTree(list[14], root, true); //do whatever with the visualizer visualizeBinaryTree = new VisualizeBinaryTree(root); BTree.TraverseAscending(root); }
private void Exercise5__Click(object sender, EventArgs e) { // Exercise #5 // use the code in Button3_Click to add the 26 letters to the tree // then remove nodes "C", "I" and "A" // using this code to remove each node: // // create new freestanding node for "C" // nodeToDelete = new BTree("C", null); // BTree.DeleteNode(nodeToDelete, root); // add the newline and call BTree.TraverseAscending() after each delete this.richTextBox.Clear(); BTree node = null; BTree nodeToDelete = null; BTree root = null; // Your code here //add 26 letters to tree node = new BTree("M", null); root = node; node = new BTree("F", root); node = new BTree("C", root); node = new BTree("B", root); node = new BTree("A", root); node = new BTree("E", root); node = new BTree("D", root); node = new BTree("J", root); node = new BTree("I", root); node = new BTree("H", root); node = new BTree("G", root); node = new BTree("L", root); node = new BTree("K", root); node = new BTree("P", root); node = new BTree("O", root); node = new BTree("N", root); node = new BTree("T", root); node = new BTree("S", root); node = new BTree("R", root); node = new BTree("Q", root); node = new BTree("W", root); node = new BTree("V", root); node = new BTree("U", root); node = new BTree("X", root); node = new BTree("Y", root); node = new BTree("Z", root); //remove C, I, and A nodeToDelete = new BTree("C", null); BTree.DeleteNode(nodeToDelete, root); //new line and traverse ascending this.richTextBox.Text += "\n"; BTree.TraverseAscending(root); //delete i nodeToDelete = new BTree("I", null); BTree.DeleteNode(nodeToDelete, root); //new line and traverse ascending this.richTextBox.Text += "\n"; BTree.TraverseAscending(root); //delete a nodeToDelete = new BTree("A", null); BTree.DeleteNode(nodeToDelete, root); //new line and traverse ascending this.richTextBox.Text += "\n"; BTree.TraverseAscending(root); this.richTextBox.Text += "\n"; BTree.TraverseAscending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }
private void Exercise4__Click(object sender, EventArgs e) { // Exercise #4 // prime the tree using the code in Button3_Click() // then insert the 15 random uppercase strings from Exercise #3 this.richTextBox.Clear(); BTree node = null; BTree root = null; // Your code here //code from button 3 node = new BTree("M", null); root = node; Random random = new Random(); node = new BTree("F", root); node = new BTree("C", root); node = new BTree("B", root); node = new BTree("A", root); node = new BTree("E", root); node = new BTree("D", root); node = new BTree("J", root); node = new BTree("I", root); node = new BTree("H", root); node = new BTree("G", root); node = new BTree("L", root); node = new BTree("K", root); node = new BTree("P", root); node = new BTree("O", root); node = new BTree("N", root); node = new BTree("T", root); node = new BTree("S", root); node = new BTree("R", root); node = new BTree("Q", root); node = new BTree("W", root); node = new BTree("V", root); node = new BTree("U", root); node = new BTree("X", root); node = new BTree("Y", root); node = new BTree("Z", root); //insert 15 random strings node = new BTree("Hi", root); node = new BTree("Cake", root); node = new BTree("My name is Victoria", root); node = new BTree("Spongebob squarepants", root); node = new BTree("pinapple", root); node = new BTree("Victoria", root); node = new BTree("Umbrella", root); node = new BTree("Cats are cool", root); node = new BTree("yellow", root); node = new BTree("Zebras have stripes", root); node = new BTree("I need coffee", root); node = new BTree("Suit and tie", root); node = new BTree("Rainbow", root); node = new BTree("Yo-yo", root); node = new BTree("Roots of a tree", root); //insert 30 numbers b/w 1 and 51 for (int i = 0; i < 30; i++) { //numbers between 1 and 51 node = new BTree(random.Next(1, 51), root); } this.richTextBox.Text += "\n"; BTree.TraverseAscending(root); this.richTextBox.Text += "\n"; BTree.TraverseDescending(root); VisualizeBinaryTree visualizeBinaryTree = new VisualizeBinaryTree(root); }