- 博客(7)
- 收藏
- 关注
原创 c语言顺序存储,判断二叉树是否为二叉搜索树
1)若它的左子树不空,则左子树上所有节点的值均小于它的根节点的值。(2)若它的右子树不空,则右子树上所有节点的值均大于它的根节点的值。(3)它的左、右子树也分别为二叉搜索树。
2024-08-18 12:46:01
611
原创 c语言二叉树的自下而上,从右到左的层次遍历算法
本题所求利用栈和队列,把原先层次遍历的每个数都出队列,存到栈中,利用栈先进后出的原理,最后整体输出栈中的元素。
2024-08-13 19:30:50
1534
1
c语言计算二叉树的带权路径长度之和(WPL)
1.WPL:树中全部叶节点的带权路径之和
2.代码中所画的树为
3.求上述WPL:
权值为4的结点,经过两条边,叶节点的带权路径长度为8
权值为5的结点,经过两条边,叶节点的带权路径长度为10
WPL=4*2(经过边数)+5*2(经过边数)=8+10=18
所以此树中全部叶节点为权重4和权重5的结点,带权路径之和为权重4的带权路径+权重5的带权路径=8+10=18
2024-08-18
c语言二叉树的自下而上,从右到左的层次遍历算法
二叉树原有的层次遍历利用队列实现,首先将二叉树的根进队列,若队列一直非空,则出队列,进左孩子和右孩子如此往复
本题所求利用栈和队列,把原先层次遍历的每个数都出队列,存到栈中,利用栈先进后出的原理,最后整体输出栈中的元素即可以调换顺序,得到自下而上,从右到左的层次遍历
2024-08-18
给定二叉树是否是二叉搜索树
二叉搜索树定义:
(1)若它的左子树不空,则左子树上所有节点的值均小于它的根节点的值。
(2)若它的右子树不空,则右子树上所有节点的值均大于它的根节点的值。
(3)它的左、右子树也分别为二叉搜索树。
关于二叉搜索树的函数:要传递i为在数组中的位置,也为在树中的位置;树当前结点为i,左分支为2i+1,右分支为2i+2;如果右分支序列小于T的长度并且结点值不等于-1时开始判断:
如果右分支小于当前结点,左分支大于当前结点则不是二叉搜索树;在递归判断左子树右子树,有任一方不符合条件则不是二叉搜索树。
2024-08-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人