3--合并数组

/*
问题描述:
	排序数组A1和排序数组A2,A1内存有足够空间,
	将A2的数组中数字插入A1.

解题思路:
	首先去重复,然后计数。计算A1中末位的长度,
然后,将两个数组,按照大小,从后插入数组A1中。

*/

#include <stdio.h>

void insertArray(int a[], int b[])
{
	//默认0是数组a先结束,意思是a的最后一个元素小于b的最后一个元素,1是数组b先结束。
	bool singal = 0;		

	for (int i = 0, j = 0; ; i++, j++)
	{
		if (a[i] > a[i + 1])
		{
			singal = 0
			break;
		}
		if (b[i] > b[i + 1])
		{
			singal = 0
			break;
		}

	}

	return ;
}

int main()
{
	int a[100] = {2, 4, 7, 9, 11, 13, 22, 24, 33, 54, 67};
	int b[] = {1, 3, 4, 5, 6, 9, 11, 21, 30, 39, 45, 50, 51, 60, 100};

	printf("%d\n", sizeof(a));

	//insertArray(a, b, 11, 15);

	// for (int i = 0; i < 100; i++)
	// {
	// 	if (i % 10 == 0)
	// 	{
	// 		printf("\n");
	// 	}
	// 	printf("%d ", a[i]);
	// }

	return 0;
}

  

时间: 2024-11-05 13:33:27

3--合并数组的相关文章

php 合并数组 &quot;+&quot;和&quot;array_merge&quot;的区别

主要区别是两个或者多个数组中如果出现相同键名,键名分为字符串或者数字,需要注意 1)键名为数字时,array_merge()不会覆盖掉原来的值,但+合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉(不是覆盖) 2)键名为字符时,+仍然把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值“抛弃”掉,但array_merge()此时会覆盖掉前面相同键名的值 <?php$array1 = array(0 => 'zero_a', 2 => 

PHP合并数组array_merge函数运算符加号与的区别

两个的区别是:1.数组键名为数字键名时,要合并的两个数组中有同名数字KEY的时候,使用array_merge()不会覆盖掉原来的值,而使用"+"合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值"抛弃"掉(注意:不是覆盖而是保留最先出现的那个值).例子: $array1 = array(1=>'0′);$array2 = array(1=> "data");$result1 = $array2 + $arr

合并数组的小技巧

合并数组 如果你要合并两个数组,一般情况之下你都会使用Array.concat()函数: var array1 = [1,2,3]; var array2 = [4,5,6]; console.log(array1.concat(array2)); // [1,2,3,4,5,6]; 然后这个函数并不适合用来合并两个大型的数组,因为其将消耗大量的内存来存储新创建的数组.在这种情况之个,可以使用Array.pus().apply(arr1,arr2)来替代创建一个新数组.这种方法不是用来创建一个新

php中array_merge合并数组详解

如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的).如果数组是数字索引的,则键名会以连续方式重新索引. 注释:如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引. 代码如下 复制代码 <?php$a=array(3=>"Horse",4=>"Dog");print_r(array_merge($a));?> 将一个或多个数组的单元合并起

JS合并数组的几种方法及优劣比较

这篇文章主要介绍了JS合并数组的几种方法及优劣比较,本文讲解了concat.循环插入.reduce等方法合并数组,并对它们的优劣做了比较,需要的朋友可以参考下 本文属于JavaScript的基础技能. 我们将学习结合/合并两个JS数组的各种常用方法,并比较各种方法的优缺点. 我们先来看看具体的场景: 代码如下: var q = [ 5, 5, 1, 9, 9, 6, 4, 5, 8];var b = [ "tie", "mao", "csdn",

PHP 合并数组 追加数组例子

PHP合并数组我们可以使用array_merge()函数,array_merge()函数返回一个联合的数组.所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次追加.其形式为: array array_merge (array array1 array2…,arrayN) 下面是一个PHP合并数组的例子: <?php $fruits = array("apple","banana","pear"); $numbered = a

PHP合并数组保留key值

PHP合并数组,键值不变 尝试了好几个合并数组的函数, 但是都是把key值重置, 导致key值丢失(因为key值是要用到的) 大大说, 最好用数组的相关函数, 网上随意找了下, 还是没找到. 因为自己使用的是+, 但是要注意, 前后都必须是数组, 如果是空值的时候, 需要初始化为array(), 不然就会报错 找到一篇文章, 就复制过来保留着了. PHP中有合并数组的函数 array_merge(),但是这个函数有一个缺点,就是在使用的时候,会使数组为数字的键值重置,丢失原来的键值: 后来,找了

“举一反三”合并数组--《剑指offer》

与上篇思想一样,或者说是替换数字的另一种版本吧,题目如下: 有两个已经排好的数组A1和A2,A1的末尾有足够的空间来容纳A2,我们将A2数组插入到A1中,继续保持已经排序: 这样看来就和替换空格相似了,如果我们在A1数组从头到尾复制数字,这样导致A1数组后面的数一直不断往后移动,复杂度一样是O(n2),所以,我们来举一反三: //2014-5-18 //举一反三,合并数组 #include <iostream> using namespace std; const int length = 5

PHP中使用函数array_merge()合并数组

如果明白数组其实就是map的话,我想你就会明白array_merge为什么要这么实现了 PHP中合并数组分成两种情况 1.如果这两个数组中有相同的字符串键名: <?php header('Content-type: text/html; charset=utf8'); $book1 = array('linux'=>'linux服务器配置与管理','php'=>'PHP程序设计'); $book2 = array('linux'=>'服务器配置与管理','jsp'=>'PHP

PHP按值合并数组

1 /** 2 * PHP按值合并数组 3 * 4 */ 5 function my_array_merge(&$array1, &$array2) { 6 $result = Array(); 7 foreach($array1 as $key => &$value) { 8 $result[$key] = array_merge($value, $array2[$key]); 9 } 10 return $result; 11 }