美文网首页
二叉树基础

二叉树基础

作者: 杨殿生 | 来源:发表于2018-11-12 10:50 被阅读0次

二叉树

每个节点最多有两个叉,分别是左子节点和右子节点

满二叉树

完全二叉树

便于使用数组存储,更节省空间
堆就是一种完全二叉树

二叉树遍历

前序
中序
后序

二叉树遍历时间复杂度

O(n)

二叉查找树(二叉搜索树)

支持动静态数据集合的快速插入,删除,查找操作,快速查找最大结点和最小节点,前驱结点和后继结点

特点
树种任意一个节点,其左子节点中的每个节点的值,都要小于这个节点的值,而右子树节点的值都大于这个节点的值
中序遍历可输出有序数据序列,时间复杂度O(n)

支持重复数据的二叉查找树
1,通过链表支持动态扩容的数组,把值相同的数据存储在同一个节点上
2,放在他的右子树中,查找时遇到形同结点不停止查找直到找到叶子结点为止

复杂度分析
极度退化的链表O(n)
最理想情况下是完全二叉树(或满二叉树)O(height)时间复杂度都跟树的高度成正比

相关文章

  • LeetCode基础算法-树

    LeetCode基础算法-树 LeetCode 树 基础算法 1. 二叉树的最大深度 给定一个二叉树,找出其最大深...

  • 树数据结构-力扣刷树题需要知道的(Python)

    树是一种重要的数据结构,而二叉树是其中的重点和难点,有关二叉树的基础知识,读者可移步【二叉树基础】查看更多内容。这...

  • 二叉树的基本算法

    二叉树的基本算法 树、二叉树 的基本概念,参考数据结构算法之美-23讲二叉树基础(上):树、二叉树[https:/...

  • Java后端开发算法基础面试题分享,你离大厂也许就差这份面试题!

    一、算法基础 1. 重建二叉树 题目: 输入一棵二叉树前序遍历和中序遍历的结果,请重建该二叉树。 注意: 二叉树中...

  • 二叉树知识(BST) 二叉查找树(Binary Search T

    二叉树基础知识总结 - CSDN博客 二叉树遍历分析 简单二叉树遍历,可分为:先序,中序,后序。 先序: 1.访问...

  • 二叉树非递归遍历

    二叉树的非递归遍历 二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。对于二叉树,有...

  • 数据结构第三次作业

    第一题:二叉树的基础算法 题目 先根据二叉树的先序、中序遍历序列还原该二叉树,求出这棵二叉树的高度和宽度,以及其叶...

  • Avl平衡树--C语言实现

    Avl 平衡树 实现记录 Avl平衡二叉树和搜索二叉树基本实现原理相同,在搜索二叉树的基础上添加树平衡的操作--单...

  • 二叉树的遍历

    关于二叉树的算法问题,一般都以二叉树的遍历为基础,这里给出二叉树的多种遍历方式 树结构: 树结点的定义及其构建: ...

  • 学习清单

    算法、数据结构二叉树、链表、栈... golang基础 swoole mysql websocket

网友评论

      本文标题:二叉树基础

      本文链接:https://www.haomeiwen.com/subject/rqyqfqtx.html