经典算法问题
KAIKAI_ING
如果现在不牛,不是你的错。如果将来不牛,就是现在你的错。
展开
-
0-1背包问题
9-5 0-1背包问题 题目: 有一个背包,它的容量为c(Capacity)。现在有n种不同的物品,编号为0…,n-1,其中每一件物品的重量为w(i),价值为v(i)。 问可以向这个背包中盛放哪些物品,使得在不超过背包容量的基础上,物品的总价值最大。 其中对“状态”的定义:F(i, c)考虑将n个物品放入容量为c的背包,使得价值最大。 根据对状态的定义,决定状态的转移: F(i, c) = ...原创 2018-10-08 10:03:04 · 267 阅读 · 0 评论 -
LCS 最长公共子序列
9-9 LCS,最短路,求动态规划的具体解以及更多 题目: LCS (最长公共子序列)。LCS是Longest Common Subsequence的缩写,即最长公共子序列。一个序列,如果是两个或多个已知序列的子序列,且是所有子序列中最长的,则为最长公共子序列。 比如,对于char x[]=“aabcd”;有顺序且相互相邻的aabc是其子序列,有顺序但是不相邻的abc也是其公共子序列。即,只要得...原创 2018-10-08 10:05:15 · 212 阅读 · 0 评论 -
两类查找问题
两类查找问题 查找有无:元素"a"是否存在? 使用set;集合 查找对应关系(键值对应):元素"a"出现了几次? map;字典 set和map 通常语言的标准库中都有内置set和map 容器类 屏蔽实现细节 了解语言中标准库里常见的容器类的使用 set和map常见操作 insert find erase chang(map) 4-1 set的使用 Inte原创 2018-10-08 10:07:44 · 127 阅读 · 0 评论 -
斐波那契数列
9-1 什么是动态规划 记忆化搜索–自上而下的解决问题 动态规划–自下而上的解决问题 动态规划:将原问题拆解成若干子问题,同时保存子问题的答案,使得每个子问题只求解一次,最终获得原问题的答案。 递归问题--------重叠子问题 记忆化搜索--------自顶向下的解决问题 动态规划--------自底向上的解决问题 最优子结构:通过求子问题的最优解,可以获得原问题的最优解。 ...原创 2018-10-08 10:08:48 · 1789 阅读 · 0 评论