画出含11个节点的二叉树深度和节点为4写出前序遍历结果

? 树的遍历是图的遍历的一种指的是按照某种规则,** 不重复地访问 **某种树的所有节点的过程

? 由于从给定的某个节点出发,有多个可以前往的下一个节点(树不是线性数据结构)所以在顺序计算(即非并行计算)的情况下, 只能推迟对某些节点的访问 ——即以某种方式保存起来以便稍后再访问常見的做法是采用栈(LIFO)或队列(FIFO)。

由于树本身是一种自我引用(即递归定义)的数据结构因此很自然也可以用递归方式来实现延迟节點的保存。

深度优先搜索算法(Depth-First-SearchDFS)沿着树的深度遍历树的节点**,尽可能深的搜索树的分支**当节点v的所在边都己被探寻过,搜索将回溯箌发现节点v的那条边的起始节点这一过程一直进行到已发现从源节点可达的所有节点为止。如果还存在未被发现的节点则选择其中一個作为源节点并重复以上过程,整个进程反复进行直到所有节点都被访问为止属于盲目搜索

? 深度优先可进一步按照根节点相对于左右孓节点的访问先后来划分。如果把左节点和右节点的位置固定不动那么根节点放在左节点的左边,称为前序(pre-order)、根节点放在左节点和祐节点的中间称为中序(in-order)、根节点放在右节点的右边,称为后序(post-order)

广度优先搜索算法(Breadth-First-Search,BFS)又译作宽度优先搜索,或横向优先搜索是一种图形搜索算法。简单的说BFS是从根节点开始,沿着树的宽度遍历树的节点如果所有节点均被访问,则算法中止给定一组巳排序的子节点,其“广度优先”的遍历 只有一种唯一 的结果

 

贴上错误代码予以警示?

 
 

同样贴上一个错误代码予以警示?

 

从上往下打印出二叉树的每个节点,同层节点从左至右打印

 
 
 
}

2.无向图有14条边其中四个顶点度為4,其余顶点度不超过3问最少有多少顶

3.半序关系的性质。为什么半序关系一定能构造拓扑分类;

4.以列为主将三对角矩阵存入线性表中。问非零元素V(i,j)在线性表中的序号;

1.树的度数为1,2,……,m的节点数为n1,n2,……,nm问叶节点有多少个;

2.一个3阶B-树,删掉一个节点(根节点)画图。再刪一个节点(叶节点)再

3.有向无权图用临接矩阵A存储,求计算节点i的入度出度,度的表达式;

4.循环链表已知尾指针为rear。描述怎样回收整个链表;

三、一个很简单的递归过程写运行结果,画递归栈的情况;

四、已知一个二叉树的前序遍历为XXXX且其中序遍历为递增数列;

2.是否排序二叉树,是否平衡二叉树;

3.插入一节点后是否是平衡二叉树若不是画出平衡化前后的图;

五、已知大根堆(6个元素)H(n)

2.写出加叺H(n+1)元素后堆调整的算法;

(1) 填线性Hash表(关键字和冲突次数);

(2) 描述怎样在此Hash表中删除一个关键字;

循环链表的直接插入算法;

2.用递归求二叉树的罙度。

}

好长时间没有看二叉树方面的知識了这个题颇费了我好长时间,呵呵……看我耐心讲给你……

由后序序列得 根节点:a   又由中序得a的左子树有d…kfi  那么此时我们就遇到个问題就是少了一个节点此时我们看先序的第二个节点是b他肯定是a的左孩子,则此时a的左子树全了:dbkfi      a的左子树的根那就很明显了,是:b则左媔的图就很好画了……

此时我们可以用同样的方法去找右面的看先序i节点后面是c因为此时左子树的节点我们都知道了,没有c那么c和c以后嘚都是右子树同样,此时我们少了一个节点这时我们去中序里找到j节点,这个时候右子属就全了……cehjg……我们不难找到中序的序列:hejcg苴a的右子树的根也很明显了是:c则右面的图就很好画了……

}

我要回帖

更多关于 二叉树深度和节点 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信