Java for LeetCode 088 Merge Sorted Array
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.
解题思路一:
使用一个nums1Copy把nums1的前m个元素拷贝出来,然后把nums1Copy和nums2放进nums1中,JAVA实现如下:
public void merge(int[] nums1, int m, int[] nums2, int n) {
int[] nums1Copy=new int[m];
for(int i=0;i<m;i++)
nums1Copy[i]=nums1[i];
int i=0,j=0,k=0;
while(i<m&&j<n){
if(nums1Copy[i]<nums2[j])
nums1[k++]=nums1Copy[i++];
else nums1[k++]=nums2[j++];
}
if(i>=m-1)
while(j<n)
nums1[k++]=nums2[j++];
if(j>=n-1)
while(i<m)
nums1[k++]=nums1Copy[i++];
}
解题思路二:
思路一会有一定的空间复杂度,可以直接把nums1中的前m个元素往右平移n个单位,然后进行合并,JAVA实现如下:
public void merge(int[] nums1, int m, int[] nums2, int n) {
for(int i=m+n-1;i>=n;i--)
nums1[i]=nums1[i-n];
int i=n,j=0,k=0;
while(i<m+n&&j<n){
if(nums1[i]<nums2[j])
nums1[k++]=nums1[i++];
else nums1[k++]=nums2[j++];
}
if(i>=m+n)
while(j<n)
nums1[k++]=nums2[j++];
}
Java for LeetCode 088 Merge Sorted Array的更多相关文章
- LeetCode 088 Merge Sorted Array 合并两个有序数组
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.Note:You ...
- [LeetCode] 88. Merge Sorted Array 混合插入有序数组
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: T ...
- Leetcode#88. Merge Sorted Array(合并两个有序数组)
题目描述 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组. 说明: 初始化 nums1 和 nums2 的元素数量分别为 m ...
- [LeetCode]题解(python):088 Merge Sorted Array
题目来源 https://leetcode.com/problems/merge-sorted-array/ Given two sorted integer arrays nums1 and num ...
- LeetCode 88. Merge Sorted Array(合并有序数组)
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note:Yo ...
- [LeetCode] 88. Merge Sorted Array 合并有序数组
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: T ...
- Java for LeetCode 108 Convert Sorted Array to Binary Search Tree
Given an array where elements are sorted in ascending order, convert it to a height balanced BST. 解题 ...
- 【leetcode】Merge Sorted Array
题目描述 Given two sorted integer arrays A and B, merge B into A as one sorted array. Note: You may assu ...
- LeetCode 88 Merge Sorted Array
Problem: Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array ...
随机推荐
- IOS7开发~UIKit Dynamics
UIKit Dynamics的中文名称:有叫UIKit动力,也有叫UIKit动力模型和UIKit动态或者动态UI,叫什么名不要紧,理解就含义就可以了. 什么是UIKit Dynamics ? UIKi ...
- ios大文件存储
I am using Erica Sadun's method of Asynchronous Downloads (link here for the project file: download) ...
- 11.【nuxt起步】-登录验证
1.新建/pages/login.vue 2.安装cookie Cnpm install js-cookie --s 3.Login.vue增加 import Cookie from 'js-cook ...
- Mysql中delimiter作用
1. delimiter delimiter是mysql分隔符.在mysqlclient中分隔符默认是分号(:). 假设一次输入的语句较多,而且语句中间有分号,这时须要新指定一个特殊的分隔符. 2. ...
- Jboss7类载入器
1. 类载入器理论知识介绍 类载入器基于Jboss Module,代替了层次类载入环境,避免了当类存在多个版本号时,导致类载入错误. 类载入是基于模块的.必须显示的定义模块依赖.部署也是模块化的,假设 ...
- Openfire 4.1.2 DOWNLOADS
DOWNLOADS Source Code Openfire 4.1.2 http://www.igniterealtime.org/downloads/ http://download.ignit ...
- Activity入门(一)
生命周期 onCreate():activity进行创建,在该方法中应调用setContentView(),findViewById()以及获取要展示的数据的方法(如调用manager ...
- C/C++中作用域详解(转)
作用域规则告诉我们一个变量的有效范围,它在哪儿创建,在哪儿销毁(也就是说超出了作用域).变量的有效作用域从它的定义点开始,到和定义变量之前最邻近的开括号配对的第一个闭括号.也就是说,作用域由变量所在的 ...
- shell脚本安装ntp server 服务
##############################Deploy ntp server ######################## echo "start deploy ntp ...
- SVN客户端忽略无关文件
修改前请先备份文件 ~/.subversion/config. 1,打开Terminal,输入命令: $ open ~/.subversion/config 2,在打开的文件中寻找:`global ...