二叉树

101 阅读1分钟
  • 满二叉树:一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是满二叉树。 也就是说,如果一个二叉树的层数为K,且结点总数是(2^k) -1 ,则它就是满二叉树。
  • 完全二叉树:满足两个条件:1)如果一个二叉树的层数为K,那么从0-k-1层一定是满的,k层可以是不满的,但是必须从左子树到右子树。
  • 二叉查找树:为了提高查找速率,查找的数据必须是有序的。每次查找、操作时都要维护一个有序的数据集,于是有了二叉查找树,1)若左子树不空,左子树上所有的点小于当前根元素,2)若右子树不空,右子树上所有点大于当前根元素,3)左右子树均为二叉查找树。
  • 平衡二叉树: 平衡二叉树(AVL 树),平衡二叉树的提出就是为了保证树不至于太倾斜,尽量保证两边平衡。平衡二叉树的几种情况:1)平衡二叉树是一颗空树;2)左右子树的高度差不大于1,子树也是平衡二叉树。 -:堆是一种特殊的完全二叉树,堆的父子节点之间有联系。1)最小堆:所有父节点都比对应子节点小,2)最大堆:所有父节点都比对应子节点大。