LeetCode88 Merge Sorted Array
来源:互联网 发布:二进制编辑器 windows 编辑:程序博客网 时间:2024/05/04 18:52
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.
Note:
You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold additional elements from nums2. The number of elements initialized in nums1and nums2 are m and n respectively.
题意:给定两个有序数组,然后将数组2融合到数组1中。
这道题还是很简单的,假设两个数组给定的顺序都是升序的。这题的方法有很多,在选择方法的时候,我们知道,数组中插入新的数据,就会涉及到数组元素的移动,那用什么方法能够尽可能的减少不必要的移动呢。或者是数字插入后每位数字只需要移动一次即是它最终的位置。
思路是:从后往前比较,将数组1和数组2中的数字从后往前比较,谁大就移到后边,直到数组1或数组2中的数字比较完。然后再做剩余部分的处理。
程序如下:
public void merge(int[] nums1, int m, int[] nums2, int n) { if(n==0)return; //将nums2中的数从后往前比 int j=m-1; int i=n-1; while(i>=0&&j>=0) { if(nums2[i]>nums1[j]) { nums1[j+i+1]=nums2[i]; i--; }else { nums1[j+i+1]=nums1[j]; j--; } } if(i>=0) { for(int k=0;k<=i;k++) { nums1[k]=nums2[k]; } } }
0 0
- LeetCode88 Merge Sorted Array
- leetCode88:Merge Sorted Array
- leetcode88:Merge Sorted Array
- Leetcode88. Merge Sorted Array
- leetcode88~Merge Sorted Array
- LeetCode88. Merge Sorted Array
- leetcode88 merge sorted array
- leetcode88. Merge Sorted Array
- LeetCode88 Merge Sorted Array
- LeetCode88——Merge Sorted Array
- leetcode88---Merge Sorted Array(合并有序数组)
- LeetCode88——Merge Sorted Array
- Leetcode88 - Merge Sorted Array(two pointers)
- LeetCode88 Merge two sort array
- [Array]Merge Sorted Array
- LeetCode: Merge Sorted Array
- Merge Sorted Array
- [Leetcode] Merge Sorted Array
- 计算机操作系统笔记——问答题
- 论程序员在当今社会的重要性
- Unity3D 模型换肤技术
- Python安装第三方库遇到 error: Unable to find vcvarsall.bat
- android通过drawable资源实现常用的自定义效果
- LeetCode88 Merge Sorted Array
- LTE中的功率控制
- 操作系统常见面试的一些基础知识整理
- cocos2d-x学习记录C++,环境搭建,创建第一个工程
- 设计模式
- [LeetCode] Path Sum II
- 【Leetcode】Largest Rectangle in Histogram #84
- D3D网格(二)
- 实现textarea限制输入字数