华为研发岗位面试问题及答案.docxVIP

  • 3
  • 0
  • 约8.28千字
  • 约 23页
  • 2026-04-02 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年华为研发岗位面试问题及答案

一、编程与算法(共5题,每题10分,总分50分)

1.题目:

给定一个链表,删除链表的倒数第n个节点,并返回新的链表头。要求不使用额外空间,且时间复杂度为O(n)。

答案:

cpp

structListNode{

intval;

ListNodenext;

ListNode(intx):val(x),next(nullptr){}

};

ListNoderemoveNthFromEnd(ListNodehead,intn){

ListNodedummy=newListNode(0);

dummy-next=head;

ListNodefirst=dummy;

ListNodesecond=dummy;

//先让first走n+1步

for(inti=0;i=n;++i){

if(first==nullptr)returnnullptr;

first=first-next;

}

//让first和second同时走,直到first到达链表末尾

while(first!=nullptr){

first=first-next;

second=second-next;

}

//删除倒数第n个节点

List

文档评论(0)

1亿VIP精品文档

相关文档