[剑指offer]面试题37.两个链表中的第一个公共节点
来源:互联网 发布:逆行武侠 知乎 编辑:程序博客网 时间:2024/06/08 11:35
输入两个链表,找出它们的第一个公共结点。
/*struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { }};*/class Solution {public: ListNode* FindFirstCommonNode( ListNode* pHead1, ListNode* pHead2) { // 1.先求两链表长度 int len1 = 0; int len2 = 0; ListNode* pCur1 = pHead1; ListNode* pCur2 = pHead2; while(pCur1){ ++len1; pCur1 = pCur1->next; } while(pCur2){ ++len2; pCur2 = pCur2->next; } pCur1 = pHead1; pCur2 = pHead2; // 2.长的先行 abs(len1-len2)步 if(len1 >= len2){ for(int i = 0; i < len1 - len2; ++i) pCur1 = pCur1->next; }else{ for(int i = 0; i < len2 - len1; ++i) pCur2 = pCur2->next; } // 3.平时移动,相等则返回 while(pCur1 && pCur2){ if(pCur1 == pCur2) return pCur1; pCur1 = pCur1->next; pCur2 = pCur2->next; } return NULL; }};
阅读全文
0 0
- [剑指offer]面试题37.两个链表中的第一个公共节点
- 剑指offer面试题37 两个链表的第一个公共节点
- [剑指offer][面试题37]两个链表的第一个公共节点
- 剑指offer 面试题37—两个链表的第一个公共节点
- 《剑指Offer》面试题:寻找两个链表的第一个公共节点
- 剑指Offer面试题37:两个链表的第一个公共节点
- 剑指offer——面试题37:两个链表的第一个公共节点
- 剑指offer-面试题37 两个链表的第一个公共节点
- 【面试题】剑指Offer-37-求两个链表的第一个公共节点
- 【剑指offer】面试题52:两个链表的第一个公共节点
- 剑指offer-面试题37.两个链表的第一个公共结点
- 剑指Offer---面试题37:两单链表中第一个公共节点
- 剑指offer-两个链表的第一个公共节点
- 【剑指offer】两个链表的第一个公共节点
- 剑指offer-两个链表的第一个公共节点
- 【剑指offer】两个链表的第一个公共节点
- 剑指offer------两个链表的第一个公共节点
- 《剑指offer》两个链表的第一个公共节点
- Java自动装箱、自动拆箱
- Qt Creator 使用笔记
- 在学习前端的路上
- Python-Matplotlib(3) 条形图实战
- Django学习(1):环境搭建
- [剑指offer]面试题37.两个链表中的第一个公共节点
- Windows搭建python开发环境
- linux初学者-系统启动故障篇
- DNS nginx 在架构中的巧用
- 行内元素与块级元素
- 十大Intellij IDEA快捷键
- 深入浅出 消息队列 ActiveMQ
- Apache
- 算法学习笔记 -- 8. two-sum review