Ejemplo n.º 1
0
        public void MiddleNodeTest_1()
        {
            var solution = new _0876_MiddleOfTheLinkedList();
            var result   = solution.MiddleNode(TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 }));

            AssertHelper.AssertLinkList(new int[] { 3, 4, 5 }, result);
        }
        public void ReverseReverseBetweenTest()
        {
            var solution = new _092_ReverseLinkedList2();
            var link     = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            AssertHelper.AssertLinkList(new int[] { 1, 4, 3, 2, 5 }, solution.ReverseBetween(link, 2, 4));
        }
        public void ReverseKGroupTest_KLargerThanLenght()
        {
            var input    = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });
            var solution = new _025_ReverseNodesInKGroup();

            var result = solution.ReverseKGroup(input, 6);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 3, 4, 5 }, result);
        }
        public void ReverseListTest()
        {
            var head = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            var solution = new _0206_ReverseLinkedList();
            var newHead  = solution.ReverseList(head);

            AssertHelper.AssertLinkList(new int[] { 5, 4, 3, 2, 1 }, newHead);
        }
Ejemplo n.º 5
0
        public void RemoveElements_1()
        {
            var head = TestHelper.GenerateList(new int[] { 1, 2, 6, 3, 4, 5, 6 });

            var solution = new _0203_RemoveLinkedListElements();
            var result   = solution.RemoveElements(head, 6);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 3, 4, 5 }, result);
        }
        public void OddEvenList_1()
        {
            var head = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            var solution = new _0328_OddEvenLinkedList();
            var result   = solution.OddEvenList(head);

            AssertHelper.AssertLinkList(new int[] { 1, 3, 5, 2, 4 }, result);
        }
Ejemplo n.º 7
0
        public void ReorderList_1()
        {
            var head = TestHelper.GenerateList(new int[] { 1, 2, 3, 4 });

            var solution = new _0143_ReorderList();

            solution.ReorderList(head);
            AssertHelper.AssertLinkList(new int[] { 1, 4, 2, 3 }, head);
        }
Ejemplo n.º 8
0
        public void SortList_1()
        {
            var head = TestHelper.GenerateList(new int[] { 4, 2, 1, 3 });

            var solution = new _0148_SortList();
            var result   = solution.SortList(head);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 3, 4 }, result);
        }
Ejemplo n.º 9
0
        public void DeleteNodes_1()
        {
            var head = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 });

            var solution = new _1474_DeleteNNodesAfterMNodesOfALinkedList();
            var result   = solution.DeleteNodes(head, 2, 3);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 6, 7, 11, 12 }, result);
        }
Ejemplo n.º 10
0
        public void DeleteNodeTest_1()
        {
            var list = TestHelper.GenerateList(new int[] { 4, 5, 1, 9 });

            var solution = new _0237_DeleteNodeInALinkedList();

            solution.DeleteNode(list.next);
            AssertHelper.AssertLinkList(new int[] { 4, 1, 9 }, list);
        }
Ejemplo n.º 11
0
        public void MergeTwoListsTest_List1Empty()
        {
            var list2 = TestHelper.GenerateList(new int[] { 2, 4, 6, 8, 10 });

            var solution = new _021_MergeTwoSortedLists();
            var result   = solution.MergeTwoLists(null, list2);

            AssertHelper.AssertLinkList(new int[] { 2, 4, 6, 8, 10 }, result);
        }
Ejemplo n.º 12
0
        public void MergeTwoListsTest_List2Empty()
        {
            var list1 = TestHelper.GenerateList(new int[] { 1, 3, 5, 7, 9 });

            var solution = new _021_MergeTwoSortedLists();
            var result   = solution.MergeTwoLists(list1, null);

            AssertHelper.AssertLinkList(new int[] { 1, 3, 5, 7, 9 }, result);
        }
Ejemplo n.º 13
0
        public void PartitionTest()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 4, 3, 2, 5, 2 });

            var solution = new _086_PartitionList();
            var result   = solution.Partition(input, 3);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 2, 4, 3, 5 }, result);
        }
        public void RemoveNthFromEndTest()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            var solution = new _019_RemoveNthNodeFromEndOfList();
            var result   = solution.RemoveNthFromEnd(input, 2);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 3, 5 }, result);
        }
        public void DeleteDuplicatesTest_WithoutDuplicate()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            var solution = new _082_RemoveDuplicatesFromSortedList2();
            var result   = solution.DeleteDuplicates(input);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 3, 4, 5 }, result);
        }
Ejemplo n.º 16
0
        public void PartitionTest_OneItem_GreaterThan()
        {
            var input = TestHelper.GenerateList(new int[] { 1 });

            var solution = new _086_PartitionList();
            var result   = solution.Partition(input, 0);

            AssertHelper.AssertLinkList(new int[] { 1 }, result);
        }
        public void SwapPairsTest()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 2, 3, 4 });

            var solution = new _024_SwapNodesInPairs();
            var result   = solution.SwapPairs(input);

            AssertHelper.AssertLinkList(new int[] { 2, 1, 4, 3 }, result);
        }
