归并2个数组中的元素
来源:互联网 发布:健步走软件官方下载 编辑:程序博客网 时间:2024/06/11 17:32
1. 问题描述
已知2个List:LA,LB中的数据按照非递减排列;要求把LA,LB中的合并成为一个List,其中数据也按照飞递减排列(包含重复数据)。
2. 问题分析
/ a if a <= b
C =
\ b if a > b
3. 算法
#define DataType intint MergeList( DataType* la, int size_a, DataType* lb, int size_b, DataType* &lc ){ lc = (DataType*)malloc( (size_a+size_b)*sizeof(DataType) ); memset(lc, 0, (size_a+size_b)*sizeof(DataType)); int i_a = 0; int i_b = 0; int i_c = 0; while( i_a < size_a && i_b < size_b ) { if( la[i_a] <= lb[i_b] ) lc[i_c++] = la[i_a++]; else lc[i_c++] = lb[i_b++]; }//while while( i_a < size_a ) { lc[i_c++] = la[i_a++]; } while( i_b < size_b ) { lc[i_c++] = lb[i_b++]; } return i_c;}
4. 算法分析
很明显算法的复杂度为O(n)
O(size_a + size_b)
- 归并2个数组中的元素
- 2个元素的组合匹配二维数组中的数据
- Merge Sorted Array 归并2个数组
- 获得一个2n数组中的N个元素,使得该N个元素与剩余元素和最小
- 将数组中的元素循环左移 p 个元素
- 学习算法(3)——查找2个数组中的相同元素
- 用递归函数逆序输出数组中的10个元素
- 左移数组中的前P个元素
- 两个有序数组中的第K个元素
- 用对象找出10个整形数组中的最大元素。
- 交换俩个数组中的元素 用函数完成
- 交换数组的任意2个元素
- 2个有序数组,找出相同元素
- 比较2个数组元素元素是否相同
- 2个数组中遍历相同元素或不同元素
- java数组:2个数组,查出相同的元素
- 移动数组中的元素
- Random数组中的元素
- 25个让Java程序员更高效的Eclipse插件
- Java类加载的时机
- 把PPT转换为word
- delphi 整理的常用函数
- TCP的推送比特PSH(Push)
- 归并2个数组中的元素
- JAVA应用监控javamelody
- 小心C语言的定义与声明
- Ajax文本框输入提示
- Oracle帐号基本管理
- Apache Struts1 End-Of-Life (EOL)
- ANDROID4.0音频系统HAL初探
- 应用服务器监控-jwebap
- Java web中编码问题解析