public void AddRangeTest() { int[] data = new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; var list = new ConceptualSinglyLinkedList<int>(0); list.AddRange(data); Assert.AreEqual(data[2], list.Next.Next.Payload); }
public void FindLastNthNodeTest() { int[] data = new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; var list = new ConceptualSinglyLinkedList<int>(0); list.AddRange(data); var loopingNode = list.FindLastNthNode(8); Assert.AreEqual(list.Next, loopingNode); }
public void FindLoopingNodeTest() { int[] data = new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; var list = new ConceptualSinglyLinkedList<int>(0); list.AddRange(data); var last = list as ISinglyLinkedList<int>; while (last.Next != null) { last = last.Next; } last.Next = list.Next; var loopingNode = list.FindLoopNode(); Assert.AreEqual(list.Next, loopingNode); }
public void ReverseTest() { int[] data = new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; var list = new ConceptualSinglyLinkedList<int>(int.MinValue); list.AddRange(data); list.Reverse(); var p = list as ISinglyLinkedList<int>; int i = 0; while(p.Next != null) { Assert.AreEqual(data[data.Length - i - 1], p.Payload); p = p.Next; i++; } }