- 0
- 0
- 约5.04千字
- 约 14页
- 2026-06-22 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年软件工程师招聘面试编程题及答案
一、算法题(共3题,每题15分,总分45分)
1.题目:
给定一个包含重复数字的数组,返回所有不重复的全排列。例如,输入`[1,1,2]`,输出`[[1,1,2],[1,2,1],[2,1,1]]`。
要求:
-不能使用递归或内置库函数(如`permutations`)。
-时间复杂度尽量低。
答案与解析:
答案:
python
defpermute_unique(nums):
result=[]
nums.sort()#先排序,便于处理重复元素
path=[]
used=[False]len(nums)
defbacktrack():
iflen(path)==len(nums):
result.append(path.copy())
return
foriinrange(len(nums)):
ifused[i]:
continue
ifi0andnums[i]==nums[i-1]andnotused[i-1]:
continue#跳过重复元素
used[i]=True
path.append(nums[i])
backtrack()
path.pop()
used[i]=False
bac
您可能关注的文档
最近下载
- 幻听的治疗及护理.pptx VIP
- 重庆市建设工程特殊气候施工安全要点提示手册修订版.pdf VIP
- GB 50300-2013建筑工程施工质量验收统一标准.pdf VIP
- 明尼苏达心力衰竭生活质量问卷表.docx VIP
- 吉利汽车:车载SerDes技术发展白皮书-面向智能汽车的高速互联解决方案(2026).pdf
- 在梦寐之间-中国古典医学对於「梦与鬼交」与女性情的构.pdf VIP
- 高速公路标段PPP项目合同建设期绩效评价指标表.doc
- 经济地理学(华东师范大学)中国大学MOOC 慕课 章节测验 答案.docx VIP
- 俄亥俄州驾照笔试试题及详细答案.docx
- 工艺流程_均苯四甲酸二酐生产技术教材.pptx VIP
原创力文档

文档评论(0)