Binary search tree?
来源:互联网 发布:svd 协同过滤推荐算法 编辑:程序博客网 时间:2024/06/06 03:50
Binary search tree:二叉搜索树。
主要由四个方法:(用C语言实现或者Python)
1.search:时间复杂度为O(h),h为树的高度
2.traversal:时间复杂度为O(n),n为树的总结点数。
3.insert:时间复杂度为O(h),h为树的高度。
4.delete:最坏情况下,时间复杂度为O(h)+指针的移动开销。
可以看到,二叉搜索树的dictionary operation的时间复杂度与树的高度h相关。
所以需要尽可能的降低树的高度,由此引出平衡二叉树Balanced binary tree。
Balanced binary tree。
它要求左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。这样就可以将搜索树的高度尽量减小。常用算法有红黑树、AVL、Treap、伸展树等。
阅读全文
0 0
- search - binary search/sort tree
- Implement Binary Search Tree
- Binary Search Tree
- binary search tree
- Binary Search Tree
- Binary Search Tree
- Binary Search Tree 实现
- Validate Binary Search Tree
- binary search tree
- Unique Binary Search Tree
- Validate Binary Search Tree
- Recover Binary Search Tree
- Recover Binary Search Tree
- Validate Binary Search Tree
- Validate Binary Search Tree
- Recover Binary Search Tree
- LeetCode_Validate Binary Search Tree
- Validate Binary Search Tree
- 【网易笔试题】游戏中挂机
- 基于Win10系统搭建MQTT以及JAVA实现测试
- LibXML Compile Error: relocation R_X86_64_32 against `a local symbol' can not be used when making a
- Java进阶(二)理解Java的三大特性之继承
- 数据库索引全解(What is Database Index)
- Binary search tree?
- 自动构造词法分析器的步骤——正规式转换为最小化DFA
- POJ 1661 Help Jimmy 一般dp
- Intent跳转工具类
- 浏览器中例如a,input,button,select等标签坑爹的默认触发时的样式
- 菜鸟第一次挑战apk逆向,结果整得怀疑人生,终于知道android apk加密的重要性
- LintCode N皇后问题
- oracle range分区表已经有了MAXVALUE 分区,如何添加分区
- #ifdef _DEBUG #define new DEBUG_NEW #endif的解释