/*读懂题意,bfs即可AC。不过注意“超出空间MemoryLimitExceeded”,需要记录节点的状态,判重。boolisUsed[MaxN][MaxN][1010];//用于判重*/ 1 #include 2 #include 3 #include 4 #include 5...
分类:
其他好文 时间:
2015-12-01 01:33:33
阅读次数:
253
/*bfs+hash判重 第一次接触“hash判重”(哈希函数是依据于取余),是一种很好的思想,不过也有小的瑕疵:hash判重: 棋盘表示:空(0),白(1),黑(2) 整个棋盘一共16个格子,可以看成3进制的16位数,将其转化为10进制数,找一个质数取余,利用余数的不同来给棋盘的状态判重。 (用质...
分类:
其他好文 时间:
2015-11-29 00:40:18
阅读次数:
147
题意是给一个二维的迷宫,求任意一个点以最优方案走到出口的步数。求这些点中里出口最远的一个点的步数。迷宫有两个出口。做法是从两个出口各做一遍宽度优先搜索,然后就得到了所有点离当前门口最近的距离。在step数组中记录下最短距离,然后两边宽搜取最小值。然后遍历step数组,输出最大的一个就是答案。/*ID...
分类:
其他好文 时间:
2015-09-06 12:55:22
阅读次数:
144
https://leetcode.com/problems/count-complete-tree-nodes/宽度优先搜索方法,超时!!/** * Definition for a binary tree node. * struct TreeNode { * int val; * ...
分类:
其他好文 时间:
2015-09-03 19:09:30
阅读次数:
160
8数码问题的一套完整C++解决方案,包括启发式函数、搜索策略、界面显示...
分类:
编程语言 时间:
2015-07-31 18:34:26
阅读次数:
318
C++之广度优先搜索算法篇C++之广度优先搜索算法篇 广度优先搜索(又称宽度优先搜索算法)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。 Dijkstra单源最短路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。其别名又叫BFS,属于一种盲目搜寻法,目的是系统.....
分类:
编程语言 时间:
2015-07-12 10:53:45
阅读次数:
180
题目大意:很简单,只需要找出一颗二叉树的最大深度即可,貌似没有时间和空间的要求。求解方法:更简单,只需要按照宽度优先的方法去查找即可,在这里我用a队列保存待扩展的节点,用b来保存a扩展出来的节点,再利用t中间变量来交换a和b,直到a列队为空时,结束。
注意边界条件,root=NULL时,应该返回0...
分类:
其他好文 时间:
2015-07-03 19:14:06
阅读次数:
110
最近在研究PHP,因为项目中需要使用到缩略图,缩略图如果不裁剪的话,你会发现图像变得奇形怪状,不利于排版。因此这里就简单介绍一下生成居中缩略图的想法:一张图片480*800现在我要裁剪成一张240*240的图片类似于上面的这张。1.首先我们需要计算缩放的时候是宽度优先还是高度..
分类:
编程语言 时间:
2015-06-29 18:03:19
阅读次数:
162
图的遍历是指从一个顶点出发,访问且仅一次访问图中其余所有顶点,不是所有边的处理。是求图的连通性,拓扑排序,路径求解等问题的基础。 非常基本的图的遍历方法有深度优先搜索法和广度(宽度)优先搜索法。 ? ...
分类:
其他好文 时间:
2015-06-21 09:33:49
阅读次数:
160
人工智能课程的实验(我的解法其实更像是算法课程的实验)用到的算法:深度优先搜索、宽度优先搜索(状态扩展的不同策略)数据结构:表示状态的结构体、多维数组(可能是最近做算法竞赛题的影响,这次并不像以前那样依赖类和面向对象了,而是用最简单(几乎没有封装)的数据表示方法和大量的全局变量来存储数据,用面向过程...
分类:
其他好文 时间:
2015-05-26 14:07:33
阅读次数:
158