- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
深度优先搜索
搜索与回溯是计算机解题中常用的算法,很多问题无法根据某种确定的计算法则来求解,可以利用搜索与回溯的技术求解。回溯是搜索算法中的一种控制策略。它的基本思想是:为了求得问题的解,先选择某一种可能情况向前探索,在探索过程中,一旦发现原来的选择是错误的,就退回一步重新选择,继续向前探索,如此反复进行,直至得到解或证明无解。如迷宫问题:进入迷宫后,先随意选择一个前进方向,一步步向前试探前进,如果碰到死胡同,说明前进方向已无路可走,这时,首先看其它方向是否还有路可走,如果有路可走,则沿该方向再向前试探;如果已无路可走,则返回一步,再看其它方向是否还有路可走;如果有路可走,则沿该方向再向前试探。按此原则不断搜索回溯再搜索,直到找到新的出路或从原路返回入口处无解为止。什么是搜索与回溯算法
深度优先搜索是搜索的一种算法,目的是从起点开始搜索直到到达指定顶点(终点)。深度优先搜索会沿着一条路径不断往下搜索直到不能再继续为止,然后再折返,开始搜索下一条候补路径。深度优先搜索
解说:深度优先搜索的特征为沿着一条路径不断往下,进行深度搜索。深度优先搜索选择的是最新候补顶点作为候补的顶点,所以会一路往下,沿着新发现的路径不断深入搜索。
输入一个数n(为1~9的整数),输出1~n的全排序。如123的全排序是123、132、213、231、312、321。【算法分析】题目可以形象化如下的例子,假如有编号为1、2、3的3张扑克牌和编号为1、2、3的3个盒子。现在需要将这3张扑克牌分别放到3个盒子里面,并且每个盒子有且只能放一张扑克牌。那么一共有多少种不同的放法呢?全排列
A同学手拿3张扑克牌,首先走到了1号盒子面前。此时A同学心里想:我是先放1号扑克牌,还是先放2号扑克牌,还是先放3号扑克牌呢?现在要生成的是全排列,很显然这三种情况都需要去尝试。A同学说那我们约定一个顺序吧:每次到一个盒子面前时,都先放1号,再放2号,最后放3号扑克牌。说完A同学走到了1号盒子前,将1号扑克牌放到第1个盒子中。
放好之后A同学往后走一步,来到了2号盒子面前。本来按照之前约定的规则,每到一个新的盒子面前,要按照1号、2号、3号扑克牌的顺序来放。但是现在A同学手中只剩下2号和3号扑克牌了,于是A同学将2号扑克牌放入了2号盒子中。放好之后A同学再往后走一步,来到了3号盒子面前。
现在A同学已经来到了3号盒子面前,按照之前约定的顺序,还是应该按照1号、2号、3号扑克牌的顺序来放,但是A同学手中只有3号扑克牌了,于是只能往3号盒子里面放3号扑克牌。放好后,A同学再往后走一步,来到了4号盒子面前。咦!没有第4个盒子,其实我们并不需要第4个盒子,因为手中的扑克牌已经放完了。
我们发现当A同学走到第4个盒子的时候,已经完成了一种排列,这个排列就是前面3个盒子中的扑克牌号码,即“123”。
是不是到此就结束了呢?肯定没有!产生了一种排列之后A同学需要立即返回。现在A同学需要退一步重新回到3号盒子面前。好!现在A同学已经回到了3号盒子面前,需要取回之前放在3号盒子中的扑克牌,再去尝试看看还能否放别的扑克牌,从而产生一个新的排列。于是A同学取回了3号扑克牌。当A同学再想、往3号盒子放别的扑克牌的时候,却发现手中仍然只有3号扑克牌,没有别的选择。于是A同学不得不再往回退一步,回到2号盒子面前。A同学回到2号盒子后,收回了2号扑克牌。现在A同学手里面有两张扑克牌了,分别是2号和3号扑克牌。按照之前约定的顺序,现在需要往2号盒子中放3号扑克牌(上一次放的是2号扑克牌)。放好之后A同学又向后走一步,再次来到了3号盒子面前。A同学再次来到3号盒子后,将手中仅剩的2号扑克牌放入了3号盒子。又来到4号盒子面前。当然了,这里并没有4号盒子。此时又产生了一个新的排列“132”。接下来按照刚才的步骤去模拟,便会依次生成所有排列:“213”、“231”、“312”和“321”。
设有n个整数的集合{1,2,…,n},从中取出任意r个数进行排列(rn),试列出所有的排列,n(为1~9的整数)。【算法分析】这题和对1~n的进行全排序基本是一样的,只是把原来的盒子由n个变成r个。数字全排列2
A+B=C全排列□□□+□□□=□□□,将数字1—9分别填入9个□中,每个数字只能使用一次使得等式成立。例如173+286=459是一个合理的组合,问一共有多少种合理的组合?(注:173+286=459与286+17
您可能关注的文档
- 教师招聘教育学心理学试题及(共十份试卷) .pdf
- 最新《安全生产法》(2021修正案)知识学习考试题(附参考答案).pdf
- 扬州市高邮市甘垛镇社区工作者考试试题汇总2024 .pdf
- 新安县国企招聘考试真题题库2024版 .pdf
- 统编版(2024)语文一年级下册10 古诗二首 小池 课件(共27张PPT).pptx
- 一年级语文第七单元教学设计 .pdf
- 3.3服务业的区位选择【第一课时】+课件-高中地理鲁教版(2019)必修第二册.pptx
- 第1课《春》课件 (共41张PPT).pptx
- 3.3服务业区位因素(以星巴克为例)课件高中地理人教版(2019)必修二.pptx
- 湖北省咸宁市咸安区2024届中考三模语文试题含解析 .pdf
- 4.1 陆地水体及其关系 课件高二上学期地理中图版(2019)选择性必修一.pptx
- 混凝土结构与砌体结构设计习题集 .pdf
- 统编版语文四年级下册 22.古诗三首 课件(共50张PPT).pptx
- 青海2024行测笔试真题及答案 .pdf
- 2.1 充分发挥市场在资源配置中的决定性作用 课件-高中政治统编版必修二经济与社会.pptx
- 27.巨人的花园 课件(共58张PPT).pptx
- 统编版语文一年级下册5 树和喜鹊 第1课时 课件(共37张PPT).pptx
- 2.1 充分发挥市场在资源配置中的决定性作用 课件政治一轮复习统编版必修二经济与社会.pptx
- 贵港市平南县2024届小升初考试语文试卷含答案 .pdf
- 小学期末考试质量分析 .pdf
文档评论(0)