链表结构有关的算法
来源:互联网 发布:mac装win8还是win10 编辑:程序博客网 时间:2024/06/08 09:41
一直一个单链表求问题:
1. 如何判断链表是否有环?
采用快慢指针方式,从头指针开始,快指针每次移动2步,慢指针每次移动一步,如果存在环,则二者会相遇,如果不存在环,fast会遇到NULL指针而停止。
emptyListNode *fast=head;ListNode *slow=head;while(slow->next!=NULL && fast->next->next!=NULL){ slow=slow->next; fast=fast->next->next; if(fast==slow) return true;}
2. 如何知道环的长度?
方法:从第一次碰撞开始,slow和fast都从此处开始,再次相遇的位置所经历的长度就是环的长度。
3. 如何找出环的连接点
方法:利用定理->从碰撞点出发,到连接点的距离跟head到连接点的距离相等。
4. 如何求出单链表的长度?
方法:利用2中求出的环长+3中head到连接点的长度=单链表的长度。
阅读全文
0 0
- 链表结构有关的算法
- 有关SEO结构的算法
- 有关链表的经典算法
- sql 与表结构有关的
- 和链表有关的算法题(C++)
- 有关线性表的一些算法题
- 图的有关算法
- 有关图的算法
- 有关算法的理解
- 有关算法的网站
- 有关栈的算法
- 有关阶乘的算法
- 有关算法的基本概念
- 单链表的有关算法
- 算法的有关释义
- 有关星号的算法
- 有关ActivityManager的关系结构
- 有关cascade的结构体
- 创造自己的数字货币(1)--搭建比特币核心运行环境
- linux子进程执行起点
- hadoop集群安装配置
- 联想小新固态硬盘安装Win7过程
- python实现顺序查找和折半查找
- 链表结构有关的算法
- linux中的工作排程
- js数字转换总结
- [leetcode]620. Not Boring Movies
- Mysql技术内幕InnoDB存储引擎读书笔记--《七》事务
- 七、模板方法模式——设计模式学习笔记
- 对tomcat来说,每一个进来的请求(request)都需要一个线程,直到该请求结束。
- Vue 2.0 高级实战-开发移动端音乐WebApp
- AVA反射(1)