题目描述
思路
两个数组合并,最后的结果是要扩容。通常有两个方向考虑,一个是借助第三方数组(容器),另一个是在数组自身扩容。根据题目意思,优先选择自身扩容
暴力解法:把nums2的有效部分覆盖掉nums1的无效部分,然后对nums1进行原地排序。
双指针:根据当前指针位置的和与目标值的大小关系来调整指针位置,最终找到符合条件的数字。从尾部开始合并,这样可以避免数组元素的重复移动或使用额外空间,从而优化空间复杂度。
解题方法
- 设置指针变量:index1,index2分别指向nums1、nums2的尾部,循环比较nums1与nums2的元素大小,大的放在nums1后面