博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
编程算法 - 两个升序列的同样元素 代码(C)
阅读量:6383 次
发布时间:2019-06-23

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

两个升序列的同样元素 代码(C)

本文地址: http://blog.csdn.net/caroline_wendy

两个升序列的同样元素, 须要使用两个指针, 依次遍历, 假设相等输出, 假设小于或大于, 则添加一个指针.

直到输出全部的值.

代码:

/* * main.cpp * *  Created on: 2014.9.19 *      Author: spike */#include 
int Common(int data1[], int length1, int data2[], int length2, int res[]) { if (data1 == NULL || length1 <= 0 || data2 == NULL || length2 <= 0) return -1; int i=0, j=0, k=0; while (i < length1 && j < length2) { if (data1[i] == data2[j]) { res[k++] = data1[i]; i++; j++; } else if (data1[i] < data2[j]) i++; else j++; } return k;}int main(void){ int data1[] = {1, 2, 4, 5, 6, 9, 11}; int data2[] = {2, 5, 6, 8, 12}; int length1 = sizeof(data1)/sizeof(data1[0]); int length2 = sizeof(data2)/sizeof(data2[0]); int max = length1 > length2 ? length1 : length2; int* res = new int[max]; int num = Common(data1, length1, data2, length2, res); for (int i=0; i
输出:

2 5 6

你可能感兴趣的文章
word2010图片仅仅显示边框
查看>>
启动tomcat时 错误: 代理抛出异常 : java.rmi.server.ExportException: Port already in use: 1099的解决办法...
查看>>
数据质量及数据清洗方法
查看>>
排序算法(一)桶排法
查看>>
【POJ 1062】昂贵的聘礼(最短路)
查看>>
vim:去掉响铃
查看>>
Spring 小示例
查看>>
MySql清空表的方法介绍 : truncate table 表名
查看>>
codeforces水题100道 第四题 Codeforces Round #105 (Div. 2) A. Insomnia cure (math)
查看>>
利用 SPL 快速实现 Observer 设计模式: SplSubject 、SplObserver与SplObjectStorage【转】
查看>>
C\C++ 1A2B小游戏源码
查看>>
【SDK fix】iOS 8下将UIButton放置于tabbar位置无法响应event
查看>>
Android项目实战(三十八):2017最新 将AndroidLibrary提交到JCenter仓库(图文教程)...
查看>>
地平线“小目标”:2025年,三千万汽车搭载地平线自动驾驶BPU
查看>>
“2016大数据技术与应用人才培养研讨会” 在泸州成功召开
查看>>
大数据和数字化转型
查看>>
如何知道自己的CPU支持SLAT
查看>>
客户端在使用citrix应用如何开启本地输入法
查看>>
C# 一个字符串是否在另外一个字符串数组里 Array.Exists 的用法 Array.IndexOf 用法...
查看>>
delphi实现计算器
查看>>