【学习笔记】数据结构顺序表,求交并集
来源:互联网 发布:php类和对象 编辑:程序博客网 时间:2024/05/17 06:36
描述:已知顺序表A,B。
用顺序表表示A=A与B的交并集。
#include<stdio.h>#include<stdlib.h>#define MAXSIZE 10typedef struct node{ int date[MAXSIZE]; int length;}Lseqlist,*Pseqlist; //初始化顺序表Pseqlist init_Seqlist(void){ Pseqlist H; H=(Pseqlist)malloc(sizeof(Lseqlist)); if(H){ H->length=0; } return H;}//新建顺序表 Pseqlist build_Seqlist(Pseqlist H,int length){ for(int i=0;i<length;i++){ scanf("%d",&H->date[i]); H->length++; } return H;}//求表长 void length_Seqlist(Pseqlist H){ printf("%d",H->length); }//删除某项数据项 Pseqlist delete_Seqlist(Pseqlist H,int position){ for(int i=position;i<H->length;i++){ H->date[i]=H->date[i+1]; } H->length--; return H;}//插入某项数据项Pseqlist insert_Seqlist(Pseqlist H,int position,int x){ for(int j=H->length-1;j>=position;j--){ H->date[j+1]=H->date[j]; } H->length++; H->date[position]=x; return H;}//查找某项数据项int find_Seqlist(Pseqlist H,int find){ int i=0; while(i<H->length && H->date[i]!=find){ i++; } if(i>=H->length){ return 0; }else{ return (i+1); } }//打印顺序表 void print_Seqlist(Pseqlist H){ for(int i=0;i<H->length;i++){ printf("%d ",H->date[i]); }}//两个顺序表求交集Pseqlist intersection_Seqlist(Pseqlist A,Pseqlist B){ for(int i=0;i<A->length;i++){ if(!find_Seqlist(B,A->date[i])){ delete_Seqlist(A,i); } } return A; }//两个顺序表求并集Pseqlist union_Seqlist(Pseqlist A,Pseqlist B){ for(int i=0;i<B->length;i++){ if(!find_Seqlist(A,B->date[i])){ insert_Seqlist(A, A->length,B->date[i]); } } return A;} int main(void){ Pseqlist H1,H2,Union,Intersection; H1=init_Seqlist(); H1=build_Seqlist(H1,4); length_Seqlist(H1); printf("\n"); H1=delete_Seqlist(H1,2); length_Seqlist(H1); printf("\n"); print_Seqlist(H1); printf("\n"); H1=insert_Seqlist(H1,3,7); length_Seqlist(H1); printf("\n"); print_Seqlist(H1); H2=init_Seqlist(); H2=build_Seqlist(H2,4);// Intersection=intersection_Seqlist(H1,H2);// print_Seqlist(Intersection); Union=union_Seqlist(H1,H2); print_Seqlist(Union); return 0;}
0 0
- 【学习笔记】数据结构顺序表,求交并集
- 顺序表求集合交并——C++实现
- 数据结构之顺序表(集合的交并差)
- 数据结构学习笔记:顺序表
- 数据结构(线性结构习题)Problem A: 求集合的交并补集
- 数据结构(线性结构习题)Problem A: 求集合的交并补集
- 数据结构学习笔记二 顺序表
- 数据结构之顺序表学习笔记
- 【黑马程序员-学习笔记】数据结构-顺序表
- 数据结构学习笔记(一) 顺序表
- 数据结构学习笔记之顺序表
- 数据结构学习笔记(一) 顺序表
- 顺序表 交并差等基本操作
- 顺序表的交并补 增删查
- 顺序表集合的交并差操作
- 数据结构笔记--顺序表
- 多边形求交并差
- 数据结构学习笔记 --- 线性表 (顺序表)
- 什么叫持久层框架
- B. Weird Rounding
- Shell 教程
- 安卓UI设计对安卓程序的影响
- js没有replaceAll,但是有正则表达式
- 【学习笔记】数据结构顺序表,求交并集
- Window下用caffe实现MNIST训练
- 在一个外部js文件中引用另一个外部js文件
- springMVC通过Filter实现防止xss注入
- Java设计模式透析之 —— 模板方法(Template Method)
- 在windows使用FFmpeg获取视频缩略图的工具类
- 51nod-1351:吃点心
- spring ioc di 原理解析
- 抽象类和接口