摘要: ACM 所有算法 数据结构 栈,队列,链表 哈希表,哈希数组 堆,优先队列双端队列可并堆左偏堆 二叉查找树Treap伸展树 并查集集合计数问题二分图的识别 平衡二叉树 二叉排序树 线段树一维线段树二维线段树 树状数组一维树状数组N维树状数组 字典树 后缀数组,后缀树 块状链表 哈夫曼树 桶,跳跃表 阅读全文
posted @ 2017-07-28 21:11 Roni_i 阅读(798) 评论(1) 推荐(1) 编辑
摘要: 对于迷宫一般维护参数为当前这个点的坐标x,y以及当前走过的步数。判断是否到达某个点就是判断当前坐标是否等于目标坐标。若不等于,继续搜索,正常迷宫一般有四个方向可以走,可以定义一个方向数组int next[4][2]={{0,1},{1,0},{0,-1},{-1,0}}; (→ /↓/ ← / ↑) 阅读全文
posted @ 2017-07-28 15:34 Roni_i 阅读(168) 评论(0) 推荐(0) 编辑
摘要: dij贪心地取min(cur,pre)最大的路径 或者直接按权值排序,贪心地从最小或最大取,并茶几加点,联通停止即可。。。 我们还可以用二分。。就是二分最大边权或者最小边权。。重复上面类似kruskal的过程 k短路。。次小生成树。。可持久化堆 dij本质还是个贪心地过程 求满足某条件的最短路径或最 阅读全文
posted @ 2017-07-28 11:44 Roni_i 阅读(469) 评论(0) 推荐(0) 编辑