1.给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。

说明:

初始化 nums1 和 nums2 的元素数量分别为 m 和 n。
你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。
示例:

输入:
nums1 = [1,2,3,0,0,0], m = 3
nums2 = [2,5,6], n = 3

输出: [1,2,2,3,5,6]
2.代码展示

void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n)
{int dst = m;int src = n;while (dst>0 && src > 0){if (nums1[dst-1] <= nums2[src-1]){nums1[src+dst-1]=nums2[src-1];--src;}else{nums1[src+dst-1]=nums1[dst-1];--dst;}}while (dst == 0&&src>0){nums1[src-1] =nums2[src-1];--src;}
}

3.解题思路
给的有序数组,我们可以从右向左开始依次比较,大数字放到Nums1的尾部,唯一要注意的是,当num1已经到开头了,而Num2还没有到开头。所以我们要将Num2剩下的数全部复制到NUm1中。

给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。相关推荐

  1. 设n个不同的整数排好序后存于T[1..n]中,若存在一个下标i(1≤ i ≤ n),使得T[i]=i。试设计一个有效算法找到这个下标,要求算法在最坏情形下的计算时间为O(log n)

    转自http://zmp1123.blog.163.com/blog/static/1193291592013314581911/ 设n 个不同整数排好序后存于T[0:n-1]中,若存在一个下标i,0 ...

  2. 合并两个有序数组(给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。)

    void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n){          //定义,让数组从后往 ...

  3. java中数组的内存模型_Java如何在内存有限的情况下实现一个超大数组?jvm性能调优+内存模型+虚拟机原理能解决什么样问题...

    在上一篇文章中,小编为您详细介绍了关于<变频器调速问题?三星R458更换CPU>相关知识.本篇中小编将再为您讲解标题Java如何在内存有限的情况下实现一个超大数组?jvm性能调优+内存模型 ...

  4. java如何把文件中的内容存到一个动态数组arraylist中_如何动态地向Java中的数组添加项目?...

    由于数组的大小是固定的,因此您不能动态地向其中添加元素.但是,如果您仍然想要这样做,将数组转换为ArrayList对象. 将所需元素添加到数组列表. 将数组列表转换为数组. 示例import java ...

  5. 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 有序

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

  6. .net 遍历数组找重复值写入一个新数组_面试 | 数组类算法精析

    点击上方蓝字设为星标 每周一.三.五上午 8:30 准时推送 下面开始今天的学习- 面试中的算法问题,有很多并不需要复杂的数据结构支撑.就是用数组,就能考察出很多东西了.其实,经典的排序问题,二分搜索 ...

  7. Python给定两个有序整数数组nums1和nums2,合并nums1和nums2为数组nums1

    给定两个有序整数数组nums1和nums2,合并nums1和nums2为数组nums1, 注意: 数组nums1和nums2初始化元素个数分别为m和n 假设num1有足够空间(长度超过m+n或与其相等 ...

  8. 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。

    /*** 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2.请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))=Ologm*Ologn.你可以假设 ...

  9. leetcode C++ 4. 寻找两个有序数组的中位数 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log

    一.概述: 这道题思路其实蛮简单的,就是边界太难考虑了,所以一直没能通过,写了好长的代码考虑边界,然后看到一个大神写的代码: https://leetcode-cn.com/problems/medi ...

最新文章

  1. 短视频+直播——直播系统开发新模式
  2. 人生抉择之-创业记录片(一)
  3. 阿里云ubuntu软件包镜像源地址
  4. Java代码优化方案 J2ME内存优化
  5. java 抽奖 高并发处理_如何设计高并发下的抽奖?
  6. 亚马逊Alexa已接入2万种设备,22岁开发者月入1万美元
  7. WPF UI 框架 收集
  8. 台式计算机加固态硬盘,台式机加固态硬盘作用
  9. 车辆路径问题(VRP)初探
  10. access简述报表的功能_报表的主要功能_access标签报表有什么作用
  11. 分享一款开源数据库建模工具--PDMan(可代替powerdesigner)
  12. 如何阅读《如何阅读一本书》?
  13. SuperView和View的区别
  14. 2022年秋招总结暨acm退役记
  15. Android 相机预览 横屏竖屏 -- 显示
  16. ibm服务器怎么安装win7系统安装,thinkpad如何安装win7系统
  17. An internal error occurred during: compute variable details. java.lang.NullPointerException
  18. 手机拍照光线不够白平衡自动改变_白平衡:一个被低估的参数,掌握好它,提升摄影中的色彩管理水平...
  19. python调用libvirt_python实战系列之通过libvirt操作KVM(六)
  20. tableau高级绘图(十三)-tableau绘制K线图

热门文章

  1. Floyd是咋求图的最短路径?
  2. 基于机智云的智能花盆1.0
  3. android shareSDK 微博分享案例
  4. 使jets3t支持https
  5. office文件转换为pdf文件
  6. 洛谷 P1757 通天之分组背包 C++ dp
  7. 计算机科学刘培姣,高中物理课堂融入物理学史体现核心素养的必要性
  8. Spring Boot 打包分离依赖 JAR 和配置文件
  9. maven离线(offline)构建时无法找到本地依赖 Non-resolvable import POM: Cannot access nexus
  10. AS(强直性脊柱炎)完全手册