查找序列的最长递增子序列

什么是序列的最长递增子序列?
答:在一个数值序列中,找到一个子序列,使得这个子序列元素的数值依次递增,并且这个子序列的长度尽可能地大。这就是所谓的最长递增子序列

from itertools import combinations
from random import sampledef subAscendingList(arr):'''返回最长递增子序列'''for length in range(len(arr), 0, -1):#按长度递减的顺序进行查找和判断for sub in combinations(arr, length):#判断当前选择的子序列是否为递增顺序;长度为arr列表的长度递减,从arr列表中找,然后进行排列组合if list(sub) == sorted(sub):#找到第一个就返回;将得到的sub进行升序排序,若与原来的列表相等,即为递增的列表最大长度return sub
'''
Python itertools模块combinations(iterable, r)方法可以创建一个迭代器,
返回iterable中所有长度为r的子序列,返回的子序列中的项按输入iterable中的顺序排序。
'''arr=[]
n=int(input("请输入给定序列的个数:"))
print("请依次输入给定序列的值:")
for i in range(n):arr.append(int(input()))
print("最大递增子序列为:")
print(subAscendingList(arr))

效果图如下:

Python---查找序列的最长递增子序列相关推荐

  1. 【LeetCode 二分查找专项】最长递增子序列(300)(to be polished...)

    文章目录 1. 题目 1.1 示例 1.2 说明 1.3 提示 1.4 进阶 2. 解法一(动态规划) 2.1 分析 2.2 解答 2.3 复杂度 3. 解法二(二分查找) 3.1 分析 3.2 解答 ...

  2. leetcode(300)—— Longest Increasing Subsequence(最长递增子序列)

    参考 Python 解法: 动态规划 -- 最长递增子序列(LIS) 原题位置:Longest Increasing Subsequence | LeetCode OJ 题目的说明: 严格递增: 子序 ...

  3. 最长递增子序列和网易去除最少使从左向右递增又递减问题

    (1)最长递增子序列问题 有两种方法:(1)动态规划方法(2)类似二分查找的方法O(nlogn) 动态规划方法: 以i结尾的序列的最长递增子序列和其[0, i - 1]"前缀"的最 ...

  4. NC91 最长递增子序列

    NC91 最长递增子序列 这道题n的范围是1e5,因此不能使用常规的dp[i],表示以i结尾的最大的子序列,因为这个时间复杂度是n方级别.因此要换一种算法. 贪心+二分,时间复杂度为O(nlogn) ...

  5. 最长递增子序列(LIS)

    最长递增子序列(LIS) 问题描述: 求一个序列的最长递增子序列,这样的子序列是允许中间越过一些字符的,即留"空". 例如:4 2 3 1 5 的最长递增子序列为 2 3 5,长度 ...

  6. 最长递增子序列的三种算法

    转载自:http://qiemengdao.iteye.com/blog/1660229 最长递增子序列 问题 给定一个长度为N的数组,找出一个最长的单调自增子序列(不一定连续,但是顺序不能乱).例如 ...

  7. 动态规划(最长递增子序列)---最长递增子序列

    最长递增子序列 300. Longest Increasing Subsequence (Medium) 题目描述:   给定一个数组,找到它的最长递增子序列 思路分析:   动态规划思想,定义一个数 ...

  8. 最长递增子序列问题合集

    最长递增子序列问题 合并LIS(JLIS) 第k个最大递增子序列(KLIS) 对于求单个序列的最长递增子序列网上的太多就不多写了,以下是它的一些进阶算法 合并LIS(JLIS) 题意 两个整数序列A和 ...

  9. python最大连续递增子列_最长递增子序列(LIS)解法详述

    求数组中最长递增子序列(Longest Increasing Subsequence, LIS) LIS问题是算法中的经典题目,传统的解法是使用动态规划,时间复杂度是O(n^2):改进的方法时间复杂度 ...

最新文章

  1. php数据 文本_php直接调用文本文件内容
  2. WijmoJS 2019V1正式发布:全新的在线 Demo 系统,助您快速上手,开发无忧
  3. Js 原型对象与原型链(转)
  4. TortoiseSVN图标设置在注册表中的位置
  5. 【mysql】配置 选项文件
  6. django的页面报错中出现xxxx.html (Skipped)
  7. [转]Java反射机制详解
  8. android 画圆教程,android shap画圆(空心圆、实心圆)
  9. PHP用gd库给图片添加水印,php用GD库给图片添加水印
  10. word的公式后加编码后自动变小
  11. Frobenius norm(Frobenius 范数)
  12. Linux发行版CentOS下Docker的安装和卸载
  13. textaligncenter仍然不居中_三星Galaxy S21/S21+保护膜曝光:居中挖孔 回归直屏_手机行情...
  14. 服务器安装lnmp的时候出现client_loop: send disconnect: Connection reset by peer
  15. 三十万,买一只基金,放着不管,五年后会怎么样?
  16. zoj 1372
  17. 【语音处理】开始学习语音,从基本概念和应用讲起
  18. 一个月薪 12000 的北京程序员的真实生活
  19. Windows 10 应用创建模糊背景窗口的三种方法
  20. Datagrip连接mysql错误[08S01]解决办法

热门文章

  1. android 自定义弹窗diss,Android中自定义PopupWindow,动态弹窗。
  2. HTML5新增属性学习笔记
  3. tennylvHTML5实现屏幕手势解锁(转载)
  4. 给你的博客换个装-园子换装指南
  5. Codeforces 1070A Find a Number(BFS) 2018-2019 ICPC, NEERC, Southern Subregional Contest Problem A
  6. jenkins jar包上传maven仓库
  7. 集合、深浅拷贝、文件操作(读、写、追加)函数初识(参数)
  8. $.ajax所犯的错误。success后面不执行
  9. MyEclipse 6.5安装maven插件
  10. 为什么django+mongo在windows上session能够获取到,同样的程序在linux上就会报session的变量错误,keyerror?...