摘要: 引:2019年408中数据结构一道考察快速排序的选择题 答案:D 定位:这道题在考察快速排序中一趟的概念。注意,基本的冒泡,插入,选择排序的一趟概念很容易理解, 接下来我们要讨论的是递归排序算法中(本文以快排和归并排序)讨论“趟”是否有意义。(先说结论,有,但并不像基本排序算法里那么简单,或者说,像 阅读全文
posted @ 2021-01-12 12:41 andrejimmy 阅读(366) 评论(0) 推荐(0)
摘要: 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1232 初接触并查集,不是特别会用。 这道题给我的直观印象是并查集可以用来计算图的连通分量,或者快速查找一个结点是否有父节点。(pre[]数组) 前驱都初始化一个点的自身,每join两个元素,pre[] 阅读全文
posted @ 2018-01-30 17:34 andrejimmy 阅读(8) 评论(0) 推荐(0)
摘要: 小蝌蚪安家 发布时间: 2017年6月13日 14:20 最后更新: 2017年6月13日 14:23 时间限制: 1000ms 内存限制: 128M 描述 在一个矩形区域内,有些地方有水,有些地方没水。所有相邻的有水的地方会共同组成一个水洼,小蝌蚪想在这块区域中找到一个最大的水洼来安家。 输入 有 阅读全文
posted @ 2018-01-28 11:04 andrejimmy 阅读(6) 评论(0) 推荐(0)
摘要: 题目大意是给出一个二维字符数组,要求在里面寻找一个特定的字母串(大小写均可以),可以是8个方向相邻。 以ABCDE为例子 写的时候思路一不小心就往DFS方向偏移了,还好修正了过来,理清思路后,还是比较容易实现的。模板题,不多说。 #include<iostream> #include<string. 阅读全文
posted @ 2018-01-28 08:47 andrejimmy 阅读(7) 评论(0) 推荐(0)
摘要: 为了练习,用BFS写的,应用的还不是很熟练.. 启示:边界条件考虑清楚(判断各种flag)。由于flag成立的等价条件判断错误,这题卡了很久,总而言之,还是要多练习, 在搜索过程中的后续状态如何调整判断不清。 至于之后的打印,可能实现起来比较复杂点了。 看了其他人的代码,发现先遍历判断图的边界比较好 阅读全文
posted @ 2018-01-27 21:41 andrejimmy 阅读(6) 评论(0) 推荐(0)
摘要: 描述 江湖是什么,对于在象棋界厮杀的QQ来说,江湖就是一个矩阵,他的目标,就是在江湖之中骑着马,从他的位置出发,走到终点。 当然,QQ的马也遵从中国象棋中的“马走日”的规则,而且在矩阵中,也会有一些障碍物,马不能跳到障碍物上;如果大钉的马面前有障碍物,即被“别马腿”,那么他将不能跳向有障碍物的左前和 阅读全文
posted @ 2018-01-27 14:19 andrejimmy 阅读(15) 评论(0) 推荐(0)
摘要: 思路: 火车出栈的序列是“部分”倒序的,可以通过出栈的序列来对应模拟所有火车的进站——出栈次序。 注意到一个规律:若火车x已经进站,那么火车1~x-1一定在其之前已经进站。 关键在于用栈的思想处理入栈序列。 注意标志数组的使用,容器在每次循环中一定要先清空。 #include<iostream> # 阅读全文
posted @ 2018-01-24 20:23 andrejimmy 阅读(10) 评论(0) 推荐(0)
摘要: 堆排序算法,之前看了好久一点头绪都没有,感觉只是零散的代码片段零散的拼在一起,然后就排序成功了。 最近重新回顾了堆排序,终于感觉有些明朗了。 堆排序包涵三个函数,HeapAdjust , CreatHeap , HeatSort。 堆排序和完全二叉树的性质是密切相关的。 二叉树中设叶子结点n个,则二 阅读全文
posted @ 2018-01-23 20:04 andrejimmy 阅读(11) 评论(0) 推荐(0)