数据结构学习-线性表-链表的代码实现
来源:互联网 发布:淘宝达人怎么介绍自己 编辑:程序博客网 时间:2024/06/07 18:34
#2017-11-26 21:30
#武汉工程大学邮电与信息工程学院邮科院校区
#软件工程1604谷子毅
typedef struct LNode *PtrToLNode;struct LNode{ElementType Data;PtrToLNode Next;};typedef PtrToLNode Position;typedef PtrToLNode List;/*查找*/#define ERROR NULLPosition Find(List L,ElementType X){Position p=L;/*p指向L的第1个结点*/while(p&&p->Data!=X)p=p->next;/*下列语句可以用 return p;替换*/if(p) return p;else return ERROR;}/*带头结点的插入*//*注意:在插入位置参数P上与课程有所不同,课程中i是序列位序(从1开始),这里P是链表结点指针,在P之前插入新结点 */bool Insert(List L,ElementType X,Position P){/*这里默认L有头结点*/Position tmp,pre;/*查找P的前一个结点*/for(pre=L;pre&&pre->Next!=P;pre=pre->Next);if(pre==NULL){/*P所指的结点不在L中*/printf("插入位置参数错误\n");return false;}else{/*找到了P的前一个结点pre*//*在P前插入新结点*/tmp=(Position)malloc(sizeof(struct LNode));/*申请、填装结点*/tmp->data=X;tmp->Next=P;pre->Next=tmp;return true;}}/*带头结点的删除*//*注意:在删除位置参数P上与课程有所不同,课程中i是序列位序(从1开始),这里P是拟删除结点指针*/bool Delete(List L,Position P){/*这里默认L有头结点*/ Position tmp, pre; /*查找P的前一个结点*/ for(pre=L;pre&&pre->Next!=P;pre=pre->Next);if(pre==NULL||P==NULL){/* P所指的结点不在L中 */printf("删除位置参数错误\n");return false;}else{/*找到了P的前一个结点pre*/ /*将P位置的结点删除*/ pre->Next=P->Next; free(P); return true;}}
阅读全文
1 0
- 数据结构学习-线性表-链表的代码实现
- 数据结构学习-线性表-顺序表的代码实现
- 数据结构学习笔记(三)--线性表的实现代码(未完)
- 数据结构中线性表的c语言代码实现
- java数据结构之线性表代码实现
- 数据结构 线性表以及Java代码实现
- 数据结构中的线性表代码实现
- 数据结构学习之线性表的顺序实现(python 实现)
- 数据结构学习----线性表(Java版的实现)
- 数据结构学习----线性表的链式表示(Java实现)
- 数据结构学习笔录——线性表的实现
- 数据结构学习---线性表链表实现
- 【C++数据结构学习笔记---线性表】用单链表实现线性表
- 数据结构学习---线性表
- 数据结构学习-线性表
- 【数据结构学习】线性表
- 数据结构 线性表算法的实现
- 数据结构线性表顺序结构的实现
- FPGA中LUT设计
- 怎么安装和配置jdk
- 查看MySQL库、表所占磁盘空间大小
- Android studio的build.gradle的dependency的版本号后面的‘+’加号
- 【Freemark】-基本数据类型
- 数据结构学习-线性表-链表的代码实现
- 信息管理系统首页
- 算法图解的快速排序
- 排序:简单排序-归并
- python 决策树实现案例
- html5加js超简短代码写出饿了么LBS移动地图点餐系统
- 所有的水仙花数
- Java开发之道
- JTable常见用法细则