【发布时间】:2019-02-26 08:28:09
【问题描述】:
我正在寻找清除链表的解决方案,这就是我得到的。
我不确定如何完成这个:
void clearRecursively(LIST **presentNode, LIST **endNode){
if (*presentNode == NULL)
return;
LIST *nextNode;
clearRecursively(&nextNode, endNode);
*presentNode = NULL;
*endNode = NULL;
}
【问题讨论】:
-
链表是线性结构,不太适合递归算法。如果您的问题是螺丝,请不要使用锤子。
-
@toohonestforthissite 链表是一种递归结构...
-
@user633183:不是这样。指针不是它指向的对象。它与递归有关的只是你可以用它来实现一个堆栈,但那是另一回事。只是出于好奇:那么环形列表会是无限递归吗?
-
你的工作是让这个明显损坏的代码工作吗?我建议你先找到一些简单的、有效的链表代码,然后用它来了解它们应该如何工作。
标签: c list recursion linked-list nodes