上一页

ⓘ Floyd判圈算法




                                     

ⓘ Floyd判圈算法

Floyd判圈算法 ,又称 龟兔赛跑算法 ,是一个可以在有限状态机、迭代函数或者链表上判断是否存在环,求出该环的起点与长度的算法。该算法据高德纳称由美国科学家罗伯特 弗洛伊德发明,但这一算法并没有出现在罗伯特 弗洛伊德公开发表的著作中。

如果有限状态机,反复功能或名单上存在的戒指,然后在一个圈速度不同,沿2指针一定会在某一点上遇到的问题。 在同一时间,显然,如果从起点相同,甚至如果出发点是,不在环在同一时间开始一个不同的前进速度的2指针最终会遇到,然后它可以确定存在的一环,并可以获得2谁满足本地的环的起点和长度。