88. 合并两个有序数组
给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 num1 成为一个有序数组。
说明:
- 初始化
nums1和nums2的元素数量分别为 m 和 n 。 - 你可以假设
nums1有足够的空间(空间大小大于或等于 m + n)来保存nums2中的元素。
示例:
| |
思路
从nums1的最后一个位置(i=len(nums1)-1)开始依次填入两个数组中最大的;
因为两个数组都是有序的,所以只需要从最后的位置比较即可;
nums1与nums2比较下标为m-1和n-1,将两者中较大的移到nums1的尾部;
将取出数字的数组下标(m或者n)和i都往前移动一步,直到nums2取完.
若nums1的m<0,则只需要将nums2的剩余数字依次填充到i下标即可
代码
| |