博客
关于我
[88]. 合并两个有序数组(C语言)
阅读量:301 次
发布时间:2019-03-04

本文共 747 字,大约阅读时间需要 2 分钟。

给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。

说明:

  • 初始化 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]

提示:

-10^9 <= nums1[i], nums2[i] <= 10^9

nums1.length == m + n
nums2.length == n

来源:力扣(LeetCode)

链接:

解题思路

思路:先合并后排序

  • 首先合并两个数组,将数组2的元素全部追加到数组1有效数字的后面。
    nums1=123000->nums1=123256
  • 对合并后的数组采取冒泡排序的方法排成有序数组
    nums1=123256->122356

代码:

void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n){       //1.将nums2存入到nums1中    for(int i=m,j=0;i
nums1[j+1]) { int temp=nums1[j]; nums1[j]=nums1[j+1]; nums1[j+1]=temp; } } }}

在这里插入图片描述

转载地址:http://bbiq.baihongyu.com/

你可能感兴趣的文章
【图论】【最短路】工厂的烦恼
查看>>
【图论】刻录光盘
查看>>
03-C语言进阶——模拟实现字符串操作函数
查看>>
C语言初阶——指针
查看>>
[88]. 合并两个有序数组(C语言)
查看>>
docker部署Hadoop环境
查看>>
最全环境搭建-常用软件安装
查看>>
Linux 安装 MySql
查看>>
系统架构
查看>>
网关程序的开发
查看>>
SpringBoot(Spring IOC 和 Spring MVC)(待补充)
查看>>
复制字符数组
查看>>
变量命名的通用规则
查看>>
MFC中精确获取时间并且计算事情所用时间
查看>>
鸡啄米之VS2010/MFC编程入门之三十一(常用控件:树形控件Tree Control 下)
查看>>
Linux系统基本操作命令
查看>>
程序员职业划分
查看>>
MFC使用opencv在picture控件上面播放摄像头视频
查看>>
浪潮服务器电脑BOOST界面设置开机启动
查看>>
C++开源网络库(Socket library)
查看>>