public void SumStraight(int[] first, int[] second, int[] expected) { var solution = new SumLists(); var firstLinkedList = LinkedListHelper.FromCollection(first); var secondLinkedList = LinkedListHelper.FromCollection(second); var actual = solution.SumStraight(firstLinkedList, secondLinkedList); Assert.Equal(expected, LinkedListHelper.ToList(actual)); }
public void SumListsInForwardOrderTest_TwoListsWithSameLength() { var head1 = new Node(9).AppendToTail(7).AppendToTail(8); var head2 = new Node(6).AppendToTail(8).AppendToTail(5); var result = SumLists.SumListsInForwardOrder(head1, head2); var resultString = ""; while (result != null) { resultString += result.Data; resultString += "-"; result = result.Next; } resultString.TrimEnd('-').Should().Be("1-6-6-3"); }
public void SumListsInReverseOrderTest_AdditionalCarrier_2() { var head1 = new Node(1); var head2 = new Node(9).AppendToTail(9).AppendToTail(9); var result = SumLists.SumListsInReverseOrder(head1, head2); var resultString = ""; while (result != null) { resultString += result.Data; resultString += "-"; result = result.Next; } resultString.TrimEnd('-').Should().Be("0-0-0-1"); }
public void SumListsInReverseOrderTest_TwoListsWithDifferentLength() { var head1 = new Node(7).AppendToTail(1).AppendToTail(6).AppendToTail(3).AppendToTail(1).AppendToTail(9); var head2 = new Node(5).AppendToTail(9).AppendToTail(2); var result = SumLists.SumListsInReverseOrder(head1, head2); var resultString = ""; while (result != null) { resultString += result.Data; resultString += "-"; result = result.Next; } resultString.TrimEnd('-').Should().Be("2-1-9-3-1-9"); }
public void SumListsInForwardOrderTest_AdditionalCarrier() { var head1 = new Node(7).AppendToTail(1).AppendToTail(7); var head2 = new Node(5).AppendToTail(9).AppendToTail(2); var result = SumLists.SumListsInForwardOrder(head1, head2); var resultString = ""; while (result != null) { resultString += result.Data; resultString += "-"; result = result.Next; } resultString.TrimEnd('-').Should().Be("1-3-0-9"); }
public void TestSumListsOptimized() { int[] l1 = new int[] { 6, 1, 7 }; int[] l2 = new int[] { 2, 9, 5 }; int[] expected = new int[] { 9, 1, 2 }; LinkedListNode l1List = LinkedListNode.BuildList(l1); LinkedListNode l2List = LinkedListNode.BuildList(l2); LinkedListNode expectedList = LinkedListNode.BuildList(expected); LinkedListNode result = SumLists.AddListsOptimize(l1List, l2List); while (result != null && expectedList != null) { Assert.Equal(expectedList.data, result.data); result = result.next; expectedList = expectedList.next; } }
public void Sum_Two_Lists_617_And_295_Is_912() { var first = new MyLinkedList <int>(7); first.Append(1); first.Append(6); var second = new MyLinkedList <int>(5); second.Append(9); second.Append(2); var result = new SumLists().FirstTry(first, second); Assert.Equal(2, result.Value); Assert.Equal(1, result.Next.Value); Assert.Equal(9, result.Next.Next.Value); Assert.Null(result.Next.Next.Next); }
public void tSumLists() { MyLinkedList<char> list1 = new MyLinkedList<char>(); MyLinkedList<char> list2 = new MyLinkedList<char>(); MyLinkedList<char> success = new MyLinkedList<char>(); list1.AddNode('7'); list1.AddNode('1'); list1.AddNode('6'); list2.AddNode('5'); list2.AddNode('9'); list2.AddNode('2'); success.AddNode('2'); success.AddNode('1'); success.AddNode('9'); Assert.IsTrue(SumLists.Sum(list1, list2).CompareList(success)); }
public void Sum_Two_Lists_999_And_999_Is_1998() { var first = new MyLinkedList <int>(9); first.Append(9); first.Append(9); var second = new MyLinkedList <int>(9); second.Append(9); second.Append(9); var result = new SumLists().FirstTry(first, second); Assert.Equal(8, result.Value); Assert.Equal(9, result.Next.Value); Assert.Equal(9, result.Next.Next.Value); Assert.Equal(1, result.Next.Next.Next.Value); Assert.Null(result.Next.Next.Next.Next); }
public void TestSumLists() { int[] l1 = new int[] { 7, 1, 6 }; int[] l2 = new int[] { 5, 9, 2 }; int[] expected = new int[] { 2, 1, 9 }; LinkedListNode l1List = LinkedListNode.BuildList(l1); LinkedListNode l2List = LinkedListNode.BuildList(l2); LinkedListNode expectedList = LinkedListNode.BuildList(expected); LinkedListNode result = SumLists.AddLists(l1List, l2List, 0); while (result != null && expectedList != null) { Assert.Equal(expectedList.data, result.data); result = result.next; expectedList = expectedList.next; } }
public void SumListsFollowUpTest(string a, string b, string sum) { Assert.Equal(sum, SumLists.SumForward(Node <int> .FromString(a), Node <int> .FromString(b)).ToLinkedListString()); }