日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[Leetcode]160. Intersection of Two Linked Lists

發布時間:2025/3/18 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [Leetcode]160. Intersection of Two Linked Lists 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Write a program to find the node at which the intersection of two singly linked lists begins.

?

For example, the following two linked lists:

A: a1 → a2↘c1 → c2 → c3↗ B: b1 → b2 → b3

begin to intersect at node c1.

?

Notes:

/*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode(int x) {* val = x;* next = null;* }* }*/ public class Solution {public ListNode getIntersectionNode(ListNode headA, ListNode headB) {if (headA==null||headB==null)return null;ListNode curA = headA,curB = headB;while (curA!=null&&curB!=null){if (curA.next ==null&&curB.next==null&&curA!=curB)return null; //如果走到了鏈的盡頭,而這盡頭又不是交//點,說明兩條鏈不相交else if (curA==curB) //如果同時到交點了,就跳出循環break;if (curA.next == null) //下面這段可能需要畫圖理解curA = headB; //如果兩條鏈有交點,則curA和curB到else //交點的距離是相同的curA = curA.next;if (curB.next == null)curB = headA;else curB = curB.next;}return curA;} }

?

    • If the two linked lists have no intersection at all, return?null.
    • The linked lists must retain their original structure after the function returns.
    • You may assume there are no cycles anywhere in the entire linked structure.
    • Your code should preferably run in O(n) time and use only O(1) memory.

轉載于:https://www.cnblogs.com/David-Lin/p/7778509.html

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的[Leetcode]160. Intersection of Two Linked Lists的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。