问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

数据结构题目,广度优先和深度优先

发布网友 发布时间:2022-05-04 18:41

我来回答

2个回答

热心网友 时间:2022-04-19 05:13

(一)深度优先搜索的特点是:

(1)从上面几个实例看出,可以用深度优先搜索的方法处理的题目是各种
各样的。
有的搜索深度是已知和固定的,如例题2-4,2-5,2-6;有的是未知的,如例题2-7、例题2-8;
有的搜索深度是有*的,但达到目标的深度是不定的。
但也看到,无论问题的内容和性质以及求解要求如何不同,它们的程序结构
都是相同的,即都是深度优先算法(一)和深度优先算法(二)中描述的算法结
构,不相同的仅仅是存储结点数据结构和产生规则以及输出要求。
(2)深度优先搜索法有递归以及非递归两种设计方法。一般的,当搜索深度较小、问题递归方式比较明显时,用递归方法设计好,它可以使得程序结构更简捷易懂。当搜索深度较大时,如例题2-5、2-6。当数据量较大时,由于系统堆栈容量的*,递归容易产生溢出,用非递归方法设计比较好。
(3)深度优先搜索方法有广义和狭义两种理解。广义的理解是,只要最新产生的结点(即深度最大的结点)先进行扩展的方法,就称为深度优先搜索方法。在这种理解情况下,深度优先搜索算法有全部保留和不全部保留产生的结点的两种情况。而狭义的理解是,仅仅只保留全部产生结点的算法。本书取前一种广义的理解。
不保留全部结点的算法属于一般的回溯算法范畴。
保留全部结点的算法,
实际上是在数据库中产生一个结点之间的搜索树,
因此也属于图搜索算法的范畴。
(4)不保留全部结点的深度优先搜索法,由于把扩展望的结点从数据库中弹出删除,这样,一般在数据库中存储的结点数就是深度值,因此它占用的空间较少,所以,当搜索树的结点较多,用其他方法易产生内存溢出时,深度优先搜索不失为一种有效的算法。
(5)从输出结果可看出,深度优先搜索找到的第一个解并不一定是最优解。例如例题2-8得最优解为13,但第一个解却是17。如果要求出最优解的话,一种方法将是后面要介绍的动态规划法,另一种方法是修改原算法:把原输出过程的地方改为记录过程,即记录达到当前目标的路径和相应的路程值,并与前面已记录的值进行比较,保留其中最优的,等全部搜索完成后,才把保留的最优解输出。
二、广度优先搜索法的显著特点是:
(1)在产生新的子结点时,深度越小的结点越先得到扩展,即先产生它的子结点。为使算法便于实现,存放结点的数据库一般用队列的结构。
(2)无论问题性质如何不同,利用广度优先搜索法解题的基本算法是相同的,但数据库中每一结点内容,产生式规则,根据不同的问题,有不同的内容和结构,就是同一问题也可以有不同的表示方法。
(3)当结点到跟结点的费用(有的书称为耗散值)和结点的深度成正比时,特别是当每一结到根结点的费用等于深度时,用广度优先法得到的解是最优解,但如果不成正比,则得到的解不一定是最优解。这一类问题要求出最优解,一种方法是使用后面要介绍的其他方法求解,另外一种方法是改进前面深度(或广度)优先搜索算法:找到一个目标后,不是立即退出,而是记录下目标结点的路径和费用,如果有多个目标结点,就加以比较,留下较优的结点。把所有可能的路径
都搜索完后,才输出记录的最优路径。
(4)广度优先搜索算法,一般需要存储产生的所有结点,占的存储空间要比深度优先大得多,因此程序设计中,必须考虑溢出和节省内存空间得问题。
(5)比较深度优先和广度优先两种搜索法,广度优先搜索法一般无回溯操作,即入栈和出栈的操作,所以运行速度比深度优先搜索算法法要快些。
总之,一般情况下,深度优先搜索法占内存少但速度较慢,广度优先搜索算法占内存多但速度较快,在距离和深度成正比的情况下能较快地求出最优解。因此在选择用哪种算法时,要综合考虑。决定取舍追问你在说什么。。

追答你的题目呢

热心网友 时间:2022-04-19 06:31

先画图,广度优先就是从上往下,深度优先有几种遍历方法
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 图片里有4个数字,求解,在线等,谢谢,必采纳 死神动漫里十刃4号身上那个数字4的单独图片 ,谢谢。 跪求图片最好是油画中隐藏的3到4个阿拉伯数字的高清图 深度优先搜索的基本框架 这四个图片代表四个数字,有会的大神吗 七巧板中的数字4怎么拼?有图 手机可以打"勾"这个符号吗? 深度优先搜索具体引用? 谁有不同的阿拉伯数字4和7的图片 数的深度优先遍历使用什么数据结构 手机勾勾✔符号怎么打? 数字4的图片,好看点的,做头像 气钉枪原理 请英语翻译高手帮我翻译一段英文,翻译得好追加积分! 四年级童话作文 幸福是什么300字 卫生巾SKU在商超怎么管理 气钉枪的零部件如何工作? 福卡的主卡和副卡有什么不一样,只激活一个可以吗?两个的卡号还不一 fudi仓储会员店会员怎么办 盒马拟联合家乐福一起举报山姆,此事的真相到底是什么? 电气图中 数字4 6代表的什么,是回路线的大小还是根数 广度优先搜索时,需要用到的数据结构是 A.链表 B.队列 C.栈 D.散列表 在qq上给一个人发自己的位置把他删了他还会定位到自己吗? 我的qq好友可以通过qq看到我的位置吗 实现图的广度优先搜索算法需使用的辅助数据结构是什么? 把QQ好友删了之后,他还能用QQ定位到我吗? 招商银行活期是什么意思?存的钱可以取出来么,我出进去点的事是活期? 数据结构深度优先遍历: 招商银行网上银行活期存款如何转入整存整取 招商银行怎么把活期存款变成定期存款? 招商银行内的活期存钱款怎么通过atm机转成定期存期存款? 招商银行存款,存到了活期存款,现在急需用钱!怎么办? 招商银行一个月的活期存款利息是多少,如1000元存一个月活期利息是多少? 交通银行环球万事达信用卡,可以在国内刷卡消费吗? 我有张美国万事达的信用卡,现在我在国内,想买一些东西,怎么用? 王维诗山居秋暝描写秋天景色的诗句? 古诗山居秋暝的翻译 王维诗山居秋暝描写秋天景色的诗句 山居秋暝古诗解释 山居秋暝简单诗意是什么?亲~