给定两个正整数 n 和 k。输出取值范围 1 到 n 之间且依次递增的所有序列,这些序列长度为 k

该博客内容展示了如何使用递归方法生成指定长度且递增的数字序列。递归函数`increasing_sequence`接受四个参数:目标序列长度`k`,最大数字`n`,当前序列长度`now`,以及当前序列`cur`。通过递归遍历所有可能的组合,当序列长度等于目标长度时,打印序列并返回。这个过程用于生成递增序列并打印。

def increasing_sequence(k,n,now=0,cur=[],nowi=0):       #now代表当前几个数字,

                                                                                        #nowi代表当前最大的一个数字

    if(k==now):

        for i in range(len(cur)):

            print(cur[i],end=' ')

        print()

        return

    else:

        for i in range(nowi,n+now):

            cur.append(i+1)

            nowi=cur[-1]

            increasing_sequence(k,n-1,now+1,cur,nowi)

            cur.pop()

increasing_sequence(2,3)

increasing_sequence(5,5)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值