2026年微软技术面试题目与参考答案.docxVIP

  • 0
  • 0
  • 约5.25千字
  • 约 14页
  • 2026-03-22 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年微软技术面试题目与参考答案

1.编程题(3题,每题20分)

1.1题目(20分):

给定一个包含重复元素的整数数组,返回所有不重复的全排列。要求:不能使用递归,时间复杂度尽可能低。

示例输入:`[1,1,2]`

示例输出:`[[1,1,2],[1,2,1],[2,1,1]]`

参考答案:

python

defpermuteUnique(nums):

fromcollectionsimportCounter

result=[]

counter=Counter(nums)

path=[]

used=[False]len(nums)

defbacktrack():

iflen(path)==len(nums):

result.append(path.copy())

return

fornumincounter:

ifcounter[num]0andnotused[nums.index(num)]:

path.append(num)

counter[num]-=1

used[nums.index(num)]=True

backtrack()

path.pop()

counter[num]+=1

used[nums.index(num)]

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档