2026年华为研发工程师面试题集及解答.docxVIP

  • 5
  • 0
  • 约8.69千字
  • 约 26页
  • 2026-03-30 发布于福建
  • 举报

2026年华为研发工程师面试题集及解答.docx

第PAGE页共NUMPAGES页

2026年华为研发工程师面试题集及解答

一、编程基础与数据结构(共5题,总分25分)

题目1(5分)

编写一个函数,实现快速排序算法。输入一个整数数组,输出排序后的数组。要求:不使用任何外部库,原地排序。

python

defquick_sort(arr):

iflen(arr)=1:

returnarr

pivot=arr[len(arr)//2]

left=[xforxinarrifxpivot]

middle=[xforxinarrifx==pivot]

right=[xforxinarrifxpivot]

returnquick_sort(left)+middle+quick_sort(right)

答案解析:快速排序通过分治思想实现,选择基准值pivot,将数组分为小于、等于、大于三部分,然后递归排序左右两部分。时间复杂度平均为O(nlogn),最坏情况O(n2)。华为对基础算法要求较高,需掌握分治法。

题目2(5分)

实现一个LRU(最近最少使用)缓存,支持get和put操作。要求:使用哈希表和双向链表实现,get操作时间复杂度为O(1),put操作时间复杂度为O(1)。

python

classNode:

def__init__(

文档评论(0)

1亿VIP精品文档

相关文档