2026年小米核心技术岗位面试题目剖析.docxVIP

  • 0
  • 0
  • 约7.73千字
  • 约 23页
  • 2026-02-09 发布于福建
  • 举报

2026年小米核心技术岗位面试题目剖析.docx

第PAGE页共NUMPAGES页

2026年小米核心技术岗位面试题目剖析

一、编程能力测试(共5题,每题10分,总分50分)

题目1:

题目:

编写一个函数,实现快速排序算法,并对以下数组进行排序:`[64,34,25,12,22,11,90]`。

要求:

1.使用递归实现快速排序;

2.输出排序前后的数组;

3.分析时间复杂度和空间复杂度。

答案:

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)

测试数组

arr=[64,34,25,12,22,11,90]

sorted_arr=quick_sort(arr)

print(排序前:,arr)

print(排序后:,sorted_arr)

时间复杂度:平均O(nlogn),最坏O(n^2);空间复杂度:O(logn)

解析:

快速排序通过分治法实现,选择基准值(pivot)将数组分为三部分,然后递归排序左右子数组。时间复杂度取决于基准值的选择,平均情况下为O(nlogn),但最坏情况下(如已排序数组)为O(n^2)。空间复杂度为O(logn),主要消耗在递归调用栈上。

题目2:

题目:

实现一个LRU(LeastRecentlyUsed)缓存,支持以下操作:

1.`get(key)`:获取键对应的值,返回值或-1;

2.`put(key,value)`:插入或更新键值对,当缓存容量满时,删除最久未使用的项。

要求:

1.使用哈希表和双向链表实现;

2.描述数据结构和关键操作;

3.分析时间复杂度。

答案:

python

classDLinkedNode:

def__init__(self,key=0,value=0):

self.key=key

self.value=value

self.prev=None

self.next=None

classLRUCache:

def__init__(self,capacity:int):

self.capacity=capacity

self.cache={}

self.head,self.tail=DLinkedNode(),DLinkedNode()

self.head.next=self.tail

self.tail.prev=self.head

def_add_node(self,node):

node.prev=self.head

node.next=self.head.next

self.head.next.prev=node

self.head.next=node

def_remove_node(self,node):

prev_node=node.prev

next_node=node.next

prev_node.next=next_node

next_node.prev=prev_node

def_move_to_head(self,node):

self._remove_node(node)

self._add_node(node)

def_pop_tail(self):

res=self.tail.prev

self._remove_node(res)

returnres

defget(self,key:int)-int:

node=self.cache.get(key,None)

ifnotnode:

return-1

self._move_to_head(node)

returnnode.value

defput(self,key:int,value:int)-None:

node=self.cache.get(key)

ifnotnode:

newNode=DLinkedNode(key,value)

self.cache[key]=newNode

self._add_node(newNode)

iflen(self.cache)self.capacity:

tail=self._pop_tail()

del

文档评论(0)

1亿VIP精品文档

相关文档