二分搜索定义 二分搜索算法是一种在有序数组中查找某一特定元素的搜索算法。搜索过程中从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较,如果在某一步骤数组为空,则代表找不到 ...
分类:
其他好文 时间:
2017-12-05 13:34:49
阅读次数:
151
冒泡排序: 选择排序:选择某个索引位置的元素,然后和后面元素一次比较,若大于则交换位置,经过第一轮比较排序后可得出最小值,然后使用同样的方法把剩下的元素逐个比较即可。选择排序每一轮只进行一次交换,相对于冒泡排序效率高一些。 数组的搜索算法:从指定数组中去搜索某一个元素的索引是多少。 方式一:线性搜索 ...
分类:
编程语言 时间:
2017-12-04 13:14:05
阅读次数:
162
1.项目名称:象棋游戏 2.小组成员:高鲁莹,王梓晗,董馨遥,杨璐,崔晓爽,安泽鹏 3.开发背景 周围有很多人喜欢玩象棋游戏,本以为是很简单的开发过程,没想到费了这么多周折,开发出的也仅仅能进行人机对战。 4.需求分析 棋盘棋子的局面、鼠标响应控制棋子移动、棋子的走法规则、人机对弈的搜索算法、胜负判 ...
分类:
其他好文 时间:
2017-11-30 22:12:44
阅读次数:
152
l 快速排序 对于一个待排序序列,通过一趟排序将它分成两个子序列,其中一个序列内所有元素均小于另外一个序列中的任意一个元素。然后对两个子序列均进行上述的排序。知道最后各个子序列均完成排序。 l 深度优先搜索 是对树和图的一种遍历和搜索算法。每次都扩展新产生的状态。 以树为例,选定初始结点,按深度递增 ...
分类:
其他好文 时间:
2017-11-21 01:00:08
阅读次数:
186
我们经常会用到一些算法,而大部分算法过于抽象,记忆起来比较困难,而使用图解可以帮助我们更好地理解和记忆这些算法。 一、深度优先搜索算法(DFS) 深度优先搜索算法(Depth-First-Search),是搜索算法的一种。它是图论中的经典算法,利用深度优先搜索算法可以产生目标图的相应拓扑排序表,利用 ...
分类:
编程语言 时间:
2017-11-10 21:51:26
阅读次数:
225
深度优先搜索算法(Depth-First-Search),是搜索算法的一种。它沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所有边都己被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为止。如果还存在未被发现的节点, 则选择其中一个作为源 ...
分类:
其他好文 时间:
2017-11-02 22:04:50
阅读次数:
238
广度优先搜索算法(Breadth-First-Search),是一种图形搜索算法。 简单的说,BFS是从根节点开始,沿着树(图)的宽度遍历树(图)的节点。如果所有节点均被访问,则算法中止。BFS同样属于盲目搜索。一般用队列数据结构来辅助实现BFS算法。 算法步骤: 1. 首先将根节点放入队列中。 2 ...
分类:
其他好文 时间:
2017-11-02 22:02:30
阅读次数:
180
首先,需要说明的是搜索算法本质上也是枚举的一种,时间复杂度还是很高的,遇到问题(特别是有水平的比赛上),不要优先使用搜索算法。 这里总结一下DFS算法: 1、从图中某个顶点出发,访问v。 2、找出刚访问过的顶点的第一个未被访问的邻接点,访问该顶点。以该顶点为新顶点,重复此步骤,直到刚访问的顶点没有未 ...
分类:
编程语言 时间:
2017-10-28 12:54:17
阅读次数:
198
广度优先、深度优先、A*算法、 Minimax算法(参考http://blog.csdn.net/zkybeck_ck/article/details/45644471) Alpha-beta剪枝(参考http://blog.csdn.net/zkybeck_ck/article/details/4 ...
分类:
编程语言 时间:
2017-10-17 09:53:43
阅读次数:
226