概述:本文主要讲述一些搜索算法的使用,以及其中奥妙思想的思考。 一:广度搜索与深度搜索---BFS与DFS 1:实现算法导论中的BSF #include #define MAX 1000000struct Node{ int d; int p; int color; int id;};int _tm...
分类:
其他好文 时间:
2014-07-16 23:08:16
阅读次数:
224
优化算法入门系列文章目录(更新中): 1.模拟退火算法 2.遗传算法一. 爬山算法 ( Hill Climbing ) 介绍模拟退火前,先介绍爬山算法。爬山算法是一种简单的贪心搜索算法,该算法每次从当前解的临近解空间中选择一个最优解作为当前解,直到达到一个局部最优解。 爬山算法实现很简单,其主要.....
分类:
其他好文 时间:
2014-07-10 10:54:28
阅读次数:
288
深度优先搜索(DFS)是搜索算法的一种。最早接触DFS应该是在二叉树的遍历里面,二叉树的先序、中序和后序遍历实际上都属于深度优先遍历,实质就是深度优先搜索,后来在图的深度优先遍历中则看到了更纯正的深度优先搜索算法。
通常,我们将回溯法和DFS等同看待,可以用一个等式表示它们的关系:回溯法=DFS+剪枝。所以回溯法是DFS的延伸,其目的在于通过剪枝使得在深度优先搜索过程中如果满足了回...
分类:
其他好文 时间:
2014-07-08 20:34:20
阅读次数:
271
A*搜寻算法,俗称A星算法,作为启发式搜索算法中的一种,这是一种在图形平面上,有多个节点的路径,求出最低通过成本的算法。常用于游戏中的NPC的移动计算,或线上游戏的BOT的移动计算上。该算法像Dijkstra算法一样,可以找到一条最短路径;也像BFS一样,进行启发式的搜索。 A*算法最为核心的部分....
分类:
其他好文 时间:
2014-07-07 11:09:01
阅读次数:
212
顺序查找和二分查找
一、顺序查找思想
1、 从表的一端开始扫描,顺序扫描线性表,依次扫描到的结点关键字与给定的值K相比较.如果当前扫描到的结点的关键字与给定的值K相等,则查找成功;若扫描结束后,仍未找到关键字与给定的值K相等,则查找失败;
2、顺序查找既适用于顺序存储结构,也适用于线性表的链式存储结构;
3、ASL= (n+1)/2为其平均查找长度...
分类:
其他好文 时间:
2014-07-04 08:49:02
阅读次数:
230
二分搜索算法
题目:设 a [ 0 : n - 1 ] 是一个已排好序的数组。请改写二分搜索算法,使得当搜索元素 x 不在数组中时,返回小于 x 的最大元素的位置 i 和大于 x 的最小元素位置 j 。当搜索元素在数组中时, i 和j相同,均为 x 在数组中的位置。并对自己的程序进行复杂性分析。
import java.util.Arrays;
import java.util.Scanner...
分类:
其他好文 时间:
2014-06-27 09:52:13
阅读次数:
205
爬山法是一种局部搜索算法,也属一种启发式方法。但它一般只能得到局部最优,并且这种解还依赖于起始点的选取。现在有各种版本的爬山法,下面给出的是一种简单迭代爬山法。开始时,当前解的所有可能邻域都被考虑,并且将且有最好评估值eval_r(vn)的串vn与当前串vc作比较。如果eval_r(vc)比eval...
分类:
其他好文 时间:
2014-06-23 06:44:17
阅读次数:
507
深度优先算法
问题
给定一个有向图,判断其顶点能否到达另外一个顶点。
解决办法
使用深度优先算法,和无向图中的是一样的。
代码
import java.util.Stack;
/**
* Created by caipeichao on 14-6-11.
*/
public class Digrap...
分类:
其他好文 时间:
2014-06-22 21:32:28
阅读次数:
250
通过相邻块的预测得到mvp后,会以mvp为基础搜索最佳的匹配块,UMHexagonS就是h.264中用的一种搜索算法。UMHexagonS是一种整像素搜索算法,也就是搜索过程中,参考图像一直都是原来的重构图像,并没有使用经过插值的图像进行搜索。首先UMHexagonS会根据相关信息去得到比较有可能的...
分类:
其他好文 时间:
2014-06-18 22:22:09
阅读次数:
276
今天要写一个联系人搜索算法。百度了下, 在code4App中找到相关代码。但是自己跑了下, 发现报错。错误内容如下:"Cast from pointer to smaller type 'int' loses information” 从错误内容我们也能看出, 错误出在'int'这里了。而那份代码也比较早的, 在Xcode5.1之后, 要用uintptr_t来替代int。把错误语句处的int全换成...
分类:
移动开发 时间:
2014-06-08 18:28:25
阅读次数:
429