当前位置: 首页 > 面试题库 >

实现双向链表删除一个节点P,在节点P 后插入一个节点,写出这两个函数。

陆俊智
2023-03-14
本文向大家介绍实现双向链表删除一个节点P,在节点P 后插入一个节点,写出这两个函数。相关面试题,主要包含被问及实现双向链表删除一个节点P,在节点P 后插入一个节点,写出这两个函数。时的应答技巧和注意事项,需要的朋友参考一下

【参考答案】

// 删除操作
Status ListDelete_DuL(DuLinkList &L,inti,Ele mType &e)
{
if(!(p=G e tElemP_DuL(L,i))) return ERROR;
e=p->data;
p->prior->next=p->next;
p->next->prior=p->pror;
free(p);
return OK;
}
// 插入操作
Status ListInsert_DuL(DuLinkList &L,inti,ElemType &e)
{
if(!(p=G e tElemP_DuL(L,i)))
return ERROR;
if(!(s=(DuLinkList)malloc(sizeof(DuLNode))))
return ERROR;
s->data=e;
s->pri or =p;
p-> next -> prior =s;
p->next=s;
s->next=p->next->next;
return OK;
}

 类似资料:
  • 以下代码删除双链接列表中的第一个节点。 如果列表只包含1个元素,我们将last的引用设置为null。我的问题是,我们为什么不将first的引用设置为null?这会有什么不同吗?

  • 问题内容: 我正在练习使用链表节点,遇到了一个我不知道如何回答的问题。如何删除链接列表中的最后一个节点。下面的代码适用于所有条目的最后一个节点。最后一个不会被删除。 节点类别 主要 问题答案: 我想您的最后一个元素失败了。最后一个元素将没有元素。因此,不会将最后一个元素与传递的字符串进行比较。您应该使用调试器进行跟踪。

  • 我正在为我的Data Structures类编写一个项目,该项目要求我编写一个类来实现INT的链接列表。 为节点使用内部类 包括以下方法 编写一个测试程序,使您能够以任意顺序使用所需的任何数据测试所有方法 我必须创建一个名为“public int deleteFromFront()”的方法。此方法旨在“删除列表前面的节点,并返回其中的int,如果列表为空,则返回null。”下面是我的代码。然而,当

  • 我正在尝试从单链接列表中删除最后一个节点。但我仍然无法在代码中解决此错误。我的方法没有删除最后一个节点。调用delete方法后,它仍然显示我要删除的节点。列表的其余部分将被删除,但最后一个节点本身不会被删除。你能告诉我我遗漏了什么,或者错误在哪里吗? LinkedList: 列表: 节点:

  • 公共类LinkedList11{//私有内部类节点 }

  • 下面是链接列表代码中的删除节点,它将头指针和要删除的位置作为参数(链接列表中的位置索引从零开始)。删除后,返回指向head的指针。 假设列表:20-2-19-7-3-6。要删除的位置是2(节点19要删除,因为索引从零开始)。 删除并打印后,它会显示:20-2-0-3-6。(即,直接位于已删除节点旁边的节点打印0) 但是如果我删除“free(head)”行,那么它将打印:20-2-7-3-6(正确)