gpt4 book ai didi

c++ - 删除循环链表c++中的节点?

转载 作者:太空宇宙 更新时间:2023-11-04 14:36:38 25 4
gpt4 key购买 nike

编辑:使用 C++ 编写代码。

void circularList::deleteNode(int x)
{
node *current;
node *temp;
current = this->start;

while(current->next != this->start)
{
if(current->next->value == x)
{
temp = current->next;
current->next = current->next->next;
delete current->next;
}
else{
current = current->next;
}
}
}

添加了 else 对不起,我有点忘了复制那部分代码,是的,它是为了学习目的。我是使用 C++ 编码的新手,可能会因为菜鸟而感到抱歉。

还有这行代码

this->start->value == x

我不确定你的意思或你认为它的去向,是的,链表中有节点,并假设它始终至少有 1 个节点。

最佳答案

想想这两行:

current->next = current->next->next;

删除当前->下一个;

尝试确定您实际删除的是什么(不是 current->next;,至少不是您要删除的那个)。

关于c++ - 删除循环链表c++中的节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2430910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com