剑指Offer之面试题37:两个链表的第一个公共结点
来源:互联网 发布:erp金蝶软件 编辑:程序博客网 时间:2024/05/19 16:51
所有代码均通过G++编译器测试,仅为练手纪录。
//面试题37:两个链表的第一个公共结点
//题目:输入两个链表,找出它们的第一个公共结点。
//面试题37:两个链表的第一个公共结点//题目:输入两个链表,找出它们的第一个公共结点。int GetListLength(ListNode *pHead){ int nLength = 0; ListNode *pNode = pHead; while(NULL != pNode) { pNode = pNode->m_pNext; ++nLength; } return nLength;}ListNode* FindFirstCommonNode(ListNode *pHead1, ListNode *pHead2){ if(NULL == pHead1 || NULL == pHead2) { return NULL; } int nLen1 = GetListLength(pHead1); int nLen2 = GetListLength(pHead2); int nLenDiff = nLen1 - nLen2; ListNode *pHeadLong = pHead1; ListNode *pHeadShort = pHead2; if(nLenDiff < 0) { pHeadLong = pHead2; pHeadShort = pHead1; nLenDiff = nLen2 - nLen1; } while (nLenDiff--) { pHeadLong = pHeadLong->m_pNext; } while (NULL != pHeadLong && pHeadLong != pHeadShort) { pHeadLong = pHeadLong->m_pNext; pHeadShort = pHeadShort->m_pNext; } return pHeadLong;}
ZhaiPillary
2017-01-07
0 0
- 剑指offer之面试题37两个链表的第一个公共结点
- 剑指Offer之面试题37:两个链表的第一个公共结点
- 【剑指offer】面试题37:两个链表的第一个公共结点
- [剑指offer]面试题37:两个链表的第一个公共结点
- 剑指Offer:面试题37 两个链表的第一个公共结点
- 剑指offer 面试题37 两个链表的第一个公共结点
- 《剑指Offer》学习笔记--面试题37:两个链表的第一个公共结点
- 【剑指Offer学习】【面试题37:两个链表的第一个公共结点】
- 剑指Offer面试题37(Java版):两个链表的第一个公共结点
- 剑指Offer----面试题37:两个链表的第一个公共结点
- 剑指offer--面试题37:两个链表的第一个公共结点
- 剑指Offer面试题37(Java版):两个链表的第一个公共结点
- 剑指offer-面试题37-两个链表的第一个公共结点
- 剑指Offer系列-面试题37:两个链表的第一个公共结点
- 剑指offer-面试题37-两个链表的第一个公共结点
- 剑指offer 面试题37 两个链表的第一个公共结点
- 【剑指offer】面试题37:两个链表的第一个公共结点
- 【剑指Offer】面试题37:两个链表的第一个公共结点
- 多表连接分页问题
- 深度学习Caffe实战笔记(11)一句话理解caffe的数据结构
- 【JVM实用参数】(五)新生代垃圾回收
- [AHK]从注册表获取特殊路径
- 【JVM实用参数】(六) 吞吐量收集器
- 剑指Offer之面试题37:两个链表的第一个公共结点
- 练习
- test
- 【JVM实用参数】(七)CMS收集器
- 学习opencv记录(一)
- 项目获取真实的IP地址
- c++ utf8与std::string字符编码转换
- 自定义补全bash complete
- 【总结】UML--用例图