public void LLCanAdd(object value) { Node node1 = new Node(10); Node node2 = new Node(null); Node node3 = new Node("Dune"); Node node4 = new Node(value); LL LL = new LL(node1); LL.Add(node2); LL.Add(node3); LL.Add(node4); Assert.Equal(value, LL.Head.Value); }
public void Add_New_Node_With_No_Content() { // Arrange int data = 1; LL test_list = new LL(); // Act test_list.Add(data); }
public Graph() { var n0 = new Node(300, 300); var n1 = new Node("FFFF"); var n2 = new Node("7834"); var n3 = new Node("2834"); //var n0 = new Node(124); //Console.WriteLine("An element ID: {0}", n0.ID); //var n1 = new Node(254); //Console.WriteLine("An element ID: {0}", n1.ID); //var n2 = new Node(172); //Console.WriteLine("An element ID: {0}", n2.ID); //var n3 = new Node(94); //Console.WriteLine("An element ID: {0}", n3.ID); //var n4 = new Node(47); //Console.WriteLine("An element ID: {0}", n4.ID); ////var n5 = new Node(49); ////Console.WriteLine("An element ID: {0}", n5.ID); //var n5 = new Node(2); //Console.WriteLine("An element ID: {0}", n5.ID); VertexList.Add(n0); VertexList.Add(n1); VertexList.Add(n2); VertexList.Add(n3); //VertexList.Add(n4); //VertexList.Add(n5); //Console.WriteLine(); for (int i = 1; i < 51; i++) { var nn = new Node(i * 6 - 4); Console.WriteLine("An element ID: {0}", nn.ID); VertexList.Add(nn); } //Console.WriteLine(); //Generate(VertexList.Count, 2); //AddEdge(0, 3); //AddEdge(1, 3); //AddEdge(2, 3); //AddEdge(3, 4); //AddEdge(4, 2); //AddEdge(0, 1); //AddEdge(0, 5); for (int i = 0; i < EdgeList.Count; i++) { AdjacencyList.Add(EdgeList[i].v1); HL.Add(-1); } for (int i = EdgeList.Count - 1; i >= 0; i--) { AdjacencyList.Add(EdgeList[i].v2); } for (int k = 0; k < AdjacencyList.Count; k++) { int i = AdjacencyList[k]; LL.Add(HL[i]); HL[i] = k; } this.GraphWrite(); //Console.WriteLine("Обход списка рёбер вершины 2"); //int v = 2; //for(int k = HL[v]; k!=-1; k = LL[k]) //{ // int j = AdjacencyList[AdjacencyList.Count - 1-k]; // Console.WriteLine("{0} - {1}", v, j); //} //foreach (Node v in VertexList) //{ // Console.WriteLine("\n\n\nNode IP: {0}, Node ID: {1}", v.ip, v.ID); // v.WriteNeighboorhoodSet(); // int pref = v.ComparePrefixes(v.ID, VertexList[0].ID); // // Console.WriteLine("\nPrefixes ID1: {0}, ID2: {1}, {2}", v.ID, VertexList[0].ID, pref); // v.WriteLeafSet(); // v.WriteRoutingTable(); //} }
static void Main(string[] args) { bool running = true; LL MyLL = new LL(); while (running) { menuStrings(); string uChoice = Console.ReadLine(); tehList(uChoice); } void menuStrings() { Console.WriteLine("WELL DON'T JUST STAND THERE, CHOOSE SOMETHIN'\n"); Console.WriteLine("1: Show Head"); Console.WriteLine("2: Add item"); Console.WriteLine("3: Remove Item"); Console.WriteLine("4: Search for Item"); Console.WriteLine("5: Print"); Console.WriteLine("6: Exit"); } void tehList(string uChoice) { switch (uChoice) { case "1": //Get head if (MyLL.getFirst() == null) { Console.WriteLine("You've reached the Headless Horseman, cause there ain't no head here :(\n"); } else { Console.WriteLine(MyLL.getFirst().data); } break; case "2": // Adds items to front or back Console.WriteLine("What thingy mc doo da we addin SIR?"); string item = Console.ReadLine(); Console.WriteLine("We poppin' something on teh FRONT or nailin' it to teh BACK?\n F = FRONT & B = BACK"); string fORb = Console.ReadLine().ToUpper(); while (fORb != "F" && fORb != "B") { Console.WriteLine("THAT WAS NOT AN OPTION USER!\nTRY AGAIN!"); fORb = Console.ReadLine().ToUpper(); } //Adds front if (fORb == "F") { MyLL.addFirst(item); Console.WriteLine("We popped " + item + " on the front for ya\n"); } //Adds end else { MyLL.Add(item); Console.WriteLine("It's held up with glue and duct tape, but " + item + " is now on the end of the list\n"); } break; case "3": //Remove item Console.WriteLine("THE WRECKING CREW IS COMING TO KNOCK SOMETHIN' OFF TEH LIST, What'll it be sir?"); string delete = Console.ReadLine(); if (MyLL.Contains(delete) == null) { Console.WriteLine("The wrecking crew returns sad faced and empty handed as " + delete + " was not in the list\nNothing removed\n"); } else { MyLL.Remove(delete); Console.WriteLine("The wrecking crew returns with smiles as they have successfully demolished " + delete + " from teh list\n"); } break; case "4": //Contains item Console.WriteLine("Sherlock Holmes AT YOUR SERVICE. What be we searchin' for?"); string holmes = Console.ReadLine(); if (MyLL.Contains(holmes) == null) { Console.WriteLine("I declare this case unsolvable " + holmes + " IS NOT here\n"); } else { Console.WriteLine("I do say that " + holmes + " is indeed contained within!\n"); } break; case "5": //Print all Console.WriteLine(MyLL.Print()); break; case "6": //Exits Console.WriteLine("Goodbye :)"); int milisecs = 2000; //This is bad way to exit I'm pretty sure, but wanted something different than usual Thread.Sleep(milisecs); Environment.Exit(0); break; default: Console.WriteLine("Invalid Selection\n"); break; } } }