二叉排序树(二叉搜索树)的时间复杂度&空间复杂度

二叉排序树又称二叉查找树(二叉搜索树),它或是一棵空的二叉树,或是具有下列性质的二叉树:

  • 若它的左子树不空,则左子树上所有节点的值均小于根节点的值
  • 若它的右子树不空,则右子树上所有节点的值均大于根节点的值
  • 它的左右子树也都是二叉排序树

如果二叉排序树是平衡的,则n个节点的二叉排序树的高度为,其查找效率为,近似于折半查找。如果二叉排序树完全不平衡,则其深度可达到n,查找效率为O(n),退化为顺序查找。一般的,二叉排序树的查找性能在到O(n)之间。因此,为了获得较好的查找性能,就要构造一棵平衡的二叉排序树。

『借助二叉排序树进行搜索,但因为所建立的树本身不一定是轴对称的,所以每次比较并不能确保减小一半范围。』

二叉树的存储要求:需要树形结构,相比顺序存储需要占用更多的空间,但也有链接型数据结构灵活可拓展的有点。

二叉树的空间复杂度:因为需要建立排序二叉树,所以空间复杂度为O(n)

参考:https://blog.csdn.net/li_huai_dong/article/details/79911069

https://www.cnblogs.com/learn-to-rock/p/6107118.html

猜你喜欢

转载自blog.csdn.net/xuxinrk/article/details/89553511