Leetcode:merge_sorted_array
LeetCode Array Merge sorted
2023-09-27 14:25:17 时间
一、 题目
将给定的两个排好序的数组合并成一个有序数组。
二、 分析
看到题目后感觉非常easy。就是比較两个数组中的元素嘛,可是刚開始发现假设合并到A[]中从前到后的话可能会导致原数据该,如何才干避免这样的错误呢?于是想到了逆向合并,从后往前填入数组。
class Solution { public: void merge(int A[], int m, int B[], int n) { int length=m+n-1; m--; n--; for(int i=length;i>=0;i--){ if (m == -1 || (n != -1 && A[m] <= B[n])) { A[i] = B[n--]; } else { A[i] = A[m--]; } } } }; class Solution { public: void merge(int A[], int m, int B[], int n) { int length=m+n-1; int i=m-1; int j=n-1; while (i >= 0 && j >= 0) A[length--] = A[i] > B[j] ? A[i--] : B[j--] ; while (i >= 0) A[length--] = A[i--] ; while (j >= 0) A[length--] = B[j--] ; } };
相关文章
- LeetCode:453. Minimum Moves to Equal Array Elements
- Leetcode:Singel Number
- LeetCode_Unique Binary Search Trees II
- LeetCode_二分搜索_中等_240.搜索二维矩阵 II
- LeetCode_回溯_中等_78.子集
- LeetCode·1637. 两点之间不包含任何点的最宽垂直区域·模拟
- leetcode - Search in Rotated Sorted Array II
- 【LeetCode从零单排】No189.Rotate Array
- 【LeetCode从零单排】No88.Merge Sorted Array
- C++刷leetcode几点注意事项
- [LeetCode] 656. Coin Path 硬币路径
- [LeetCode] 38. Count and Say 计数和读法
- [LeetCode] 284. Peeking Iterator 瞥一眼迭代器
- [LeetCode] 189. Rotate Array 旋转数组
- [LeetCode] 26. Remove Duplicates from Sorted Array 有序数组中去除重复项
- [LeetCode] 81. Search in Rotated Sorted Array II 在旋转有序数组中搜索 II
- [LeetCode] 33. Search in Rotated Sorted Array 在旋转有序数组中搜索
- [LeetCode] 269. Alien Dictionary 外文字典
- leetcode算法:Two Sum II - Input array is sorted
- leetcode 226 翻转二叉树