博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
16. 有序数组合并
阅读量:5078 次
发布时间:2019-06-12

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

有2个长度为nm有序的整型数组arr1arr2,请将他们合并为一个n+m有序数组。

注意:数组arr1包含足够的空间存放下n+m个元素,请直接将结果合并到数组arr1中。

提示:不要使用任何辅助数组,辅助空间。

样例:

n=3m=2arr1: [1,4,8,x,x]arr2: [-1,5]算法运行后arr1应该为[-1,1,4,5,8]

 

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication13{    class Program    {        static void Main(string[] args)        {            int[] arr1 = {
1,4,8,0,0}; int[] arr2 = { -1,5}; MergeTwoArray(arr1, arr2, 3, 2); foreach (int item in arr1) { Console.WriteLine(item); } } static void MergeTwoArray(int[] intArr1, int[] intArr2, int m, int n) { int a = m - 1; int b = n - 1; for (int i = m + n -1; i >=0; i--) { if ((a>=0&&intArr1[a]>intArr2[b])||b<0) { intArr1[i] = intArr1[a]; a--; } else { intArr1[i] = intArr2[b]; b--; } } } }}
View Code

 

转载于:https://www.cnblogs.com/Ligeance/p/3538329.html

你可能感兴趣的文章
LUOGU P4149 [IOI2011]Race
查看>>
使用kettle实现关键字查询,更新单列数据
查看>>
OSD磁盘日常监控
查看>>
【转】ArrayList循环遍历并删除元素的常见陷阱
查看>>
String.format()【示例详解】
查看>>
E. Ultra-QuickSort
查看>>
用状态机实现键盘消抖【转】
查看>>
CSS魔法堂:你真的懂text-align吗?
查看>>
[译]c++ web编程:写出你的CGI程序
查看>>
python小数据池,代码块的深入剖析。
查看>>
CFLoatEdit
查看>>
thinkphp3.2
查看>>
appstore不能登陆
查看>>
关于mysql的wait_timeout参数 设置不生效的问题
查看>>
spring boot 之@JsonView 简单介绍
查看>>
mysql 查看正在运行的进程
查看>>
Map,Hashmap,LinkedHashMap,Hashtable,TreeMap
查看>>
笔记4 | 轻量级的储存:SharedPreferences的一个例子
查看>>
【转】Jmeter和LR上传文件和下载
查看>>
201623172017-2018-1 《程序设计与数据结构》第六周学习总结
查看>>