Binary Tree(二叉树)

本文介绍了二叉树的基本概念,包括满二叉树、完全二叉树和平衡二叉树的定义。同时,阐述了二叉树的两种存储结构——顺序存储和链表存储,并详细讲解了二叉树的遍历方式,如先根次序、中根次序、后根次序和层次遍历。
摘要由CSDN通过智能技术生成

一、定义:在计算机科学中,二叉树是每个结点最多有两个子树的结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)

      (1)结点:一棵的深度为K,且结点为2^k-1的二叉树,称为满二叉树(每一层的结点都是最大结点数)。

        (2)  完全二叉树:至少有2^k-1个子节点,至多有(2^k)-1个结点

二、类型:

        1、完全二叉树:除底层,其余层结点都达到最大个数,且底层有叶子结点,且叶子结点都是从左到右依次排序

        2、满二叉树:除了叶结点外,其余结点都有左右子叶结点且叶子结点都处在最底层的二叉树

        3、平衡二叉树:平衡二叉树又被称为AVL数,它是一个空树或者它的左右子树的高度差的绝对值不等于1,并且左右子树都是一颗平衡二叉树

三、存储结构:

        1、顺序存储方式

              typenode=record

              data:datatype

              l,r:integer

              end;

              vartr:array[1..n]ofnode

        2、链表存储方式

              typebtree=^node;

              node=record

              data:datatype;

              lchild,rchild:btree

              end;

四、二叉树遍历

       定义:遍历是对树的一种最基本运算,所谓遍历二叉树,就是按一定的规则和顺序走遍二叉树的所有结点,使每一个结点都被访问一次,而且只被访问一次。由于二叉树是非线性结构,因此,树的遍历实质上是将二叉树的各个结点转换成为一个线性序列来表示:DLR(先根次序遍历),LDR(中跟次序遍历),LRD(后跟次序遍历)、层次遍历

百度百科链接:https://baike.baidu.com/item/%E4%BA%8C%E5%8F%89%E6%A0%91/1602879?fr=aladdin

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值