zoukankan      html  css  js  c++  java
  • 【手绘漫画】图解LeetCode之相交链表(LeetCode 160)

    在这里插入图片描述

    图解LeetCode刷题计划

    1、写在前面

    手绘漫画系列正式上线!!!“图解LeetCode刷题计划” 来了!!!

    今天是第二十一期,争取每天一期,最多两天一期,欢迎大家监督我。。。
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述

    2、题目

    首先看一下题目,
    在这里插入图片描述
    非常巧妙的一个题,看到思路的时候都惊呆了,这种如果做过就会有印象,下次遇到可能就能很好地做出来了!
    在这里插入图片描述

    3、正文

    一起来看:

    思路是双指针,分别指向两个链表的头节点,循环这个链表,之后再去循环另一个链表。

    分为两种情况:

    • 一种是没有交点;
      在这里插入图片描述
      循环之后就返回 NULL,因为没有交点。

    • 另一种是有交点;
      在这里插入图片描述
      循环之后两个指针都指向了交点。


    有一种很浪漫的说法,就是——如果有缘,必会相见~
    在这里插入图片描述
    在这里插入图片描述

    4、代码

    /**
     * Definition for singly-linked list.
     * struct ListNode {
     *     int val;
     *     ListNode *next;
     *     ListNode(int x) : val(x), next(NULL) {}
     * };
     */
    class Solution {
    public:
        ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) {
            auto a=headA,b=headB;
            while(a!=b){
                if(a) a=a->next;
                else a=headB;
                if(b) b=b->next;
                else b=headA;
            }
            return a;
        }
    };
    

    在这里插入图片描述
    在这里插入图片描述

    如果有幸帮到你,请帮我点个【赞】,给个【关注】!如果能顺带【评论】给个鼓励,我将不胜感激。

    如果想要更多的资源,欢迎关注 @我是管小亮,文字强迫症MAX~

  • 相关阅读:
    PL/SQL注册码
    分页sql
    js获取url值
    C语言中的bool类型 stdbool.h
    语音朗读小程序
    50. Pow(x, n)
    二维数组旋转
    用一位数组代替二维数组作为形参使用
    单链表排序——交换数据成员
    C++重载输入流、输出流运算符
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13302552.html
Copyright © 2011-2022 走看看