# DynamicProgramming
**Repository Path**: guangzhou_coffee_union/DynamicProgramming
## Basic Information
- **Project Name**: DynamicProgramming
- **Description**: 动态规划,用Java实现背包九讲,股票问题
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2020-07-14
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 背包问题九讲,股票问题六讲 Java实现
有意无意的在网上看到了 **动态规划(BP)** 的入门书,叫[<背包九讲>](https://github.com/mzdora/DynamicProgramming/blob/master/%E8%83%8C%E5%8C%85%E4%B9%9D%E8%AE%B2.pdf),是dd_engi大佬著的一本针对NOIP难度的BP入门书。
另外在LeetCode上看到有动态规划[<股票问题>](https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock/),根据labuladong的[题解](https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock/solution/yi-ge-fang-fa-tuan-mie-6-dao-gu-piao-wen-ti-by-l-3/)来对股票问题进行分析。
其实最近自己也对动态规划挺感兴趣的,尤其是在LeetCode上有很多问题都能用动态规划解决。
有人说你数据结构那一块还没更新完呢就开新坑。
**红黑树、哈希表、B+树、Trie、线段树、并查集、AVL** 还有一些图论的东西也没更新。
但都会在 寒假期间(1月中旬到2月初) 更新起来的!
其实自己是挺想更新的,但是由于自己太菜,很多东西还在想方设法的实现,再加上期末马上来啦。
所以自己就决定先停下来数据结构的实现,转向动态规划。
但还是在这里厚脸皮的发一下数据结构实现的地址:[数据结构](https://github.com/mzdora/DataStructure)
###
目录
**背包问题**
第一讲 [01 背包问题](https://github.com/mzdora/DynamicProgramming/tree/master/01%20%E8%83%8C%E5%8C%85%E9%97%AE%E9%A2%98)
第二讲 [完全背包问题](https://github.com/mzdora/DynamicProgramming/tree/master/%E5%AE%8C%E5%85%A8%E8%83%8C%E5%8C%85%E9%97%AE%E9%A2%98)
第三讲 [多重背包问题](https://github.com/mzdora/DynamicProgramming/tree/master/%E5%A4%9A%E9%87%8D%E8%83%8C%E5%8C%85%E9%97%AE%E9%A2%98)
第四讲 混合三种背包问题
第五讲 二维费用的背包问题
第六讲 分组的背包问题
第七讲 有依赖的背包问题
第八讲 泛化物品
第九讲 背包问题问法的变化
**股票问题**
第十讲 买卖股票的最佳时机
第十一讲 买卖股票的最佳时机 II
第十二讲 买卖股票的最佳时机 III
第十三讲 买卖股票的最佳时机 IV
第十四讲 最佳买卖股票时机含冷冻期
第十五讲 买卖股票的最佳时机含手续费
###
每当我完成一讲,目录将会变成一个可点击的链接。
由Java语言实现,说不定哪天我也会用Python实现 :D(后话)
然后的然后,我还打算另开一个[**数论**](https://github.com/mzdora/NumberTheory)的新坑。但是可能会在很久之后啦。
其实也有人问我为什么不搞一波人工智能或者前端,毕竟这俩东西特吃香。
只能说人各有志,正因为有这些有趣的算法和数据结构、以及这些数学的沉淀,科学才更好玩。
科学不是跑数据,需要静心。
大家也要加油。
###
01背包问题的状态转移方程:


完全背包问题的状态转移方程:


多重背包问题的状态转移方程:(和完全背包一致)
