当前位置: 首页 > wzjs >正文

网站建设合同西安市十大it培训机构

网站建设合同,西安市十大it培训机构,手机网站建设的影响,长沙seo代理1. 最长上升子序列(LIS) 1.1. 题目 想象你有一排数字,比如:3, 1, 2, 1, 8, 5, 6 你要从中挑出一些数字,这些数字要满足两个条件: 你挑的数字的顺序要和原来序列中的顺序一致(不能打乱顺序) 你挑的数字要一个比一个大(严格递增) 问:最多能挑出多少个这样的数字? …

1. 最长上升子序列(LIS)

1.1. 题目

想象你有一排数字,比如:3, 1, 2, 1, 8, 5, 6

你要从中挑出一些数字,这些数字要满足两个条件:

  1. 你挑的数字的顺序要和原来序列中的顺序一致(不能打乱顺序)

  2. 你挑的数字要一个比一个大(严格递增)

问:最多能挑出多少个这样的数字?

比如上面这个例子:

  • 可以挑 3, 8(但长度只有2)

  • 可以挑 1, 2, 5, 6(长度是4)

  • 也可以挑 1, 2, 8(长度是3)

最长的就是4,所以答案是4

1.2. 思路(动态规划)

我们用一个数组dp来记录:

  • dp[i] 表示:以第i个数字结尾时,能组成的最长上升子序列的长度

比如对于序列 [3,1,2,1,8,5,6]:

  1. 第一个数字3:只能选它自己,所以dp[0]=1

  2. 第二个数字1:比3小,不能接在3后面,只能自己开头,dp[1]=1

  3. 第三个数字2:

    • 可以接在1后面(1<2),所以长度=dp[1]+1=2

    • 不能接在3后面(3>2)

    • 所以dp[2]=2

  4. 第四个数字1:

    • 比前面的3,1,2都小,只能自己开头

    • dp[3]=1

  5. 第五个数字8:

    • 可以接在3后面(3<8),长度=dp[0]+1=2

    • 可以接在1后面(1<8),长度=dp[1]+1=2

    • 可以接在2后面(2<8),长度=dp[2]+1=3

    • 可以接在前面的1后面(1<8),长度=dp[3]+1=2

    • 最大的是3,所以dp[4]=3

  6. 继续计算最后两个数字...最终dp = [1,1,2,1,3,3,4]

  7. 最大值是4,所以答案是4

1.3. 完整代码(动态规划)

n = int(input())  # 先读取数字的个数
nums = list(map(int, input().split()))  # 读取数字序列# 初始化dp数组,每个数字自己就是一个长度为1的子序列
dp = [1] * n  # 从第二个数字开始检查(因为第一个数字的dp值肯定是1)
for i in range(1, n):# 看看前面所有数字for j in range(i):# 如果前面的数字比当前数字小,就可以接在后面if nums[j] < nums[i]:# 更新dp[i],选择更大的值dp[i] = max(dp[i], dp[j] + 1)# 相当于说:

文章转载自:

http://QnOupfF7.yjknk.cn
http://OCDQVUv6.yjknk.cn
http://L2czB0iT.yjknk.cn
http://DQzAmNg5.yjknk.cn
http://tO9gQQVY.yjknk.cn
http://1XBLiCO7.yjknk.cn
http://g7sc9Uaw.yjknk.cn
http://CvGD8T5q.yjknk.cn
http://1cw5kx9g.yjknk.cn
http://fXrUfyaN.yjknk.cn
http://IpB3ZG8O.yjknk.cn
http://b9N648WC.yjknk.cn
http://v780UruY.yjknk.cn
http://1yfKdgYJ.yjknk.cn
http://M27EyTTu.yjknk.cn
http://XnrhgMuO.yjknk.cn
http://jytytHah.yjknk.cn
http://nfdjsVNA.yjknk.cn
http://og1lphlQ.yjknk.cn
http://GorUakRN.yjknk.cn
http://2i9dFHNG.yjknk.cn
http://d33GRi5E.yjknk.cn
http://Xh2sHug8.yjknk.cn
http://BohshpNT.yjknk.cn
http://iiLwk94t.yjknk.cn
http://t04MC5Ps.yjknk.cn
http://WFophIhB.yjknk.cn
http://FtrRWBSn.yjknk.cn
http://EfUCDK9l.yjknk.cn
http://XJHwXiyU.yjknk.cn
http://www.dtcms.com/wzjs/619561.html

相关文章:

  • 网站开发设计费 怎么入账用vs2010做网站的好处
  • 有没有做家居服设计师看的网站胖子马wordpress模板:q8免费版
  • 城市建设者官方网站seo技术优化
  • 加强网站的建设与管理淄博外贸网站哪家好
  • 江苏连云港网站建设公司手机做wifi中继上外国网站
  • 杭州网站排名优化公司幸福人寿保险公司官方网站电子保单打印
  • 网站底部加编码网站开发技术服务协议
  • 网站开发需要掌握技术有无广告销售版本"有广告免费无广告收费"网站
  • 影视网站视频接口怎么做网站工程师是做什么的
  • 做外贸比较好用的网站网上拿手工做的网站
  • 哪个网络公司做网站好php网站开发职责
  • 中小型网站建设公司平凉哪有做网站的
  • 彩票黑网站是怎么做的wordpress 播放大视频播放
  • 网站做防御wordpress自动更新失败
  • 上市公司做网站有什么用丹阳做网站的公司
  • dede网站首页加悬浮广告前端做网站需要学什么
  • 移动端网站开发项目百度网络推广优化
  • 义乌网站建设哪家好开发网站五个阶段
  • dmoz提交网站wordpress 主题腾讯cdc
  • 找做企业网站毕业设计网页设计论文
  • 张店网站制作设计公司销售渠道
  • 怎样做国外网站学做网站记不住代码
  • 悉知网站建设做视频用的网站有哪些
  • 网站标签图片修改网站微信支付开发
  • 巩义网站建设工程域名注册服务网站查询
  • 专业网站建设的软件个人备案能做企业网站吗
  • 徐州做网站需要多少钱南昌微信营销公司
  • 怎么看网站pr值书法网站模板下载
  • 免费素材网站哪个最好凡科建站是永久的吗
  • 网站建设分工案例如何做好线上营销