讲完了链表下面了解树的数据结构,它非常的重要。
树型结构
常见的树形结构有二叉树和多叉树(大于两个叉的树)。
开发中常见的树形结构有:文件夹目录、DOM 结构、路由的配置…
常见的概念
节点:根节点、父节点、子节点、兄弟节点子树:左子树、右子树,子树的个数称之为度叶子节点:度为 0 的节点,非叶子节点:度不为 0 的节点节点的深度:从根节点到当前节点所经过的节点总数节点的高度:从当前节点到最远叶子节点经过的节点总数树的层数、树的高度、树的深度有序树:节点按照顺序排列,无序树
二叉树
二叉树是每个节点最多有两个子树的树结构,每个节点的度最多为 2,通常子树被称作左子树(left subtree)和右子树(right subtree),左子树和右子树是有顺序的
二叉树的常见概念
真二叉树:不含一度节点的二叉树称作真二叉树(proper binary tree)满二叉树:满二叉树也是真二叉树,且所有的叶子节点都在最后一层完全二叉树:深度为 k 的有 n 个节点的二叉树,对树中的节点按从上至下,从左至右的顺序进行编号,如果编号为 i (1 ≤ i ≤ n)的节点与满二叉树中编号为 i 的节点在二叉树中的位置相同,则这棵二叉树称为完全二叉树。
什么是二叉搜索树?
一般情况下存储数据我们可以采用数组的方式,但是从数组中检索数据的时间复杂度是 O(n),如果数据存储有序,则可以采用二分查找的方式来检索数据,复杂度为 O(logn),但是如果操作数组中的数据像增加、删除默认数组会产生塌陷,时间复杂度为 O(n)。
二叉搜索树也称为二叉查找树或二叉排序树,在二叉搜索树中查询、增加、删除复杂度最坏为 O(logn),特性是当它的左子树不空,则左子树上所有节点的值均小于它的根节点的值,当右子树不空,则右子树所有节点的值均大于它的根节点的值。

文章介绍了树型数据结构的重要性,特别是二叉树,包括根节点、子节点等概念,并详细阐述了二叉树的类型如真二叉树、满二叉树和完全二叉树。此外,文章强调了二叉搜索树在数据检索、增加和删除操作中的高效性,其特性保证了操作的最坏情况复杂度为O(logn)。
2511

被折叠的 条评论
为什么被折叠?



