摘要: 枚举: 枚举是最简单也是最直白的搜索方式,它依次尝试搜索空间中所有的解,测试其是否符合条件,若符合则输出答案,否则继续测试下一组解。 例6.1 百鸡问题 广度优先搜索(BFS:breadth-first search): 例6.2 胜利大逃亡(广搜+剪枝) AC代码: #include<cstdio 阅读全文
posted @ 2019-06-15 23:37 郭怡柔 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 查找: 对于查找问题,有难有易。可能只是直接地对某个数字的查找,也可能涉及搜索等相对难度更大的算法。这里先介绍查找的基础概念和方法。 例 2.9 找 x AC代码: 通过此例,我们可以了解一下查找所涉及的几个基本要素。 1.查找空间。也常被称为解空间。所谓查找,就是在该查找空间中找寻符合我们要求的解 阅读全文
posted @ 2019-06-15 21:42 郭怡柔 阅读(164) 评论(0) 推荐(0) 编辑
摘要: Hash的应用: Hash即散列,不像数据结构与算法中讲的各种Hash方法和冲突处理等过多的阐述,以下主要介绍Hash在机试试题解答中的作用。 例2.5 统计同成绩学生人数 Hash解法AC代码:(一般想到的也是这种解法) 例2.6 Sort 时间限制:1 秒 内存限制:128 兆 题目描述: 给你 阅读全文
posted @ 2019-06-15 19:07 郭怡柔 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 日期类问题: 1.基本问题: 求两个日期间的天数差,即求以两个特定日期为界的日期区间的长度。 2.套路: 将原区间问题统一到起点确定的区间问题上去(比如与0000年1月1日的日期之差)。这样处理可以对数据进行预处理,在输入之前就预处理出所有日期与原点日期之间的天数差保存起来,当数据真正开始输入时,只 阅读全文
posted @ 2019-06-15 17:16 郭怡柔 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 例2.1 排序 时间限制:1秒 空间限制:65536K AC代码 冒泡排序解法 例2.2 成绩排序 时间限制:1秒 空间限制:65536K AC代码 阅读全文
posted @ 2019-06-15 15:12 郭怡柔 阅读(170) 评论(0) 推荐(0) 编辑