嘤嘤嘤Python小菜鸡 2021-05-14 10:38 采纳率: 50%
浏览 41
已结题

看不懂这段代码在干什么,求解[face]emoji:029.png[/face]

看不懂这段代码在干什么,求解[face]emoji:029.png[/face]
  • 写回答

3条回答 默认 最新

  • 关注

    你这个是查找给定序列的最长递增子序列的吧,如果number大于end-start,返回空;否则先进行range(start,end)举个例子

    range(1,10):指定start=1,end=10,默认step=1,生成可迭代对象,包含[1, 2, 3, 4, 5, 6, 7, 8, 9]

    然后

    返回sample(range(start,end),number)

    sample(序列a,n)

    功能:从序列a中随机抽取n个元素,并将n个元素以list形式返回。

    def subAscendingList(lst):
    
    '''返回最长递增子序列'''
    
    for length in range(len(lst), 0, -1):
    
    #按长度递减的顺序进行查找和判断
    
    for sub in combinations(lst, length):
    
    #判断当前选择的子序列是否为递增顺序
    
    if list(sub) == sorted(sub):
    
    #找到第一个就返回
    
    return sub
    
    def getList(start=0, end=1000, number=20):
    
    '''生成随机序列'''
    
    if number > end-start:
    
    return None
    
    return sample(range(start, end), number)
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月28日

悬赏问题

  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考