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的更多相关文章

  1. LeetCode 088 Merge Sorted Array 合并两个有序数组

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.Note:You ...

  2. [LeetCode] 88. Merge Sorted Array 混合插入有序数组

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: T ...

  3. Leetcode#88. Merge Sorted Array(合并两个有序数组)

    题目描述 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组. 说明: 初始化 nums1 和 nums2 的元素数量分别为 m ...

  4. [LeetCode]题解(python):088 Merge Sorted Array

    题目来源 https://leetcode.com/problems/merge-sorted-array/ Given two sorted integer arrays nums1 and num ...

  5. LeetCode 88. Merge Sorted Array(合并有序数组)

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note:Yo ...

  6. [LeetCode] 88. Merge Sorted Array 合并有序数组

    Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array. Note: T ...

  7. 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. 解题 ...

  8. 【leetcode】Merge Sorted Array

    题目描述 Given two sorted integer arrays A and B, merge B into A as one sorted array. Note: You may assu ...

  9. LeetCode 88 Merge Sorted Array

    Problem: Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array ...

随机推荐

  1. IOS7开发~UIKit Dynamics

    UIKit Dynamics的中文名称:有叫UIKit动力,也有叫UIKit动力模型和UIKit动态或者动态UI,叫什么名不要紧,理解就含义就可以了. 什么是UIKit Dynamics ? UIKi ...

  2. ios大文件存储

    I am using Erica Sadun's method of Asynchronous Downloads (link here for the project file: download) ...

  3. 11.【nuxt起步】-登录验证

    1.新建/pages/login.vue 2.安装cookie Cnpm install js-cookie --s 3.Login.vue增加 import Cookie from 'js-cook ...

  4. Mysql中delimiter作用

    1. delimiter delimiter是mysql分隔符.在mysqlclient中分隔符默认是分号(:). 假设一次输入的语句较多,而且语句中间有分号,这时须要新指定一个特殊的分隔符. 2. ...

  5. Jboss7类载入器

    1. 类载入器理论知识介绍 类载入器基于Jboss Module,代替了层次类载入环境,避免了当类存在多个版本号时,导致类载入错误. 类载入是基于模块的.必须显示的定义模块依赖.部署也是模块化的,假设 ...

  6. Openfire 4.1.2 DOWNLOADS

    DOWNLOADS  Source Code Openfire 4.1.2 http://www.igniterealtime.org/downloads/ http://download.ignit ...

  7. Activity入门(一)

    生命周期         onCreate():activity进行创建,在该方法中应调用setContentView(),findViewById()以及获取要展示的数据的方法(如调用manager ...

  8. C/C++中作用域详解(转)

    作用域规则告诉我们一个变量的有效范围,它在哪儿创建,在哪儿销毁(也就是说超出了作用域).变量的有效作用域从它的定义点开始,到和定义变量之前最邻近的开括号配对的第一个闭括号.也就是说,作用域由变量所在的 ...

  9. shell脚本安装ntp server 服务

    ##############################Deploy ntp server ######################## echo "start deploy ntp ...

  10. SVN客户端忽略无关文件

    修改前请先备份文件 ~/.subversion/config. 1,打开Terminal,输入命令: $ open ~/.subversion/config   2,在打开的文件中寻找:`global ...