全排列(Python)

全排列问题是回溯法的一个典型应用,本章主要用Python解决这个问题 

全排列问题 

问题引入

【问题描述】有4个互不相同的数字,输出由其中三个不重复数字组成的排列。

【输入形式】4个整数,已经从小到大排列。

【输出形式】输出所有排列,输出格式见样例

【样例输入】

1 2 3 4

【样例输出】

1 2 3

1 3 2

2 1 3

2 3 1

3 1 2

3 2 1

1 2 4

1 4 2

2 1 4

2 4 1

4 1 2

4 2 1

1 3 4

1 4 3

3 1 4

3 4 1

4 1 3

4 3 1

2 3 4

2 4 3

3 2 4

3 4 2

4 2 3

4 3 2

程序设计

#排列组合
#组合,先在nums中取n个数,保存所有的组合放在res1中
def combination(nums,solution,n):    #求组合函数
    if n==0:   #n为取的元素个数,当n等于零时,说明不需要再取元素了
        res1.append(solution)   #将当前组合加入结果res列表
        return
    for i in r

猜你喜欢

转载自blog.csdn.net/m0_68111267/article/details/128688224
今日推荐