Fork me on GitHub
摘要: 关于公共祖先的问题分类: 这类问题有多种解法和类型,根据题目给出的信息去判断使用哪一种 1、给你树,只支持从父亲找儿子,不支持儿子找父亲,最后要求最近公共祖先,使用dfs或者分治 2、支持儿子找父亲,求最近公共祖先,逆序,从儿子找到底,然后比较(具体看本题代码,说不清) 3、不给树,求是否有共同祖先 阅读全文
posted @ 2017-03-16 22:16 LinkinStar 阅读(310) 评论(0) 推荐(0)
摘要: dfs和分治会有重复的计算,所以复杂度高 可以采用记忆化搜索的方式,保存已经计算过的结果。 记忆化搜索就是动态规划的一种。 动态规划就是解决了重复计算的问题。 动态规划题目特点 1、求最大最小 2、求yes、no 3、求count(*) 不能对原数据进行交换或者排序。 动态规划的四个要素 1、状态, 阅读全文
posted @ 2017-03-16 13:11 LinkinStar 阅读(77) 评论(0) 推荐(0)