我们有一个大小为m + n的数组,其中m个元素按排序顺序存在,第二个数组大小为n,同样按排序顺序排列.我们希望它们都被排序并存在于第一个数组中.不应该给出第三个数组.
例:
1, 3, 55, 66, 77, _, _, _
5, 9, 20
Run Code Online (Sandbox Code Playgroud)
答案是:
1, 3, 5, 9, 20, 55, 66, 77
Run Code Online (Sandbox Code Playgroud)
小智 29
进行常规的合并排序,但反过来比较最大的数字,存储(反向)到第一个数组的末尾.这样,您正在合并的元素永远不会被覆盖(如果您暂时考虑它,这很容易看到).