785. 判断二分图
对于单个连通图:一个dfs判断图中所有节点符合二分。
遍历节点列表=>遍历所有连通图。
133. clone graph
994. rotting oranges 力扣
维护一个time表,表示所有orange rot的最快时间。对每一个 t=0 就 rot 的 orange dfs,遇见周围未 rot 或 rot 时间较长的 orange 进行处理,对 blank 和 rotten 且时间较短的 orange 结束递归。
207. Course Schedule 力扣
判断有向图是否有环。先找出所有出度,然后对所有节点dfs。使用一个array保存节点状态,每个节点只检查一次。遇到一个节点,判断是否被检查过,检查过则跳过,没检查过则dfs。
343. 整数拆分 力扣
dp数组保存的数值是每个数字被拆成1~n个的最大乘积,把n拆成3个数(n1, n2, n3)的最大乘积,总可以归结为拆成2个数的最大乘积,所以只用dp求每个数字被拆成2个的最大乘积。