[Leetcode] Merge Sorted Array
2014-10-03 06:04
351 查看
题目:
Given two sorted integer arrays A and B, merge B into A as one sorted array.
Note:
You may assume that A has enough space (size that is greater or equal to m + n) to hold additional elements from B. The number of elements initialized in A and B are m and nrespectively.
思路:从后向前merge即可,注意数组变空的判断。
总结:复杂度O(m + n).
Given two sorted integer arrays A and B, merge B into A as one sorted array.
Note:
You may assume that A has enough space (size that is greater or equal to m + n) to hold additional elements from B. The number of elements initialized in A and B are m and nrespectively.
思路:从后向前merge即可,注意数组变空的判断。
class Solution { public: void merge(int A[], int m, int B[], int n) { int a_ptr = m - 1; int b_ptr = n - 1; for (int i = m + n - 1; i >= 0; --i) { if (a_ptr < 0) { // A[] has been empty A[i] = B[b_ptr]; b_ptr--; } else if (b_ptr < 0) { // B[] has been empty A[i] = A[a_ptr]; a_ptr--; } else if (A[a_ptr] > B[b_ptr]) { A[i] = A[a_ptr]; a_ptr--; } else { A[i] = B[b_ptr]; b_ptr--; } } } };
总结:复杂度O(m + n).
相关文章推荐
- Merge Sorted Array:from LeetCode
- LeetCode(88)题解-- Merge Sorted Array
- LeetCode—Merge Sorted Array两个有序数组排序
- LeetCode-88-Merge Sorted Array-E
- 【LeetCode 88_数组】Merge Sorted Array
- LeetCode88——Merge Sorted Array
- LeetCode 088 Merge Sorted Array
- LeetCode(088) Merge Sorted Array(Java)
- Merge Sorted Array 【leetcode】
- LeetCode - Merge Sorted Array
- 【Leetcode】【Easy】Merge Sorted Array
- LeetCode - Merge Sorted Array
- Leetcode 第88题 Merge Sorted Array
- [LeetCode]Merge Sorted Array
- LeetCode 之 Merge Sorted Array — C++ 实现
- leetcode--merge_sorted_array
- LeetCode——Merge Sorted Array
- Leetcode: Merge Sorted Array
- leetcode 日经贴,Cpp code -Merge Sorted Array
- Leetcode-Merge Sorted Array