正在检查链接列表是否为循环列表



我刚刚在这里读到关于乌龟和兔子(慢速和快速跑者)算法的文章,但我真的不明白为什么它被认为是最好的解决方案。

这样做不是更耗时吗:

  • 保存根节点

  • 通过链接列表

  • 在每个新节点上,检查它是否是根节点。

刚刚意识到循环列表不一定需要连接回其头部。它可以在在中间的某个地方有一个循环。这就需要两个"跑步者"。

但是,如果您显式检查"蛇吃自己的尾巴"类型的链表,那么只检查指针与根节点的相等性就足够了,就像我在之前建议的那样

相关内容

  • 没有找到相关文章

最新更新