#include<stdio.h>
typedef int A;
const int LIST_INIT_SIZE=100;
const int LISTINCREMENT=10;
typedef struct
{
A *elem;
int length;
int listsize;
int incrementsize; }List;
void InList(List &L,int maxsize=LIST_INIT_SIZE,int incresize=LISTINCREMENT)
{
L.elem=new A[maxsize];
L.length=0;
L.incrementsize=maxsize;
L.listsize=incresize;
}
void ListDelete(List &L,int i,A &e)
{
A *p,*q;
if((i<1)||(i>L.length))
printf("i值不合法\n");
p=&(L.elem[i-1]);
e=*p;
q=L.elem+L.length-1;
for(++p;p<=q;++p)
*(p-1)=*p;
--L.length;
}
void DestroyList(List &L)
{
delete[] L.elem;
L.listsize=0;
L.length=0;
}
void increment(List &L)
{
A *a,i;
a=new A[L.listsize+L.incrementsize];
for(i=0;i<L.length;i++)
a[i]=L.elem[i];
delete[] L.elem;
L.elem=a;
L.listsize+=L.incrementsize;
}
void ListInsert(List &L,int i,A e)
{
if(i<1||i>L.length+1)
printf("i值不合法\n");
A *p,*q;
if(L.length>=L.listsize)
increment(L);
q=&(L.elem[i-1]);
for(p=&(L.elem[L.length-1]);p>=q;--p)
*(p+1)=*p;
*q=e;
++L.length;
}
int LocateElem(List L,A e)
{
A *p;
int i=1;
p=L.elem;
while(i<=L.length&&*p++!=e)
++i;
if(i<=L.length) return i;
else return 0;
}
bool ListEmpty(List L)
{
if(L.length==0)
return true;
else
return false; }
int ListLength(List L)
{
return (L.length);
}
void union1(List &La,List &Lb)
{
A e,La_len;
La_len=ListLength(La); //读取线性表La的长度
while(!ListEmpty(Lb))
{
ListDelete(Lb,1,e); //删除线性表Lb的第一个数据元素并将其赋给e
if(!LocateElem(La,e)) //若La!=e则将e插入La中
ListInsert(La,++La_len,e);
}
DestroyList(Lb); //直到线性表Lb的长度为空时销毁Lb。
}
int main()
{
List a , b ;
InList(a); // 进行初始化 a.length=0;
InList(b); // b.length=0;
int i;
for(i=1;i<5;i++)
{
a.elem[i-1] = i ;
a.length++; //是为了在此基础上插入新的元素.
}
b.elem[0] = 1 ;
b.elem[1] = 4 ;
b.elem[2] = 8 ;
b.length=3; //是判断最终b为不为空
union1(a,b);
for(i=0;i<a.length;i++)
printf("%d ",a.elem[i]);
printf("\n") ;
return 0;
}

求新的集合 A=AUB(顺序表)的更多相关文章

  1. jdk顺序表笔记

    一.AbstractCollection 提供了集合的最大实现 继承该类,必须实现size()和iterator(),因为该类操作集合都是通过iterator 二.fail-fast策略 该策略在集合 ...

  2. 数据结构Java实现02----线性表与顺序表

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. 查找(顺序表&有序表)

    [1]查找概论 查找表是由同一类型是数据元素(或记录)构成的集合. 关键字是数据元素中某个数据项的值,又称为键值. 若此关键字可以唯一标识一个记录,则称此关键字为主关键字. 查找就是根据给定的某个值, ...

  4. 顺序表及其多种实现方式 --- C/C++

    所谓顺序表,即线性表的顺序存储结构.下面给出的是数据结构---线性表的定义. ADT List{ 数据对象: 线性表的数据对象的集合为{a1,a2,a3,...,an},每个元素的类型为ElemTyp ...

  5. C#顺序表(数据结构)

    xmfdsh我近来心情实在不好,只因为这两天课比较少,然后一下子时间太多,不知道干什么,心情郁闷......这是要闹哪样?这都让我一个郁闷了一个晚上.闲来无聊,回顾下之前学的C#数据结构,数据结构的重 ...

  6. C# 数据结构 线性表(顺序表 链表 IList 数组)

    线性表 线性表是最简单.最基本.最常用的数据结构.数据元素 1 对 1的关系,这种关系是位置关系. 特点 (1)第一个元素和最后一个元素前后是没有数据元素,线性表中剩下的元素是近邻的,前后都有元素. ...

  7. 集合&gt;哈希表类Hashtable和SortedList排序列表类

    集合>哈希表类Hashtable Hashtable一种键值对的集合 ,哈希表内部的排列是无序的,而且哈希表没有提供排序方法. 集合>哈希表类Hashtable>构造普通哈希表 代码 ...

  8. 顺序表的原理与python中的list类型

    数据是如何在内存中存储的? 在32位的计算机上,1个字节有8位,内存寻址的最小单位就是字节.假设我们有一个int类型的值,它从0x10开始,一个int占据4个字节,则其结束于0x13. 那么数据类型有 ...

  9. 数据结构Java实现01----线性表与顺序表

    一.线性结构: 如果一个数据元素序列满足: (1)除第一个和最后一个数据元素外,每个数据元素只有一个前驱数据元素和一个后继数据元素: (2)第一个数据元素没有前驱数据元素: (3)最后一个数据元素没有 ...

随机推荐

  1. ios jsbrige

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  2. HDU 4715 Difference Between Primes (打表)

    Difference Between Primes Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/O ...

  3. 解决Android中TextView首行缩进的问题

    方式一:(推荐) setText("\u3000\u3000"+xxxxx); 方式二:这种方式不同分辨率会有问题 setText(""+xxxxx); 半角: ...

  4. Android Gson深入分析

    眼下解析json有三种工具:org.json(Java经常使用的解析),fastjson(阿里巴巴project师开发的).Gson(Google官网出的).解析速度最快的是Gson,下载地址:htt ...

  5. 《4》CentOS7.0+OpenStack+kvm云平台部署—配置Nova

    感谢朋友支持本博客,欢迎共同探讨交流,因为能力和时间有限,错误之处在所难免,欢迎指正! 假设转载.请保留作者信息. 博客地址:http://blog.csdn.net/qq_21398167 原博文地 ...

  6. 试用cmd markdown

    欢迎使用 Cmd Markdown 编辑阅读器 我们理解您需要更便捷更高效的工具记录思想,整理笔记.知识,并将其中承载的价值传播给他人,Cmd Markdown 是我们给出的答案 -- 我们为记录思想 ...

  7. C++中#include的工作原理

    大多数人可能对“#include”比较熟悉,因为我们写C/C++程序的时候都会写的字符串之一,但是它是具体怎么工作的?或者它的原理是什么呢? 可能不太熟悉,也有可能没有去关心过.我们只关心程序能否正确 ...

  8. 浅谈Spring(四)

    一.Spring+MyBatis整合 spring大大简化了Mybatis的开发步骤. 1.MyBatis的开发要点: mybatis-config.xml配置文件:配置与数据库的链接.mapper文 ...

  9. J - 搞笑版费马大定理

    J - 搞笑版费马大定理 Time Limit:1000MS     Memory Limit:131072KB     64bit IO Format:%lld & %llu Submit  ...

  10. CSDN博客排名第一名,何许人也

    CSDN博客排名第一名,何许人也 一.提出问题 CSDN博客排名第一名,何许人也. 分析截止时间是:2013年12月19日星期四22:00. 二.博客网址 http://blog.csdn.net/p ...