百度算法工程师面试高频真题及详细答案.docxVIP

  • 2
  • 0
  • 约9.06千字
  • 约 10页
  • 2026-06-24 发布于河北
  • 举报

百度算法工程师面试高频真题及详细答案.docx

百度算法工程师面试高频真题及详细答案

一、编程基础题(6题,含代码+工程细节)

1.链表环检测与入口节点(百度高频必考题)

题目:给定一个链表,判断是否存在环。若存在,返回进入环的第一个节点;否则返回None。

示例:输入head=[3,2,0,-4](-4指向2),输出2。

classListNode:

def__init__(self,x):

self.val=x

self.next=None

defdetectCycle(head:ListNode)-ListNode:

ifnotheadornothead.next:#边界case:空链表或单节点

returnNone

slow=fast=head

#第一步:快慢指针判断是否有环

whilefastandfast.next:

slow=slow.next

fast=fast.next.next

ifslow==fast:#相遇说明有环

#第二步:慢指针回表头,双指针同步移动找入口

slow=head

whileslow!

文档评论(0)

1亿VIP精品文档

相关文档