算法
算法学习
Demo2021
这个作者很懒,什么都没留下…
展开
-
POJ3984【迷宫问题】
所以,如果用此解法不一定能得到迷宫的最短路径,因为它会把所有可行路径(即能到达终点的)都遍历一遍。特别要注意的是,一定要做好标记,不然在某一点会陷进死循环,然后还要记得回溯,即递归后还原该点为可行点,不然你只能得到唯一一条路径,因为你把到达这条终点的路径封死了,其他路径哪还有机会到达终点。BFS:即广度优先搜索,它的特点是一层层遍历,很像数据结构的队列;一般用此法可以找到问题的最优解,但要注意的是,一定要做好标记,即遍历过的点不能重新入队列了,不然就是死循环。接下来我们讨论这两种解法的异同点。原创 2022-11-30 17:26:01 · 537 阅读 · 0 评论 -
POJ3268【奶牛派对】最短路径
描述N个农场(1≤N≤1000)各1头奶牛,方便编号1。N将参加在农场#X(1≤X≤N)举行的大型奶牛聚会,共计M(1≤M≤100,000)个单向(单行道连接成对农场;i路要求Ti(1≤Ti≤100)时间单位穿越。每头牛都必须步行去参加聚会,聚会结束后,再回到她的农场。每头牛都很懒,因此会选择最短时间内的最佳路线。牛的回程路线可能与它原来去派对的路线不同,因为路是单向的。在所有的牛中,一头牛走着去...原创 2019-08-17 16:34:10 · 395 阅读 · 0 评论 -
POJ3984【迷宫问题】
前言:相信大家都玩过迷宫游戏,它的游戏规则就是从起点开始出发到达终点,在ACM中,它是一道很好的搜题题,其可以用BFS和DFS两种方法解决,接下来我们讨论这两种解法的异同点。DFS:即深度优先搜索,它的特点是一直递归到结束,在往回遍历,很像数据结构中的栈;所以,如果用此解法不一定能得到迷宫的最短路径,因为它会把所有可行路径(即能到达终点的)都遍历一遍,特别要注意的是,一定要做好标记,不然在某一点会陷进死循环(重复在一点递归操作),然后还要记得回溯,即递归后还原该点为可行点,不然你只能得到唯一一条路径,因原创 2020-12-13 15:47:10 · 300 阅读 · 0 评论 -
POJ1088【滑雪】 DFS+记忆化
Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。数组的每个数字代表点的高度。一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度减小。在上面的例子中,一条可滑行的滑坡为24-17-16-1。当然25-24-23-…事实上,这是最长的一条。输入的第一行表示区域的行数R和列数C(1原创 2020-05-10 20:48:43 · 135 阅读 · 0 评论