2026年百度算法工程师面试要点与答案.docxVIP

  • 2
  • 0
  • 约5.36千字
  • 约 15页
  • 2026-01-15 发布于福建
  • 举报

2026年百度算法工程师面试要点与答案.docx

第PAGE页共NUMPAGES页

2026年百度算法工程师面试要点与答案

一、编程能力测试(5题,每题20分,共100分)

1.题目:

给定一个链表,删除链表的倒数第n个节点,并返回新的链表头。例如,给定链表1-2-3-4-5,n=2,返回1-2-3-5。

答案:

python

classListNode:

def__init__(self,val=0,next=None):

self.val=val

self.next=next

defremoveNthFromEnd(head:ListNode,n:int)-ListNode:

dummy=ListNode(0)

dummy.next=head

fast=slow=dummy

快指针先走n+1步

for_inrange(n+1):

iffastisNone:

returnhead#n大于链表长度

fast=fast.next

快慢指针同时走,当快指针到末尾时,慢指针的next就是待删除节点

whilefast:

fast=fast.next

slow=slow.next

slow.next=slow.next.next

returndummy.next

解析:

-使用双指针法,先让快指针走n+1步,确保删除节点时慢指针的ne

文档评论(0)

1亿VIP精品文档

相关文档