获取某个元素的下一个元素NextElem(LinkList L, ElemType cur_e, ElemType * next_e)
时间: 2023-05-17 19:06:32 浏览: 119
这是一个关于链表的问题,下面是代码实现:
Status NextElem(LinkList L, ElemType cur_e, ElemType *next_e) {
// 遍历链表,找到当前元素
LNode *p = L->next;
while (p && p->data != cur_e) {
p = p->next;
}
// 如果当前元素不存在或者是最后一个元素,则返回错误
if (!p || !p->next) {
return ERROR;
}
// 返回下一个元素的值
*next_e = p->next->data;
return OK;
}
相关问题
用c语言写出获取某个元素的下一个元素NextElem(LinkList L, ElemType cur_e, ElemType * next_e)
下面是获取某个元素的下一个元素NextElem(LinkList L, ElemType cur_e, ElemType * next_e)的C语言代码:
Status NextElem(LinkList L, ElemType cur_e, ElemType * next_e) {
// 遍历链表,找到当前元素
LNode *p = L->next;
while (p != NULL && p->data != cur_e) {
p = p->next;
}
if (p == NULL || p->next == NULL) {
// 没有找到当前元素或者当前元素没有下一个元素
return ERROR;
}
// 找到当前元素的下一个元素
*next_e = p->next->data;
return OK;
}
编程实现单向链表获取某个元素的下一个元素;NextElem(L, cur_e, &next_e);
next_e)。
可以使用以下代码实现:
```
Status NextElem(LinkList L, ElemType cur_e, ElemType &next_e) {
// 遍历链表,找到当前元素
LNode *p = L->next;
while (p && p->data != cur_e) {
p = p->next;
}
// 如果找到了当前元素,返回它的下一个元素
if (p && p->next) {
next_e = p->next->data;
return OK;
}
// 如果没找到当前元素或者当前元素没有下一个元素,返回错误
return ERROR;
}
```
其中,LinkList 是链表的类型,ElemType 是链表中元素的类型,cur_e 是当前元素,next_e 是下一个元素。函数返回 OK 表示成功,返回 ERROR 表示失败。
阅读全文