- 0
- 0
- 约6.29千字
- 约 17页
- 2026-03-05 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年华为技术部主管面试题集及解答
一、编程与算法(5题,每题10分,共50分)
1.题目:
实现一个函数,输入一个整数数组,返回数组中所有可能的子集。例如,输入`[1,2,3]`,输出`[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]`。
答案:
python
defsubsets(nums):
result=[]
subset=[]
defbacktrack(index):
result.append(subset.copy())
foriinrange(index,len(nums)):
subset.append(nums[i])
backtrack(i+1)
subset.pop()
backtrack(0)
returnresult
测试
print(subsets([1,2,3]))
解析:
使用回溯算法,通过递归构建所有可能的子集。每次选择一个元素加入当前子集,然后继续递归;不选择时跳过,继续递归。最终所有路径的组合即为所有子集。
2.题目:
给定一个包含`n`个节点的无向图,节点编号从`0`到`n-1`。请判断该图是否是二分图(即可以将节点分成两个集合,使得每条边的两个节点属于不同集合)。
答案:
python
fromcollectionsimportdeque
defis_bipartite(graph):
color={}
defbfs(node):
queue=deque([node])
color[node]=0
whilequeue:
current=queue.popleft()
forneighboringraph[current]:
ifneighborincolor:
ifcolor[neighbor]==color[current]:
returnFalse
else:
color[neighbor]=1-color[current]
queue.append(neighbor)
returnTrue
fornodeinrange(len(graph)):
ifnodenotincolor:
ifnotbfs(node):
returnFalse
returnTrue
测试
print(is_bipartite([[1,3],[0,2],[0,2],[0,1]]))#True
print(is_bipartite([[1,2,3],[0,2],[0,1],[0]]))#False
解析:
使用BFS遍历图,为每个节点分配颜色(0或1)。对于每个未访问的节点,从它开始BFS,并交替分配颜色。如果发现相邻节点颜色相同,则不是二分图。
3.题目:
实现一个LRU(最近最少使用)缓存,支持`get`和`put`操作。`get(key)`返回键对应的值,如果不存在返回`-1`;`put(key,value)`插入或更新键值对,如果缓存已满则删除最久未使用的项。
答案:
python
classLRUCache:
def__init__(self,capacity:int):
self.capacity=capacity
self.cache={}
self.order=[]
defget(self,key:int)-int:
ifkeyinself.cache:
self.order.remove(key)
self.order.append(key)
returnself.cache[key]
return-1
defput(self,key:int,value:int)-None:
ifkeyinself.cache:
self.order.remove(key)
eliflen(self.cache)=self.capacity:
oldest=self.order.pop(0)
delself.cache[oldest]
self.cache[key]=value
self.order.append(key)
测试
lru=LRUCache(2)
lru.put(1,1)
lru.put(2,2)
print(lru.get(1))#1
lru.put(3,3)#去除键2
print(lru.get(2))#-1
解析:
使用哈希表存储键值对,维护一个双向链表记录访问顺序。`get`操作时将键移到链表末尾;`
您可能关注的文档
最近下载
- 《羊肚菌林下生产技术规程》(征求意见稿).pdf
- 机械基础-全套PPT课件.pptx
- 党支部班子2026年在对照加强理论武装、加强党员管理监督、严格组织生活等六个对照方面检查材料【两篇范文】.docx VIP
- 4.2.2 被减数中间、末尾有0的连续退位减法及验算 课件人教版数学二年级下册.pptx
- 党支部班子2026年在对照加强理论武装、执行上级组织决定、加强党员管理监督等“六个对照”方面检查材料.docx VIP
- 2026年(完整版)党建应知应会基础知识测试题及一套答案.docx VIP
- 《计算机网络集成技术》课程标准.doc VIP
- 《骆驼祥子》圈点、批注、做笔记(教学设计)七年级语文下册(统编版2024).pdf VIP
- 2025年贵州省遵义市遵义县某国企招聘笔试题库及参考答案详解1套.docx VIP
- 2025年卫健委遴选笔试真题汇编解析版,备考冲刺押题必备.docx VIP
原创力文档

文档评论(0)