博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
顺序表ADT模板简单应用算法设计:线性表的合并
阅读量:2339 次
发布时间:2019-05-10

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

问题描述

目的:使用STL中的vector模板,设计并实现顺序表应用场合的一些简单算法设计。

应用4:试设计一个算法,将所有在线性表LB中但不在LA中的数据元素插入到LA中,算法执行之后,线性表LB不再存在。

参考函数原型:

template
void Union_Sq( vector
&LA,vector
&LB );

输入说明

第一行:待处理顺序表LA的长度

第二行:待处理顺序表LA的数据元素(数据元素之间以空格分隔)

第三行:待处理顺序表LB的长度

第四行:待处理顺序表LB的数据元素(数据元素之间以空格分隔)

输出说明

第一行:顺序表LA的遍历结果

第二行:顺序表LB的遍历结果

第三行:合并后顺序表LA的遍历结果

输入范例

1013 5 27 9 32 123 76 98 54 871013 5 13 9 32 51 76 5 54 8

输出范例

13 5 27 9 32 123 76 98 54 87 13 5 13 9 32 51 76 5 54 8 13 5 27 9 32 123 76 98 54 87 51 8

代码实现

#include 
#include
using namespace std;/* description:show all the elements of the vector*/template
void show(vector
& A){
typename std::vector
test = A; typename std::vector
::iterator iter; for(iter = test.begin();iter != test.end();iter ++) { cout<<*iter<<" "; } cout<
void Union_Sq(vector
&LA,vector
&LB){ show(LA); show(LB); cout<
::iterator iterA = LA.begin(); typename std::vector
::iterator iterB = LB.begin(); while(iterB != LB.end()) { iterA = LA.begin(); while(iterA != LA.end()) { if(*iterA == *iterB) { isFlag = false; break; } iterA ++; } if(isFlag) { LA.push_back(*iterB); } isFlag = true; iterB ++; } show(LA);}int main(){ int Asize; cin>>Asize; vector
A(Asize); string str; for(int i = 0 ;i < Asize;i ++) { cin>>str; A.at(i) = str; } int Bsize; cin>>Bsize; vector
B(Bsize); for(int i = 0 ;i < Bsize;i ++) { cin>>str; B.at(i) = str; } Union_Sq(A,B); return 0;}

在这里插入图片描述

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

你可能感兴趣的文章
springcloud首个项目遇到的坑
查看>>
spring-oauth2总结
查看>>
SpringCloud声明式服务调用Feign
查看>>
微服务监控模块springboot Admin
查看>>
安全模块springboot security
查看>>
springcloud gateway
查看>>
drools使用记录
查看>>
阿里六面,挂在hrg,我真的不甘心!
查看>>
人生的康波周期,把握住一次,足以改变命运!
查看>>
互联网公司那些价值观-阿里巴巴
查看>>
去面试快手,问了我很多消息队列的知识!
查看>>
图解LeetCode No.18之四数之和
查看>>
402. Remove K Digits
查看>>
75. Sort Colors
查看>>
获取数组中前K小的数字
查看>>
数组heapify变为堆结构
查看>>
二叉树的非递归遍历
查看>>
218. The Skyline Problem
查看>>
Java PAT (Basic Level) Practice 写出这个数
查看>>
Python PAT (Basic Level) Practice 1016 部分A+B
查看>>