算法
文章平均质量分 84
penghuilater
这个作者很懒,什么都没留下…
展开
-
深度搜索和广度搜索
深度优先搜索和广度优先搜索的深入讨论(一)深度优先搜索的特点是:(1)从上面几个实例看出,可以用深度优先搜索的方法处理的题目是各种各样的。有的搜索深度是已知和固定的,如例题2-4,2-5,2-6;有的是未知的,如例题2-7、例题2-8;有的搜索深度是有限制的,但达到目标的深度是不定的。但也看到,无论问题的内容和性质以及求解要求如何不同,它们的程序结构都是相同的,即都是深度优先算法(一)和深度优先算转载 2016-12-12 15:18:59 · 1705 阅读 · 0 评论 -
启发式算法
计算机科学的两大基础目标,就是发现可证明其执行效率良好且可得最佳解或次佳解的算法。而启发式算法则试图一次提供一或全部目标。 例如它常能发现很不错的解,但也没办法证明它不会得到较坏的解;它通常可在合理时间解出答案,但也没办法知道它是否每次都可以这样的速度求解。 有时候人们会发现在某些特殊情况下,启发式算法会得到很坏的答案或效率极差,然而造成那些特殊情况的数据结构,也许永远不会在现原创 2016-12-12 15:28:18 · 4185 阅读 · 0 评论 -
二叉树的遍历
先序遍历 给定一棵子树,按照先序遍历的方式,首先访问它的根结点,然后是左子结点,最后是右子结点。由于按照从左到右的方式依次遍历各个子树,因此以相同的方式将左子结点和右子结点当作新的子树的根。先序遍历是按照深度优先的方式遍历结点的,第11章将介绍深度优先的思想。 中序遍历 给定一棵子树,按照中序遍历的方式,首先访问左子结点,然后是根结点,最后是右子结点。由于按照从左到右的方式依次遍原创 2016-12-12 15:30:39 · 285 阅读 · 0 评论 -
图的算法
迪克斯特切算法(英语:Dijkstra's algorithm)是由荷兰计算机科学家艾兹赫尔·戴克斯特拉(Edsger Wybe Dijkstra)发明的。算法解决的是有向图中单个源点到其他顶点的最短路径问题。举例来说,如果图中的顶点表示城市,而边上的权重表示著城市间开车行经的距离,该算法可以用来找到两个城市之间的最短路径。 该算法的输入包含了一个有权重的有向图 G,以及G中的一个来源顶原创 2016-12-12 15:40:13 · 393 阅读 · 0 评论