关于树,图,还有搜索的初步学习

本文探讨了搜索算法中的深度搜索(DFS)与广度搜索(BFS),并介绍了这两种算法在解决迷宫问题等典型场景的应用。同时,文章还讨论了数据结构中的树与图的概念,包括它们的不同类型及遍历方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

搜索分为深度搜索和广度搜索两种。(BFS&DFS)

深度搜索一般依靠 递归来实现,广度搜索一般依靠队列来实现。像迷宫问题,寻路问题,n皇后问题便是最为典型的搜索问题。

树是不完全线性结构而图不是线性结构,而排列则是线性结构。

二叉树严格意义上不是树,左孩子,右兄弟是树转化为二叉树的一般做法。在将一棵树转换为二叉树之后,右孩子为空的数目为原来的树非叶子结点(存在子节点的结点)+1

树的遍历有三种:前序,中序和后序。区分方法是看什么时候遍历根节点。

图分为有向图和无向图,区分依据,有向图a到b,则b到不了a,无向图都可以。

深度搜索中主函数所做的事情,是将图上所有点标记为新点,将深度初始化为0,当在途中可以找到新点时调用DFS函数;

dfs则判断一个点到过没有,到过就返回,没到过就讲这个点标记为到过,然后用递归判断与这个点相邻的点

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值