leetcode-007-合并两个有序数组
刷题之旅从数组类型的题目开始。第七道题目是合并两个有序数组,对应leetcode的题号为88。
题目描述
给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。
说明:
初始化 nums1 和 nums2 的元素数量分别为 m 和 n。
你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。
示例:
1 | 输入: |
解题思路
这道题目,其实就是归并排序的思想,简单说明就是:两个指针,分别指向两个有序数组的最后一位,两两比较,把大的一个拎出来,并且大的那个指针往前移动一格继续比较。比较到最后,必然有一个先到头,另一个没到头的指针,前面所有元素就是两个数组中最小的有序部分,直接挪到排序后数组的最前面就可以了。
提交代码
1 | class Solution { |