【数据结构】单链表—判断一个链表是否形成了环形结构 — 快慢指针
来源:互联网 发布:it外包公司怎么样 编辑:程序博客网 时间:2024/05/16 16:16
题目:判断一个链表是否形成了环形结构?
思路:定义两个指针,同时从链表的头节点出发,一个指针一次走一步,另一个指针一次走两步,如果走的快的指针追上走的慢的指针,那么链表就是环形链表,如果走的快的指针走到了链表的末尾都没有追上第一个指针,那么这个链表就不是环形链表。
代码如下:
template<class T>struct ListNode{ T _value; ListNode<T>* _next; ListNode(const T& value) :_value(value) ,_next(NULL) {}};template<class T>class List{public: List() :_head(NULL) {} bool PushBack(); bool IsRing()//判断一个链表是否为环形,快慢指针 { ListNode<T>* fast = _head; ListNode<T>* slow = _head; while(fast != NULL) { slow = slow->_next; fast = fast->_next->_next; if(slow == fast) return true; } return false; }private: ListNode<T>* _head;};
0 0
- 【数据结构】单链表—判断一个链表是否形成了环形结构 — 快慢指针
- 判断单链表是否形成环形结构,快慢指针
- 剑指-判断一个单向链表是否形成了环形结构
- 判断一个单向链表是否形成了环状结构
- 运用快慢指针判断链表是否有环
- 链表趣题---快慢指针判断链表是否有环
- 面试题:判断单链表是否为循环链表-快慢指针
- 数据结构——6 单链表是否是环形链表
- 【数据结构】单链表—求链表中间节点(只遍历一次链表)— 快慢指针
- 【java基础 13】两种方法判断hashmap中是否形成环形链表
- 用快慢指针判断单链表环,找到环入口 扩展到判断两个链表是否相交
- 使用快慢指针判断单链表是否存在环
- 快慢指针 —— 链表中点
- 判断链表是否有环为什么快慢指针一定会相遇
- 快慢指针判断单向链表是否有环及找环入口
- 数据结构——快慢指针法查找链表中间值
- 【数据结构】一个关于用快慢指针处理循环链表的有趣小问题
- 快慢链表和快慢指针
- hbase 权限控制源码分析
- 回归分析绘图,预测,残差分析
- HDU-2199-Can you solve this equation?【二分】
- 解决kali linux 2.0(2016.01)的安装内核头部出现错误:E: Unable to locate package linux-headers-4.3.0-kali1-amd64
- 从java序列化来聊聊目前流行的几个编解码框架
- 【数据结构】单链表—判断一个链表是否形成了环形结构 — 快慢指针
- 【leetcode】343. Integer Break
- uva1583-digit generator
- word转换成PDF文件的几个常见方法
- (四)find 之grep cut paste sort awk sed find uniq 全面总结
- fragment调用SharedPreferences
- 将博客搬至CSDN
- 中国互联网技术联盟发布首个“互联网+”三业态标准
- 基本概念及操作