广度优先搜索及其应用

广度优先搜索及其应用

ID:11045509

大小:128.00 KB

页数:13页

时间:2018-07-09

广度优先搜索及其应用_第1页
广度优先搜索及其应用_第2页
广度优先搜索及其应用_第3页
广度优先搜索及其应用_第4页
广度优先搜索及其应用_第5页
资源描述:

《广度优先搜索及其应用》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、广度优先搜索在图论中的应用摘要:本文详细地分析了广度优先搜索算法,重点研究了该算法在图论中的应用,尤其是在最短路径问题中的应用。通过与其它最短路搜索算法的比较分析,本文得到了这些最短路算法之间的关系。关键词:广度优先搜索,最短路径,图论。Abstract:thispapergivesadetailedanalysisofthebreadth-firstsearchalgorithm,andemphasisonthealgorithmintheapplicationofgraphtheory,especiallyinth

2、eshortestpathproblemintheapplication.Throughthecomparativeanalysiswiththeothershortestpathsearchalgorithm,thispaperobtainstheserelationshipsbetweentheseshortestpathalgorithms.Keywords:breadthfirstsearch,shortestpath,graphtheory.12目录摘要0Abstract0一、引言2二、广度优先搜索算法2(一

3、)基本思想2(二)算法结构4(三)算法特性5(四)广度优先搜索算法在图论中的应用6三、广度优先搜索算法在图论中应用的具体分析7(一)寻找连接元件7(二)测试是否二分图7(三)寻找非加权图中任两点的最短路径7四、最短路中常用算法的比较9五、总结10参考文献10附件1112一、引言使用计算机求解的问题中,有许多问题是无法用数学公式进行计算推导和采用模拟方法来找出答案的。这样的问题往往需要我们根据问题所给定的一些条件,在问题的所有可能解中用某种方式找出问题的解来,这就是所谓的搜索法或搜索技术。常见的搜索算法有广度优先搜索法(

4、简称为BFS)、深度优先搜索法、双向广度优先搜索法,A*算法、回溯法、枚举法、分支定界法等。图论是数学的一个分支,以图为研究对象。这种图由若干给定的点和连接两点的线构成,借以描述某些事物之间的关系。用点代表事物,用连接两点的线表示两个事物之间具有特定关系。图论起源于18世纪,追朔到1736年瑞士数学家L.Euler出版第一本图论著作,提出和解决著名Konigsberg七桥问题。从那时以来,图论不仅在许多领域,如计算机科学,运筹学,心理学等方面得到了广泛的应用,而且学科本身也获得长足发展,形成了拟阵理论,超图理论,代数图

5、论,拓扑图论等新分支。本文讨论广度优先搜索在图论中的应用。二、广度优先搜索算法(一)基本思想12采用广度优先搜索算法解答问题时,需要构造一个表明状态特征和不同状态之间关系的数据结构,这种数据结构称为结点。根据问题所给定的条件,从一个结点出发,可以生成一个或多个新的结点,这个过程通常称为扩展。结点之间的关系一般可以表示成一棵树,它被称为解答树。搜索算法的搜索过程实际上就是根据初始条件和扩展规则构造一棵解答树并寻找符合目标状态的结点的过程。广度优先搜索算法中,解答树上结点的扩展是沿结点深度的“断层”进行,也就是说,结点的扩

6、展是按它们接近起始结点的程度依次进行的。首先生成第一层结点,同时检查目标结点是否在所生成的结点中,如果不在,则将所有的第一层结点逐一扩展,得到第二层结点,并检查第二层结点是否包含目标结点,...对长度为n+1的任一结点进行扩展之前,必须先考虑长度为n的结点的每种可能的状态。因此,对于同一层结点来说,求解问题的价值是相同的,我们可以按任意顺序来扩展它们。这里采用的原则是先生成的结点先扩展。广度优先搜索算法的搜索顺序如下图:ABCDEFGHIJKLM广度优先搜索顺序如下:A->B->C->D->E->F->G->H->I-

7、>J->K-L->M广度优先搜索算法中,为了便于进行搜索,要设置一个表存储所有的结点,为了满足12先生成的结点先扩展的原则,存储结点的表一般设计成队列的数据结构。搜索过程中不断地从队列头取出结点进行扩展。对生成的新结点,要检查它是否已在队列中存在,还要检查它是否目标结点。如果新结点是目标结点,则搜索成功,程序结束;若新结点不是目标结点,并且未曾在队列中出现过,则将它加入到队列尾,否则将它丢弃,再从队列头取出结点进行扩展......。最终可能产生两种结果:找到目标结点,或扩展完所有结点而没有找到目标结点。如果目标结点存在

8、于解答树的有限层上,广度优先搜索算法一定能保证找到一条通向它的最佳路径,因此广度优先搜索算法特别适用于只需求出最优解的问题。当问题需要给出解的路径,则要保存每个结点的来源,也就是它是从哪一个节点扩展来的。对于不同的问题,用广度优先搜索法的算法基本上都是一样的。但表示问题状态的结点数据结构、新结点是否目标结点和是否重复结点的判断等方

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。