本篇文章将学习到
树的定义
满二叉树和完全二叉树区别
树的遍历
什么是堆
Java中堆的常用操作

节点:树里面的一个元素就算一个节点
孩子节点:除了根节点外的节点
根节点:第一个开始的节点
叶子节点:最底层、没有孩子节点的节点,
Java【树Tree】知识点(刷题必备) - 图1
深度:从上往下计算
高度:从下往上计算
层:从上往下计算。1开始
Java【树Tree】知识点(刷题必备) - 图2
遍历:
二叉树d的遍历
前序遍历:先访问根节点,然后访问左节点,最后右节点
中序遍历:先访问左节点,然后访问根节点,最后右节点
后续遍历:先访问左节点,然后访问右节点,最后根节点

堆(heap)

  • 完全二叉树
  • 每个节点>=(最大堆) or <=(最小堆)孩子节点

    复杂度

    访问(acess):无
    搜索:O(1) (堆顶)
    添加:O(logN)
    删除:O(logN) 一般是堆顶
    Java【树Tree】知识点(刷题必备) - 图3