- 博客(3)
- 资源 (24)
- 收藏
- 关注
原创 算法与数据结构--简单易懂的红黑树(java实现)
红黑树的定义在前一篇博客中讲到了二分搜索树及其不足,在数据时有序的情况下,二分搜索树可能退化为链表,性能极大的降低,因此就演化出了红黑树。红黑树也是一种二叉树,但是又是一种比较特殊的二叉树,是一种自平衡树,树是比较平衡的,避免了二分搜索树那种退化的情况,红黑树在二分搜索树的基础上,增加了以下五条规则:每个节点不是红色就是黑色根节点总是黑色叶子结点总是黑色(即NIL节...
2018-12-30 22:16:19 272
原创 算法与数据结构--简单易懂的二分搜索树(java实现)
二分搜索树二分搜索树,有时我们也简称二叉树,它是一种树形的数据结构,结构图如下:但是二叉树结构不一定是完全二叉树(完全二叉树只是在有h层的二叉树中,在从1~h-1层的每个节点的子节点都是满的,且连续节点都集中在左边)1、二分搜索树的优势通常用于查找,通过键就可以获得值,插入也很方便,插入和查找时间复杂度都是O(logN).从上图我们可以很清楚的比较,二分搜索树这种数据结构的性能是比较全...
2018-12-30 22:15:24 526
原创 算法与数据结构--简单易懂的二分查找法
查找问题是计算机中非常重要的基础问题,但是查找往往建立在查找方法上,通常都是排序的数据##二分查找法对于有序数列,才能使用二分查找法,所以查找前就要用到排序算法。二分查找法的时间复杂度是O(logN),对于顺序数组,二分查找法已经是特别快了,所以顺序数组的查找操作,时间复杂度是O(logN)在有序数组中(假设为升序),先找到中间位置,然后比较要查找的数是比这个大还是小,比中间小就在左边找,大...
2018-12-30 22:14:30 444
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人