查找循环双链表长度的算法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查找循环双链表长度的算法相关的知识,希望对你有一定的参考价值。

我已经建立了一个循环的双向循环列表,我想找到它的长度。我被允许仅在指针列表中使用该功能。在列表中我有一个二进制字段。一个想法我该怎么做?我必须使用二进制字段,我不能使用辅助指针,我必须具有很好的复杂性。

答案

跟踪您开始遍历的元素。开始沿着列表行走并检查每个元素(如果它是您开始的元素)。如果不是,则将计数增加1并继续下一个元素。如果是,您已访问过每个元素,并且计数的当前值是您想要的结果。

另一答案

您可以通过某种方式浏览列表,计算您返回起始元素之前的元素数量!

以上是关于查找循环双链表长度的算法的主要内容,如果未能解决你的问题,请参考以下文章

非循环双链表 | 使访问频率高的元素靠前排列的查找函数

手把手实现双链表

线性表练习之Example037-判断带头节点的循环双链表是否对称

数据结构--线性表的链式存储之循环双链表

[算法]在单链表和双链表中删除倒数第k个结点

线性表文档之循环双链表