Lintcode: Merge Sorted Array II
2015-03-16 04:41
302 查看
Merge two given sorted integer array A and B into a new sorted integer array. Example A=[1,2,3,4] B=[2,4,5,6] return [1,2,2,3,4,4,5,6] Challenge How can you optimize your algorithm if one array is very large and the other is very small?
没什么好说的,Arraylist来做merge, 建一个新ArrayList
class Solution { /** * @param A and B: sorted integer array A and B. * @return: A new sorted integer array */ public ArrayList<Integer> mergeSortedArray(ArrayList<Integer> A, ArrayList<Integer> B) { // write your code here if (A==null || A.size()==0) return B; if (B==null || B.size()==0) return A; ArrayList<Integer> res = new ArrayList<Integer>(); int i=0, j=0; for (int k=0; k<A.size()+B.size(); k++) { if (i<A.size() && j<B.size() && A.get(i) < B.get(j)) { res.add(A.get(i)); i++; } else if (i<A.size() && j<B.size() && A.get(i) >= B.get(j)){ res.add(B.get(j)); j++; } else if (i<A.size()) { res.add(A.get(i)); i++; } else { res.add(B.get(j)); j++; } } return res; } }
相关文章推荐
- LintCode Merge Sorted Array II
- LintCode Merge Sorted ArrayII 合并排序数组 II
- LintCode Merge Sorted Array 合并排序数组
- LintCode Remove Duplicates from Sorted Array II 删除排序数组中的重复数字 II
- lintcode-medium-Search in Rotated Sorted Array II
- lintcode:Merge Sorted Array
- lintcode之Merge Sorted Array
- lintcode 中等题:search in rotated sorted arrayII 搜索旋转排序数组II
- [LeedCode OJ]#154 Find Minimum in Rotated Sorted Array II
- lintcode:Find Minimum in Rotated Sorted Array
- lintcode 容易题:Remove Duplicates from Sorted Array 删除排序数组中的重复数字
- lintcode-easy-Merge Sorted Array II
- [刷题]Merge Sorted Array II
- CODE 53: Remove Duplicates from Sorted Array II
- [leet code] Search in Rotated Sorted Array & II
- Google/LintCode:H-Median of two Sorted Array
- Lintcode: Recover Rotated Sorted Array
- CODE 51: Search in Rotated Sorted Array II
- lintcode:Remove Duplicates from Sorted List II
- Merge Sorted Array II