随笔分类 -  动态规划

摘要:顺序表 :顺序表是由一段连续的储存单元存储数据的一种简单的数据结构形式,其优点在于快速的查找存储单元的值,缺点在于 时间复杂度 :查找:O(1),插入和删除:O(n); 对于清华大学《数据结构》——做出自己的理解;(用实例来理解抽象的事物) 假设,一次期末的成绩考试完后,老师需要将同学们的成绩输入到 阅读全文
posted @ 2017-09-08 19:13 Hunter丶安 阅读(252) 评论(0) 推荐(0)
摘要:排列转换 现在有两个长度为n的排列p和s。要求通过交换使得p变成s。交换 pipi 和 pjpj 的代价是|i-j|。要求使用最少的代价让p变成s。 Input单组测试数据。 第一行有一个整数n (1≤n≤200000),表示排列的长度。 第二行有n个范围是1到n的整数,表示排列p。每个整数只出现一 阅读全文
posted @ 2017-08-20 20:11 Hunter丶安 阅读(301) 评论(0) 推荐(0)
摘要:逆序对数列 逆序对数列 对于一个数列{ai},如果有i<j且ai>aj,那么我们称ai与aj为一对逆序对数。若对于任意一个由1~n自然数组成的 数列,可以很容易求出有多少个逆序对数。那么逆序对数为k的这样自然数数列到底有多少个? Input 第一行为两个整数n,k。 Output 写入一个整数,表示 阅读全文
posted @ 2017-08-19 20:30 Hunter丶安 阅读(451) 评论(0) 推荐(0)
摘要:合唱队形题 题目分析 :分别求最长上升和下降子序列。 题目分析 :这道题差不多是个水题了,不过我在做题的被误导了,虽然结果正确却超时了。我们用上升子序列的时间复杂度是:O(n*n); 题目收获 :需要对时间复杂和空间复杂度进行深刻的重新理解。 AC代码 : #include <iostream> # 阅读全文
posted @ 2017-08-19 10:03 Hunter丶安 阅读(160) 评论(0) 推荐(0)
摘要:We give the following inductive definition of a “regular brackets” sequence: the empty sequence is a regular brackets sequence, if s is a regular brac 阅读全文
posted @ 2017-08-17 14:50 Hunter丶安 阅读(550) 评论(0) 推荐(0)
摘要:01背包问题:一个背包总容量为V,现在有N个物品,第i个 物品体积为weight[i],价值为value[i],现在往背包里面装东西,怎么装能使背包的内物品价值最大? 相信很多人拿到这道题的时候,立马想到是不是用贪心去做,其实不是的。这道题,我们可以用GAD的动态规划来求解。那这样的话找到动态转移方 阅读全文
posted @ 2017-08-14 21:07 Hunter丶安 阅读(161) 评论(0) 推荐(0)
摘要:在讲述DGA前我们先来初步了解下动态规划的基础和核心。 我们从数字三角开始: 现在要求我们从顶点开始一直到底层的数字相加和最大。(每层选一个数)。我们可能会想,从每层中选出最大的不就好了吗?但结果,很显然出现了问题,就比如1~n-1层的数都比较小,突然在n层的时候出现一个特别大的数,前面取大数的结果 阅读全文
posted @ 2017-08-14 15:52 Hunter丶安 阅读(1450) 评论(0) 推荐(0)