摘要: 贪心算法 贪心算法Greedy 贪心算法是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是全局最好或最优的解法。 贪心算法与动态规划的不同在于它对每个子问题的解决方案都做出选择,不能回退。动态规划则会保存以前的运算结果,并根据以前的结果对当前进行选择,有回退功能。 阅读全文
posted @ 2020-03-02 23:08 insist钢 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 深度优先搜索和广度优先搜索 遍历搜索 在树(图/状态集)中寻找特定结点 搜索 遍历 每个节点都要访问一次 每个结点仅仅要访问一次 对于结点的访问顺序不限 深度优先: depth first search 广度优先:breadth frist search 深度优先搜索 Depth First Sea 阅读全文
posted @ 2020-03-02 22:45 insist钢 阅读(456) 评论(0) 推荐(0) 编辑
摘要: 分治、回溯 递归状态树 分治Divide&Conquer 分治代码模板 回溯Backtracking 回溯法采用试错的思想,它尝试分布的去解决一个问题。在分步解决问题的过程中,当它通过尝试发现现有的分步答案不能得到有效的正确的解答的时候,它将取消上一步甚至是上几步的计算,再通过其他的可能的分步解答再 阅读全文
posted @ 2020-03-02 22:42 insist钢 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 泛型递归、树的递归 递归Recursion 递归 循环 通过函数体来进行循环 1. 从前有个山 2. 山里有个庙 3. 庙里有个和尚讲故事 4. 返回1 盗梦空间 向下进入到不同梦境中,向上又回到原来一层 通过声音同步回到上一层 每一层的环境和周围的人都是一份拷贝、主角等几个人穿越不同层级的梦境(发 阅读全文
posted @ 2020-03-02 22:39 insist钢 阅读(359) 评论(0) 推荐(0) 编辑
摘要: 树、二叉树、二叉搜索树 二叉树Binary Tree 图Graph linked list是特殊化的tree tree是特殊化的graph 示例代码 二叉树遍历Pre order/In order/Post order 1. 前序(Pre order):根 左 右 2. 中序(In order):左 阅读全文
posted @ 2020-03-02 22:38 insist钢 阅读(521) 评论(0) 推荐(0) 编辑