Ejemplo n.º 18
0
        public void SortList_2()
        {
            var head = TestHelper.GenerateList(new int[] { -1, 5, 3, 4, 0 });

            var solution = new _0148_SortList();
            var result   = solution.SortList(head);

            AssertHelper.AssertLinkList(new int[] { -1, 0, 3, 4, 5 }, result);
        }
        public void DeleteDuplicatesTest_AllTheSame()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 1, 1, 1, 1 });

            var solution = new _083_RemoveDuplicatesFromSortedList();
            var result   = solution.DeleteDuplicates(input);

            AssertHelper.AssertLinkList(new int[] { 1 }, result);
        }
        public void SwapPairsTest_OnlyOneNode()
        {
            var input = TestHelper.GenerateList(new int[] { 1 });

            var solution = new _024_SwapNodesInPairs();
            var result   = solution.SwapPairs(input);

            AssertHelper.AssertLinkList(new int[] { 1 }, result);
        }
Ejemplo n.º 21
0
        public void RotateRightTest_LargeK()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 2, 3 });

            var solution = new _061_RotateList();
            var result   = solution.RotateRight(input, 2000000000);

            AssertHelper.AssertLinkList(new int[] { 2, 3, 1 }, result);
        }
Ejemplo n.º 22
0
        public void RotateRightTest()
        {
            var input = TestHelper.GenerateList(new int[] { 1, 2, 3, 4, 5 });

            var solution = new _061_RotateList();
            var result   = solution.RotateRight(input, 3);

            AssertHelper.AssertLinkList(new int[] { 3, 4, 5, 1, 2 }, result);
        }
Ejemplo n.º 23
0
        public void RotateRightTest_OneItem()
        {
            var input = TestHelper.GenerateList(new int[] { 1 });

            var solution = new _061_RotateList();
            var result   = solution.RotateRight(input, 5);

            AssertHelper.AssertLinkList(new int[] { 1 }, result);
        }
Ejemplo n.º 24
0
        public void DeleteNodes_4()
        {
            var head = TestHelper.GenerateList(new int[] { 9, 3, 7, 7, 9, 10, 8, 2 });

            var solution = new _1474_DeleteNNodesAfterMNodesOfALinkedList();
            var result   = solution.DeleteNodes(head, 1, 2);

            AssertHelper.AssertLinkList(new int[] { 9, 7, 8 }, result);
        }
Ejemplo n.º 25
0
        public void AddTwoNumbersTest_General()
        {
            var link = TestHelper.GenerateList(new int[] { 2, 4, 3 });

            var solution = new _002_AddTwoNumbers();
            var result   = solution.AddTwoNumbers(link, link);

            AssertHelper.AssertLinkList(new int[] { 4, 8, 6 }, result);
        }
Ejemplo n.º 26
0
        public void MergeTwoListsTest()
        {
            var list1 = TestHelper.GenerateList(new int[] { 1, 3, 5, 7, 9 });
            var list2 = TestHelper.GenerateList(new int[] { 2, 4, 6, 8, 10 });

            var solution = new _021_MergeTwoSortedLists();
            var result   = solution.MergeTwoLists(list1, list2);

            AssertHelper.AssertLinkList(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }, result);
        }
        public void AddTwoNumbers_5()
        {
            var root1 = TestHelper.GenerateList(new int[] { 5 });
            var root2 = TestHelper.GenerateList(new int[] { 5 });

            var solution = new _0445_AddTwoNumbersII();
            var result   = solution.AddTwoNumbers(root1, root2);

            AssertHelper.AssertLinkList(new int[] { 1, 0 }, result);
        }
Ejemplo n.º 28
0
        public void AddTwoNumbersTest_L1Empty()
        {
            var link1 = TestHelper.GenerateList(null);
            var link2 = TestHelper.GenerateList(new int[] { 1, 8 });

            var solution = new _002_AddTwoNumbers();
            var result   = solution.AddTwoNumbers(link1, link2);

            AssertHelper.AssertLinkList(new int[] { 1, 8 }, result);
        }
        public void AddTwoNumbers_1()
        {
            var root1 = TestHelper.GenerateList(new int[] { 7, 2, 4, 3 });
            var root2 = TestHelper.GenerateList(new int[] { 5, 6, 4 });

            var solution = new _0445_AddTwoNumbersII();
            var result   = solution.AddTwoNumbers(root1, root2);

            AssertHelper.AssertLinkList(new int[] { 7, 8, 0, 7 }, result);
        }
Ejemplo n.º 30
0
        public void AddTwoNumbersTest_L1Longer()
        {
            var link1 = TestHelper.GenerateList(new int[] { 2, 4, 3, 1 });
            var link2 = TestHelper.GenerateList(new int[] { 5, 6, 4 });

            var solution = new _002_AddTwoNumbers();
            var result   = solution.AddTwoNumbers(link1, link2);

            AssertHelper.AssertLinkList(new int[] { 7, 0, 8, 1 }, result);
        }