leetcode-相交链表

160. 相交链表

注:两个链表相交不是指两个节点的值相等,而是指节点所在的地址

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution:
    def getIntersectionNode(self, headA: ListNode, headB: ListNode) -> Optional[ListNode]:
        curA = headA
        curB = headB
        lenA = 0
        lenB = 0
        # 求出两个链表的长度
        while curA:
            lenA += 1
            curA = curA.next
        while curB:
            lenB += 1
            curB = curB.next
        # 这个地方是因为上面求长度的时候已经遍历到curA和curB的末尾了
        curA = headA
        curB = headB
        if lenA > lenB:
            lenA, lenB = lenB, lenA
            curA, curB = curB, curA
        # 使curA和curB在同一起点上
        for _ in range(lenB - lenA):
            curB = curB.next
        
        while curA:
            if curA == curB:
                return curA
            else:
                curA = curA.next
                curB = curB.next
        return None

相关推荐

  1. leetcode-相交

    2024-01-24 12:02:03       37 阅读
  2. LeetCode206相交

    2024-01-24 12:02:03       31 阅读
  3. 相交的判断(leetcode

    2024-01-24 12:02:03       11 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-24 12:02:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-24 12:02:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-24 12:02:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-24 12:02:03       20 阅读

热门阅读

  1. tomcat、mysql连接数配置

    2024-01-24 12:02:03       29 阅读
  2. 05-使用结构体构建相关数据

    2024-01-24 12:02:03       27 阅读
  3. 2024最新版 Xmind for Windows下载安装教程

    2024-01-24 12:02:03       55 阅读
  4. Matlab神经网络

    2024-01-24 12:02:03       38 阅读
  5. 【Python实现进行图像文本识别】

    2024-01-24 12:02:03       38 阅读
  6. transformer beginner

    2024-01-24 12:02:03       35 阅读
  7. 【从浅到深的算法技巧】链表 补

    2024-01-24 12:02:03       30 阅读
  8. Hive之set参数大全-13

    2024-01-24 12:02:03       26 阅读