线性表链式 实现
来源:互联网 发布:策略交易软件如何? 编辑:程序博客网 时间:2024/05/17 08:39
#include "global.h"
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode,* LinkList;
Status GetElem_L(LNode L,int i, ElemType &e ) //L为带头结点的单链表的头指针
{ //当第i个元素存在时,其值赋给e并返回OK,否则返回ERROR
int j=1;
LNode *p=L .next;
while(j<i && p) //j++不能写在while语句里面 否则当i==1时会造成 return ERROR
{
++j;
p=p->next;
}
if(!p || j>i ) //j>i是为了排除i小于1的情况
return ERROR ;
else
e=p->data;
return OK ;
}
Status ListInsert_L(LinkList L, int i ,ElemType e)//在线性表第i个位置前插入元素e
{
int j=0;
LNode *p=L ;
while(j<i -1 && p) //j++不能写在while语句里面 否则当i==1时会造成 return ERROR
{
j++;
p=p->next;
}
if(!p || j>i -1) //i小于1或者大于表长加1
return ERROR ;
LNode *q;
q=( LinkList)malloc(sizeof (LNode));
if(!q)
return OVERFLOW ;
q->data= e;
q->next=p->next;
p->next=q;
return OK ;
}
Status InitList_L(LinkList L)
{
L->next=NULL ;
return OK ;
}
Status Listdisplay_L(LNode L)
{
int i=1;
LNode *p=L .next;
while(p)
{
printf( "%3d ",p->data);
p=p->next;
if(i++%10==0)
putchar( '\n');
}
return OK ;
}
0 0
- 线性表链式实现
- 线性表链式实现
- 线性表链式 实现
- 数据结构---线性表链式实现
- 线性表链式存储实现
- 线性表链式存储的实现
- 线性表链式存储C++实现
- 线性表链式存储的实现
- 线性表链式存储的实现详解
- 线性表链式存储的实现详解
- 线性表链式存储实现各种操作
- 基础数据结构--线性表链式实现
- 线性表链式表示和实现
- 线性表链式存储结构实现 --单链表
- 线性表链式存储_api函数实现
- 线性表链式存储_api函数实现
- 线性表链式表示和实现
- 线性表链式存储结构一种实现
- 上传 '运行时错误 错误
- 查看linux系统版本命令
- 放大撒撒打发撒打发撒的发生的发斯蒂芬
- Lua中的pairs们(pairs,ipairs,gmatch)
- WebService客户端调用总是出错
- 线性表链式 实现
- Android成长之路-LayoutInflater和inflate的用法
- js 密码强度检测
- *Leetcode_construct-binary-tree-from-preorder-and-inorder-traversal
- ConsoleAppender 控制台标准输出流
- 疯狂IOS讲义(下) 的代码
- 打灰机遇到的问题之 CCAnimation::addSpriteFrameWithFileName()
- 线性表顺序实现
- DropDownList