在已存在的线性链表中读取第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;