摘要: 递归与递推 1. 概述: 递归与递推是一些复杂算法的基础,其数据元素之间的关系可以用抽象的、严格的公式表达出来。递归与递推都具有边界条件,不同的是,递归从具体问题出发,一步步简化到边界条件;递推是从边界条件出发,一步步计算出具体问题。 2. 知识点梳理: Ø 递归 递归,将具体问题用一些类似的子问题 阅读全文
posted @ 2020-10-19 13:28 tianli3151 阅读(693) 评论(0) 推荐(0) 编辑
摘要: 所谓枚举,就是将所有的可能一一遍历出来,在遍历中逐个检查答案的正确性,从而确定最终结果。 1. 知识点梳理: Ø 一般枚举方法 一般枚举方法将所有可能情况都列举出来,理论上几乎可以解决所有问题。但是枚举算法的复杂度很高,需考虑时限问题。 Ø 枚举算法的优化 由于枚举法产生了大量的无用解,所以规模稍大 阅读全文
posted @ 2020-10-19 13:25 tianli3151 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 图论当中最主要的组成部分 图。无图不成论,所以什么是图呢?我们一般用(Graph)来表示一张图,称为图。一张图可以表示为一个二元组,其中是点集,是边集,且(对于任意属于),为一个二元组且有。这就是图的定义。 其实我知道你们看不懂上面在说啥,上面只是一种形式化的定义。为了理解什么是图,我们换一种说法。 阅读全文
posted @ 2020-10-19 13:10 tianli3151 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 1.字符的性质. 代表题目:NOIP2012 T1 Vigenère密码 题目解析:这道题作为提高组的第一题,就本身难度而言是所有考生可以做的,但是很多同学都是将题目中的映射表输入程序,这就大大减慢了做题速度。实际上这道题考察了同学们对于ASCLL码的熟悉程度,如果你发现这张表的规律,结果字母编号为 阅读全文
posted @ 2020-10-19 11:36 tianli3151 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 现在,我们来认识一下一个非常有意思的回文串算法manachar算法。该算法O(n)解决了如下问题: 给你一个字符串,求每一位置为中心的回文串长度。 很容易发现,最暴力的算法很容易发现是O(n2)的。 比如与到了这样一个串:aaaaaaaaaaaaaaa,每个中心都需要花费O(n)时间判断回文串长度 阅读全文
posted @ 2020-10-19 11:34 tianli3151 阅读(282) 评论(0) 推荐(0) 编辑