LintCode 合併兩個排序好的陣列

2021-08-14 23:11:23 字數 438 閱讀 1121

題目:合併兩個排序好的陣列,要求新陣列也是有序的

分析:假設兩個陣列為a和b,新陣列為c。a和b的元素比較,小的放在c中,並且指標+1。臨界條件很重要:假設a的指標越界(退出迴圈的條件),那麼b的指標肯定沒有越界(為什麼?看**),並且b未比較的元素一定比a所有元素大(a指標都越界了,說明a最後乙個元素進入新陣列了,說明這個元素比b某個元素小),所以直接將b剩下的元素新增到c中。

**:

public class solution  else 

i++;

}// 此時,一定有某個陣列的數全部比較完了,一定有乙個陣列還有數沒比較,並且這些數比

// 另乙個陣列大

while (a < a.length)

while (b < b.length)

return result;

}}

合併兩個排序鍊錶 LintCode

描述 將兩個排序鍊錶合併為乙個新的排序鍊錶。樣例 給出1 3 8 11 15 null,2 null,返回1 2 3 8 11 15 null。思路 這道題其實跟上一道鍊錶的插入排序是親兄弟啊,在鍊錶的插入排序裡面我們自己建立了新的鍊錶dummy用來存放我們的排好序的鍊錶,這道題裡給出的兩條鍊錶都是...

LintCode 合併兩個排序鍊錶

將兩個排序鍊錶合併為乙個新的排序鍊錶 樣例給出 1 3 8 11 15 null,2 null,返回 1 2 3 8 11 15 null。definition for listnode.public class listnode 如果兩個鍊錶任一為空,則返回另乙個。如果都為空,直接返回空。定義乙個...

LintCode 165合併兩個排序鍊錶

題目鏈結 將兩個排序鍊錶合併為乙個新的排序鍊錶 樣例給出1 3 8 11 15 null,2 null,返回1 2 3 8 11 15 null。空間複雜度o 1 時間複雜度o m n m n分別為鍊錶l1和鍊錶l2的長度 definition of listnode class listnode ...