【算法】排列组合
from itertools import permutations # 排列
from itertools import combinations # 组合
def perf(nums, k):
res = []
def dfs(nums, cur):
n = len(nums)
if len(cur) == k:
res.append(cur)
return
for i in range(n):
dfs(nums[i + 1:], cur + [nums[i]]) # 组合
# dfs(nums[:i] + nums[i+1:], cur+[nums[i]]) # 排列
dfs(nums, [])
return res