数据结构与算法 学习笔记 2021年12月21日

有序二叉树:
        1、节点没有相等的值,左子树的数据一定小于根、根一定小于右子树
        2、左子树的数据一定小于根、根一定小于或等于右子树
        3、左子树的数据一定小于或等于根、根一定小于右子树
        都称为有序二叉树、二叉排序树、二叉搜索树、或者二叉查找树
        注意:由于这种树的节点需要频繁地插入、插入,因此不适合采用顺序存储
        注意:由于这种树的中序遍历就是数据从小到大排序,所以有序二叉树也是一种排序算法,同时对有序二叉树中数据的查找又天然是二分查找,因此经常考

线索二叉树:
    规律:在有n个节点的链式二叉树中必定有n+1个空指针
    链式二叉树中有很多的空指针,可以让这些指针指向下一个或者上一个节点,此时遍历二叉树时可以不使用递归,而使用循环也能实现,这样可以提高遍历速度
    中序线索二叉树节点数据项:
        数据
        左子树指针
        右子树指针
        右子树标志(假:表示指向的是真正的右子树,真:表示指向的是中序的下一个节点)
    
    实现过程:
        1、创建线索
        2、根据线索遍历
    作用:利用不使用的空指针作为线索,为了提高树的遍历效率

作业:
        1、把一棵二叉树转换成它的镜像树
        2、输入两棵二叉树A、B,判断B是不是A的子结构(空树不是任意一棵树的子结构)
        3、把一棵有序二叉树转换为一个有序的双向链表
        4、计算出有序二叉树中倒数第k大的值
        5、判断一棵树是否对称
        6、实现之字形打印一棵二叉树,第一行从左到右,第二行从右到左,第三行又从左到右打印,依此类推

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值