自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 合并排序

合并排序据说也是32个经典算法之一。三个经典排序:快速排序、堆排序、合并排序,时间复杂度都是O(nlgn),但还是有很大区别的。可以参考这个:快排、堆排、并排合并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。合并排序法是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干

2015-04-04 09:46:22 463

原创 堆排序

32个经典算法之一。堆排序(Heapsort)是指利用堆积树(堆)这种数据结构所设计的一种排序算法,它是选择排序的一种。可以利用数组的特点快速定位指定索引的元素。堆分为大根堆和小根堆,是完全二叉树。PS:树是图的子集,堆是树的一种形态。(1)用大根堆排序的基本思想:① 先将初始文件R[1..n]建成一个大根堆,此堆为初始的无序区② 再将关键字最大的记录R

2015-04-03 17:41:49 502

原创 Kruskal算法

求加权连通图的最小生成树的算法。和Prim算法对应,经典算法。算法步骤:假设 WN=(V,{E}) 是一个含有 n 个顶点的连通网,则按照克鲁斯卡尔算法构造最小生成树的过程为:先构造一个只含 n 个顶点,而边集为空的子图,若将该子图中各个顶点看成是各棵树上的根结点,则它是一个含有 n 棵树的一个森林。之后,从网的边集 E 中选取一条权值最小的边,若该条边的两个顶点分属不同的树,则将其加入子

2015-04-02 22:22:43 320

原创 Best-First-Search算法

缩写起来是跟广度优先搜索一样的BFS,实际上不同。此BFS按照类似Dijkstra的流程运行,不同的是它能够评估任意结点到目标点的代价。与选择离初始结点最近的结点不同的是,它选择离目标最近的结点。BFS不能保证找到一条最短路径。然而,它比Dijkstra算法快的多,因为它用了一个启发式函数(heuristic function)快速地导向目标结点。看看维基百科的解释:Best-Firs

2015-04-02 16:03:20 9535

原创 Dijkstra算法

经典不解释。Dijkstra算法从物体所在的初始点开始,访问图中的结点。它迭代检查待检查结点集中的结点,并把和该结点最靠近的尚未检查的结点加入待检查结点集。该结点集从初始结点向外扩展,直到到达目标结点。Dijkstra算法保证能找到一条从初始点到目标点的最短路径,只要所有的边都有一个非负的代价值。算法步骤:G={V,E}1. 初始时令 S={V0},T=V-S={其

2015-04-02 15:47:09 471

原创 A*搜索

又是最重要的32个算法之一。是一种静态路网中求解最短路最有效的直接搜索方法。后面还有更多改进的算法。

2015-04-01 20:53:47 458

原创 集束搜索

看计算机科学中最重要的32个算法,其中有个是集束搜索(又名定向搜索,Beam Search)——最佳优先搜索算法的优化。使用启发式函数评估它检查的每个节点的能力。不过,集束搜索只能在每个深度中发现前m个最符合条件的节点,m是固定数字——集束的宽度。泛泛的介绍,不是很能理解清楚,于是有百度又google,写篇东西备忘。先贴维基百科的地址:Beam Search翻译过来就是:Beam Se

2015-04-01 19:18:25 2306

原创 Struts2 + Spring + Hibernate 入门 2

继上一节《Struts2 + Spring + Hibernate 入门1》了解SSH的使用领域和意义后,接下来搭建一个SSH框架项目来观察各个部件的运行原理。一、搞个helloworld推荐用eclipse加插件方式来解决,可以参考这个例子:Eclipse搭建SSH(Struts2+Spring3+Hibernate3)框架项目教程整合三个框架的过程难

2015-03-31 19:45:40 397

原创 Struts2 + Spring + Hibernate 入门 1

用工具之前先了解工具,SSH不是一个框架的三部分,而是三个不同框架集成使用,它们既可以单独使用,也可以与其他工具进行搭配,三者之间比较好的遵循了设计模式里的“高内聚低耦合”原则,学习和使用比较方便,尤其是利于快速开发web应用程序,构建灵活、易于扩展,目前比较流行。

2015-03-31 17:16:11 482

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除