n个自然数中取出r个数字的排列组合(python)实现

'''找出n个自然数(1,2,3,4,...,n)取出r个数的组合例:当n=5时,r=3时,所有组合为:1 2 3;1 2 4;1 2 5;1 3 4;1 3 5;1 4 5;2 3 4;2 3 5;2 4 5;3 4 5;''''''循环算法设计: 分析以上组合实例,5个数种取出3个数的10组组合,其中魅族三个数由两个特点: (1)、三个数都互不相同 (2)、前面的数小于后面的数 因此可以用3层循环模拟每个组合种的3个数,
摘要由CSDN通过智能技术生成
'''找出n个自然数(1,2,3,4,...,n)取出r个数的组合
例:
当n=5时,r=3时,所有组合为:
1 2 3;
1 2 4;
1 2 5;
1 3 4;
1 3 5;
1 4 5;
2 3 4;
2 3 5;
2 4 5;
3 4 5;
'''
'''循环算法设计:
       分析以上组合实例,5个数种取出3个数的10组组合,其中魅族三个数由两个特点:
       (1)、三个数都互不相同
       (2)、前面的数小于后面的数
       因此可以用3层循环模拟每个组合种的3个数,当满足上面的两个特点时,就得到了一个组合
'''
#循环算法如下:
def main1():
    count = 0
    n = 5
    for i in range(1,n+1):
        for j in range(1,n+1):
            for k in range(1,n+1):
                if i < j and j < k:
                    count += 1
                    print("%d %d %d;" %(i,j,k))
    print("共有%d种组合" %count)

def main2(
  • 4
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值