بکندباز

تابعی بنویسید که دو لیست را در یک لیست ادغام کند و لیست جدید را به همان ترتیبی که لیست اول مرتب شده بود، مرتب کند.

نمونه ورودی و خروجی

MergeSort([1, 2, 3], [5, 4, 6]) ➞ [1, 2, 3, 4, 5, 6]

MergeSort([8, 6, 4, 2], [-2, -6, 0, -4]) ➞ [8, 6, 4, 2, 0, -2, -4, -6]

MergeSort([120, 180, 200], [190, 175, 130]) ➞ [120, 130, 175, 180, 190, 200]

نکات

  • همیشه دو لیست به عنوان آرگومان به تابع داده می‌شود.
  • لیست اول همیشه مرتب‌شده است، چه به صورت صعودی (asc) و چه به صورت نزولی (desc)
Assert.Equal(new[] { 1, 2, 3, 4, 5, 6 }, Backendbaz.MergeSort(new[] { 1, 2, 3 }, new[] { 5, 4, 6 }));
Assert.Equal(new[] { -6, -4, -2, 2, 4, 6, 8 }, Backendbaz.MergeSort(new[] { 8, 6, 4, 2 }, new[] { -2, -6, 0, -4 }));
Assert.Equal(new[] { 120, 130, 175, 180, 190, 200 }, Backendbaz.MergeSort(new[] { 120, 180, 200 }, new[] { 190, 175, 130 }));
Assert.Equal(new[] { 25, 21, 17, 13 }, Backendbaz.MergeSort(new[] { 25, 21, 17, 13 }, new int[] { }));
Assert.Equal(new[] { 64, 128, 512, 1024, 2048 }, Backendbaz.MergeSort(new[] { 1024, 2048 }, new[] { 512, 128, 64 }));
Assert.Equal(new[] { -11, -5, -3, -1, 7, 11 }, Backendbaz.MergeSort(new[] { -1, -3 }, new[] { 11, -5, 7, -11 }));

هنوز پاسخی برای این تمرین ثبت نشده است

نظرات

*
*