多语言展示
当前在线:1567今日阅读:26今日分享:39

如何在单链表中读取第i个数据元素。

在已存在的线性链表中读取第i个元素。
工具/原料
1

电脑

2

c语言编译器

方法/步骤
1

设读取函数为getelem(L,i,e)

2

设一指针p计入L->next,并且用一数j计入第几号元素,j初值为1.p=L->next;j=1;

3

用一个循环找到第i号元素:while(p&&jnext;++j;}

4

判断:当p是否为0或j大于i是得到的结果是错误的;if(!p||j>i)return ERROR;

5

取出第i号元素,程序运行成功!e=p->data;return OK;

6

合总为:getelem(LinkList L,int i,ElemType &e){p=L->next;j=1;while(p&&jnext;++j;}if(!p||j>i)return ERROR;e=p->data;return OK;}

注意事项
1

当p是否为0或j大于i是得到的结果是错误的;

2

单链表储存结构:typedef struct LNode{ElemType data; struct LNode *next;}LNode,*LinkList;

推荐信息