红黑树从入门到看开
红黑树,向来被认为是最难理解和掌握的常见高级数据结构之一。在耗费巨量时间与无数次长考后,终于总结出一点小小的心得,为了不负已然磨损殆尽的智商和时光,惶恐写就本文。对于有志于全面掌握红黑树的读者朋友,希望本文能够帮助你更快更平滑以至更彻底地理解红黑树。
Git学习实战
全面学习 Git 分布式版本管理系统的使用。
JavaWeb学习实战
以 Servlet 技术为重点,讲解 JavaWeb 相关技术,展示包括客户端浏览器发起请求,服务器响应请求,服务器与数据库交互等过程及其代码实现。
JDBC学习实战
深入剖析 JDBC 原理,给出实现代码。
Maven学习实战
全面学习 Maven 的使用。
Java并发编程学习实战
全面讲解 Java 多线程并发编程。
MySQL学习实战
全面学习 MySQL 。
splay树
本文介绍一种易于实现的平衡二叉查找树 –– splay树。相比 AVL 树,伸展树并不严格地使 BST 每次操作后保持平衡,但伸展树保证 m 次操作的最坏时间复杂度为 mO(logn),也就是说其主要操作的均摊时间复杂度*为 O(logn) 。
AVL树
本文介绍一种最早提出的自平衡二叉查找树 –– AVL树。重点展现如何设计一个AVL树类,分析主要方法的代码实现,并给出该类的完整实现代码。
二叉查找树
对于一棵二叉树,每个结点存有一个可用于比较的数据项,规定结点 x 的左子树中所有结点的数据项小于 x 的数据项,而 x 的右子树中所有结点的数据项大于 x 的数据项,这样的二叉树即为二叉查找树。本文于展现如何设计一个二叉查找树类,分析主要方法的代码实现,并给出该类的完整实现代码。