编程之美:第三章 结构之法 3.6编程判断两个链表是否交叉
2015-08-03 00:50
489 查看
/* 编程判断两个链表是否交叉:(本质判断两个链表是否有公共结点) 给出两个单向链表的头指针,如h1,h2,判断这两个链表是相交。假设两个链表均不带环。 h1->->-> ->->->...->NULL h2->->-> 这道题目: 参见剑指,王道数据结构 让长链表先走iLongLen - iShortLen步之后,两个链表一起走 因为两个链表相交,这两个链表会有共同的节点,而节点地址是相同的 解法三: 由于两个链表都没有换,可以把第二个链表接在第一个链表后面。如果得到的链表有环,则说明这两个链表相交。 解法四: 如果相交,那么两个链表的最后一个节点一定是共有的 先遍历第一个链表,记住最后一个节点,然后遍历第二个链表,到最后一个节点时和第一个链表的最后一个节点做比较,如果相同,那么相交, 时间复杂度为O(Length(h1) + Length(h2)) */
相关文章推荐
- java入门
- LeetCode 210. Course Schedule II(拓扑排序-求有向图中是否存在环)
- 在 ASP.NET MVC 应用中使用 NInject 注入 ASMX 类型的 Web Service
- php正则表达式,在抓取内容进行匹配的时候表现不稳定
- [Java] 利用Java反射机制取代switch catch判断
- java_ EngorgeSnake
- Spring PecClinic宠物医院---安装
- Python内置类型——set
- 安卓代码打包混淆和打包SDK中jar混淆
- C语言宏中"#"和"##"的用法
- cpp整理笔记:标准I/O的工作原理
- 浅谈Python中列表生成式和生成器的区别
- python使用MySQLdb访问mysql数据库的方法
- python实现备份目录的方法
- python中使用序列的方法
- php中ob函数缓冲机制深入理解
- PHP实现递归复制整个文件夹的类实例
- php通过排列组合实现1到9数字相加都等于20的方法
- php基于session实现数据库交互的类实例
- php将远程图片保存到本地服务器的实现代码