网易算法工程师面试题及详细答案.docxVIP

  • 0
  • 0
  • 约8.93千字
  • 约 9页
  • 2026-06-25 发布于河北
  • 举报

网易算法工程师面试题及详细答案

一、基础编程与数据结构(高频必问)

1.题目:反转单链表(手写代码,网易高频手撕题)

问题:定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。示例:输入1→2→3→4→5→null,输出5→4→3→2→1→null。

答案:

核心思路:用三个指针(pre、cur、next)遍历链表,依次反转每个节点的指向,避免链表断裂。不使用额外空间,时间复杂度O(n),空间复杂度O(1),是面试中最简洁高效的实现方式。

手写代码(Python,贴合面试实际书写习惯):

python

classListNode:

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

self.val=val

self.next=next

defreverseList(head):

#边界条件:空链表或只有一个节点,直接返回

ifnotheadornothead.next:

returnhead

pre=None#前驱节点,初始为null

cur=head#当前节点,初始为头节点

whilecur:

next_node=cur.next#先保存下一个节点,防止断链

文档评论(0)

1亿VIP精品文档

相关文档