二分搜索,也称二分查找、折半搜索,是一种在有序数组中查找特定元素的搜索算法。搜索从数组的中间元素开始,如果中间元素刚好是要查找的元素,则搜索结束,如果要查找的特定元素大于(小于)中间元素,则在数组大于(小于)中间元素的一半中查找。该算法的递归实现比较容易理解,思路更清晰,但效率方面仍有提高的空间。代...
分类:
其他好文 时间:
2014-11-07 11:15:04
阅读次数:
171
题目:poj 3177 & 3352
题意:大概意思就是给你一个无向图,让你添加最少的边,让所有点都双连通。
分析:双连通的定义就是任意两个点至少有两条路可达。
其实做法跟添加最少边强连通一样,先对图中已经双连通的缩点,然后重新编号。
这就是著名的Tanjan算法。
通过搜索的思想对所有存在环的边遍相同的号
如果要让所有的点双连通,那么对于缩点后的图中如果度数为 1 的...
分类:
其他好文 时间:
2014-11-04 22:47:28
阅读次数:
387
1、折半搜索算法
(1)算法代码:
(2)复杂性分析
任何一种以比较为基础的搜索算法, 在最坏情况下所用的时间都不可能低于 (log ) n ? ,因此,也就不可能存在最坏情况下所需时间比折半搜索数量级还低的算法。
2、排序问题
2.1归并排序算法
(1)归并排序算法思想
该算法采用分治方法, 将要排序的数组分成两部分, 先对每部分进行排序,然后将两部分的...
分类:
编程语言 时间:
2014-10-25 21:35:00
阅读次数:
246
头文件和源文件复制到项目中就能用了! have fun使用cocos2dx 3.2 原理都一样淡蓝色的点是地图深蓝色的点是障碍物绿色的点是路径暗绿色的点是搜寻过的点红色的点是按路径行走的点dijkstra算法 会发现路径最短,但寻找过的路径比较多(计算速度慢)最佳优先搜索算法会发现寻找过的路径少了(...
分类:
编程语言 时间:
2014-10-20 02:06:18
阅读次数:
348
博弈树搜索技术简介:博弈树的搜索算法,负值极大搜索,alpha-beta搜索,渴望搜索,PVS极窄窗口搜索等。通常来说,搜索算法常常和以下技术联合在一起。如下:1.置换表,记录已经搜索过的棋局,避免再次搜索。2.吃子启发,优先试下能够吃对方棋子的走法。3.杀手启发,历史启发简化版。4.历史启发,优先...
分类:
编程语言 时间:
2014-10-18 16:55:14
阅读次数:
347
EPZS(Enhance Predictive Zonal Search) 增强预测区域搜索,是一种整像素运动估计的搜索算法。 EPZS采用的是相关性较高的预测方法。这里的相关性较高是指,更多地根据已有的条件,来进行运动向量的预测(如采用相邻块的mv作为当前搜索块的mv进行预测)。Search...
分类:
其他好文 时间:
2014-10-17 01:37:13
阅读次数:
338
A*搜索算法,俗称A星算法。这是一种在图形平面上,有多个节点的路径,求出最低通过成本的算法。常用于游戏中的NPC的移动计算,或在线游戏的BOT的移动计算上。该算法像Dijkstra算法一样,可以找到一条最短路径;也像BFS一样,进行启发式的搜索。在此算法中,如果以 g(n)表示从起点到任意顶点n的实...
分类:
编程语言 时间:
2014-10-14 01:50:07
阅读次数:
223
头文件和源文件拷贝到项目中就能用了! have fun使用cocos2dx 3.2 原理都一样淡蓝色的点是地图深蓝色的点是障碍物绿色的点是路径暗绿色的点是搜寻过的点红色的点是按路径行走的点dijkstra算法 会发现路径最短,但寻找过的路径比較多(计算速度慢)最佳优先搜索算法会发现寻找过的路径少了(...
分类:
编程语言 时间:
2014-10-10 14:48:30
阅读次数:
233