public void MergeTwoSortedArraysTest(int[] a, int[] b) { var aLength = a.Length - b.Length; var expected = new List <int>(); var i = 0; var j = 0; while (i < aLength && j < b.Length) { if (a[i] < b[j]) { expected.Add(a[i]); i++; } else { expected.Add(b[j]); j++; } } while (i < aLength) { expected.Add(a[i]); i++; } while (j < b.Length) { expected.Add(b[j]); j++; } MergeTwoSortedArrays.Merge(a, aLength, b, b.Length); Common.AssertIsSorted(a); Common.AssertEqual(expected.ToArray(), a); }
public void TwoSortedArraysShouldMergeCorrectly_Testcase_1() { // Arrange var arrayOne = new int[] { 3, 8, 15, 56, 98 }; var arrayTwo = new int[] { 14, 34, 67, 70, 89 }; // Act var sortedArray = MergeTwoSortedArrays.Merge(arrayOne, arrayTwo); // Assert CollectionAssert.AreEqual(new int[] { 3, 8, 14, 15, 34, 56, 67, 70, 89, 98 }, sortedArray); }
public void TwoSortedArraysShouldMergeCorrectly_Testcase_3() { // Arrange var arrayOne = new int[] { 10, 25, 36, 43, 52, 74, 104 }; var arrayTwo = new int[] { 5, 15, 28, 37, 49, 56, 89, 109 }; // Act var sortedArray = MergeTwoSortedArrays.Merge(arrayOne, arrayTwo); // Assert CollectionAssert.AreEqual(new int[] { 5, 10, 15, 25, 28, 36, 37, 43, 49, 52, 56, 74, 89, 104, 109 }, sortedArray); }
public void TwoSortedArraysShouldMergeCorrectly_Testcase_2() { // Arrange var arrayOne = new int[] { 1, 5, 19, 25, 33, 47 }; var arrayTwo = new int[] { 6, 12, 29, 40, 57 }; // Act var sortedArray = MergeTwoSortedArrays.Merge(arrayOne, arrayTwo); // Assert CollectionAssert.AreEqual(new int[] { 1, 5, 6, 12, 19, 25, 29, 33, 40, 47, 57 }, sortedArray); }
[InlineData(new[] { 3, 3, 3, 3, 3 }, new[] { 3, 3, 3, 3, 3 }, new[] { 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 })] //, TestName = "arrays of 3" public void Should_merge_two_sorted_arrays_and_return_a_sorted_array(int[] arr1, int[] arr2, int[] expected) { Assert.Equal(expected, MergeTwoSortedArrays.MergeInOrder(arr1, arr2)); }
public void Merge(int[] nums1, int m, int[] nums2, int n) { var merge = new MergeTwoSortedArrays(nums1, nums2, m, n); merge.MergeTwoArraysWithTwoPointers(); }