线性表的数组实现方式
来源:互联网 发布:信息群发软件下载 编辑:程序博客网 时间:2024/06/17 06:56
#include<cstdio>#include<cstdlib>typedef int Position;//表示位置的数据类型typedef int ElementType;//表示顺序表的数据类型typedef struct LNode LNode,*List;#define MAXSIZE 100struct LNode{ ElementType data[MAXSIZE]; Position last;//相当于一个尾指针};//生成一个顺序表List makeEmpty(){ List ptrL; ptrL=(List)malloc(sizeof(LNode));//为指向结构菩提的指针分配存储空间 ptrL->last=-1;//last为指针 return ptrL;}//查找#define ERROR -1Position Find(List l,ElementType x){ Position i; for(i=0;i<=l->last;++i) { if(l->data[i]==x) break; } if(i>l->last) return ERROR; else return i;}//在p之前插入一个新的元素bool insert(List l,ElementType x,Position p){ //判断是否能插入 if(p>l->last+1) { printf("位置不合法/n"); return false; } if(l->last==MAXSIZE-1) { printf("表已满"); return false; } for(Position i=l->last;i>=p;--i) l->data[i+1]=l->data[i]; l->data[p]=x; ++l->last; return true;}bool Delete( List L, Position P ){ /* 从L中删除指定位置P的元素 */ Position i; if( P<0 || P>L->last ) { /* 检查空表及删除位置的合法性 */ printf("位置%d不存在元素", P ); return false; } for( i=P+1; i<=L->last; i++ ) L->data[i-1] = L->data[i]; /* 将位置P+1及以后的元素顺序向前移动 */ L->last--; /* Last仍指向最后元素 */ return true;}int main(){ List list1=makeEmpty();//这个指针指向了一个结构体 return 0;}
阅读全文
0 0
- 线性表的数组实现方式
- 线性表的数组实现
- 【数据结构之线性表顺序存储】简单的数组的方式实现
- 线性表-数组实现
- 线性表数组实现
- MyArrayList(数组线性表的实现)
- 数组实现线性表的顺序存储
- C++用数组实现的线性表
- 【java】数组线性表的实现
- [转载] 线性表的数组实现
- 数组线性表ArrayList的内部实现
- 用数组实现的线性表
- 数据结构-线性表的数组实现-Java
- 基于数组对线性表的实现
- 数组实现线性表的删除
- C++实现数组构造的线性表
- 线性表之基于数组的实现
- 将数组中两个线性表位置互换的方式
- 详解阿里云移动云ApsaraMobile,首建云上开发者闭环
- AgentWeb , 一个简洁易用的 Android Web 库
- 程序员资料,附下载地址,持续更新中!
- 倾力总结40条常见的移动端Web页面问题解决方案
- Mysql中group_concat函数的妙用
- 线性表的数组实现方式
- Android--------------mouth题
- hive+hbase
- 算法学习笔记15-哈希算法
- 阿里云的ECS机器部署Nodejs项目
- jdk工具--jps
- oracle-using/natural join
- 线程同步ReentrantLock,condition(await,signal)
- 安卓使用万能适配器时候不能再item布局最外层布局进行tag设置