python 实现组合的全部输出

python 实现组合的全部输出

引用来源

https://github.com/eff-kay/combination-and-permutation

代码

def permutation(s):
    if len(s) == 1:
     return [s]
    perm_list = [] # resulting list
    for a in s:
        remaining_elements = [x for x in s if x != a]
        z = permutation(remaining_elements) # permutations of sublist
        for t in z:
            perm_list.append([a] + t)
    return perm_list


def xuniqueCombinations(items, n):
    if n==0:
        yield []
    else:
        for i in range(len(items)):
            for cc in xuniqueCombinations(items[i+1:],n-1):
                yield [items[i]]+cc

for x in xuniqueCombinations([1,2,3,4],1):
    print( x)
posted @ 2022-07-04 17:00  梧桐灯下江楚滢  阅读(339)  评论(0)    收藏  举报