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

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

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

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

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

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

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

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

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



猜你喜欢

转载自blog.csdn.net/jinyu_mobao/article/details/79275825