[剑指Offer] 36.两个链表的第一个公共结点
题目描述
【思路】找出两个链表的长度,然后让长的走两个链表的长度差,然后再一起走(因为两个链表用公共的尾部)。
1 /* 2 struct ListNode { 3 int val; 4 struct ListNode *next; 5 ListNode(int x) : 6 val(x), next(NULL) { 7 } 8 };*/ 9 class Solution 10 { 11 public: 12 int Find_Length(ListNode* p){ 13 int len = 0; 14 while(p){ 15 len ++; 16 p = p->next; 17 } 18 return len; 19 } 20 void Walk_Step(ListNode* &p,int x){ 21 while(x--){ 22 p = p->next; 23 } 24 } 25 ListNode* FindFirstCommonNode( ListNode* pHead1, ListNode* pHead2) 26 { 27 int len1 = Find_Length(pHead1); 28 int len2 = Find_Length(pHead2); 29 int x = abs(len1 - len2); 30 if(len1 < len2) 31 Walk_Step(pHead2,x); 32 else 33 Walk_Step(pHead1,x); 34 while(pHead1 != pHead2){ 35 pHead1 = pHead1->next; 36 pHead2 = pHead2->next; 37 } 38 return pHead1; 39 } 40 };
转载于:https://www.cnblogs.com/lca1826/p/6515634.html
[剑指Offer] 36.两个链表的第一个公共结点相关推荐
- 《剑指offer》-- 两个链表的第一个公共结点、链表中环的入口结点、删除链表中的重复结点
一.两个链表的第一个公共结点: 1.题目: 输入两个链表,找出它们的第一个公共结点. 2.解题思路: (1)第一种:找出两个链表的长度,然后让长的链表先走两个链表的长度差,接着两个链表一起走. (2) ...
- 剑指offer:两个链表的第一个公共结点
题目描述 输入两个链表,找出它们的第一个公共结点. 解题思路 /* struct ListNode {int val;struct ListNode *next;ListNode(int x) :va ...
- 【LeetCode】剑指 Offer 52. 两个链表的第一个公共节点
[LeetCode]剑指 Offer 52. 两个链表的第一个公共节点 文章目录 [LeetCode]剑指 Offer 52. 两个链表的第一个公共节点 一.双指针 一.双指针 设 "第一个 ...
- 剑指 Offer 52. 两个链表的第一个公共节点
题目:剑指 Offer 52. 两个链表的第一个公共节点 ,哈哈,我们今天来看一道很简单的题嘛,这是选自剑指 Offer 上的一道题,好了,我们一起来看看题意吧: 考虑到直接复制题目,或者截屏的方式不 ...
- 36 剑指offer--链表--两个链表的第一个公共结点
两个链表的第一个公共结点 题目 输入两个链表,找出它们的第一个公共结点. 思路 这道题和160.Intersection of Two Linke ...
- 《剑指offer》两个链表的第一个公共节点
题目:输入两个链表,找出它们的第一个公共结点. 解析:暴力更直接.直接遍历两个链表分别存储到list1.list2,然后在list1和list2中找公共节点就好了 /* public class Li ...
- 剑指Offer之两个链表的第一个公共节点
题目描述 输入两个链表,找出它们的第一个公共结点. 解题思路 首先,如果都是空链表,那么肯定返回空.两个单链表假设有公共节点,那么肯定是"Y"字型的. 先计算两个链表的长度,求出长 ...
- 【Java】剑指 Offer 52. 两个链表的第一个公共节点
题目 :输入两个链表,找出它们的第一个公共节点. 算法思路 : 首先我们要明确,两个链表相交,是Y形状的 两个链表相交,是next域相同 因为两个单链表的长度是不一样的,所以我们需要让长的那个链表,引 ...
- 剑指 Offer 52. 两个链表的第一个公共节点(C语言)
*输入两个链表,找出它们的第一个公共节点. 如下面的两个链表: 在节点 c1 开始相交. 示例 1: 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = ...
- 【算法】剑指 Offer 52. 两个链表的第一个公共节点
文章目录 1.概述 2. 有序 3. 循环 4. set集合 1.概述 输入两个链表,找出它们的第一个公共节点. 如下面的两个链表: 在节点 c1 开始相交.
最新文章
- ERROR: JVMPI, an experimental interface, is no longer supported.
- python3精要(5)-最长公共前缀Trie树
- Appleman and Tree CodeForces - 461B(树形dp)
- [导入]流氓软件案落定 “很棒小秘书”终审败诉
- Python入门:Anaconda和Pycharm的安装和配置
- java 获取自绘窗口_iPhone中自绘实现步骤
- lorenz系统simulink仿真_simulink控制系统仿真之控制系统的分析方法(2)(频域分析法)...
- 20151209小问题
- abovedisplayskip无效_初学latex的模板,里面有错,哪位大神能不能帮忙看看啊?不甚感激!...
- 怎么在长方体上挖孔_被雷军狂喷的挖孔屏到底好不好?分析你必须知道的优缺点!...
- GoodUserInterface 模仿页面功能
- 计算机机房安全管理问题与措施,机房管理中存在的问题及处理对策
- android app 检测是否开启了开发者模式
- 2014年9月-前端开发月刊
- 中柏pad7安装linux,中柏电脑下载与安装win7iso镜像系统教程
- Wireshark抓取VLAN包
- 程序性能优化之编译器篇(Racoon)
- MP4文件格式简要解析---代码解析
- G.726音频编解码原理介绍
- java 类大写_记java实体类属性名为全部为大写踩的坑(基础)
热门文章
- nyoj1110 一个简单数学题
- apache php的权限,Unix上的Apache PHP写权限
- PAT 乙级A1025 适合当算法入门练习题做
- 初学者C语言输入输出挖坑填补处须知
- .net 考试系统人一多就断开了_【项目】Java在线考试系统
- ppocr 源码阅读:ppocr.modeling.architecures 之build_model模块
- wsl2安装cuda方法——官方教程走不通
- 14Penrose广义逆(II)
- matlab聚类分析_数据挖掘——聚类分析
- h5商城模板_几个常用H5制作软件、网站推荐