7人加入学习
(0人评价)
CS算法集训班
价格 $99,999美元
该课程属于 2023.7.9 CS课程 请加入后再学习
  • DP 问题

算法原理:

  1. 可以表示成离散状态的相并列和矩阵形式,每个元素代表子问题最优解。子问题不依赖更大的子问题
  2. 最终最优解是多个子问题的最优解来确定(多个状态同时),如果一个状态就是greedy
  3. index最小的子问题解已知
  4. 状态转移方程
  5. 两个方向:“top-down”来分析问题然后bottom-up来优化问题/
  6. top-down一般用递归来解决,bottome-up一般是iteration来解决

算法复杂度:

  1. time complexity:某些子问题解应用不止一次,所以memorizaition来节省空间
  2. space complexity:“某些解只用几次,因此不必在存储”

例题:longest in creaseing subsquence 

 

greedy,使用的话要证明一下多个状态可以用一个状态解释

 

例题:  wiggle subsqueece

 

例题:背包问题

 

例题:96  unique binary search tree

numtrees(n-2)*num(1)+.... numtree(1)*nums(n-2), 左右子树排列数,因为bst型确定了,数也就确定了

 

例题:括号问题,和上面类似

 

 

例题:edit 。。。。  状态转移方程。 1h23 min

例题: pattern  matching  :44  wildcard mathcing

 

 

例题:permutations for di sequence

[展开全文]

授课教师

课程特色

视频(25)

学员动态

Shuhao 加入学习
Bianyw 加入学习
shjm 加入学习
YanHuang 加入学习
duoduo99 加入学习