数据结构和算法基础 索引的本质:数据结构,帮助高效获取数据 数据库的查询:最基本的查询算法当然是顺序查找(linear search)、二分查找(binary search)、二叉树查找(binary tree search)每种查找算法都只能应用于特定的数据结构之上,例如二分查找要求被检索数据有序 ...
分类:
数据库 时间:
2019-09-19 16:36:18
阅读次数:
86
知识摘要: 1.二叉搜索树(又叫:二叉排序树,二叉查找树): 遵循: Tree.left.val<Tree.val<Tree.right.val. 所以它的中序遍历一定是一个有序列。 2.其他一些树: 满二叉树:从上往下,除了叶子结点外,其他结点的左右子节点都存在。 完全二叉树:比满二叉树少几个叶子 ...
分类:
其他好文 时间:
2019-09-05 23:06:46
阅读次数:
91
查找与二叉树 我家园子有几棵树系列 查找与二叉树 我家园子有几棵树系列 Preface 查找 二叉查找树的实现 定义数据结构 中序遍历 查找操作 插入 删除 删除最小值 复制(拷贝)删除 步骤 Rank 2-3查找树 总结 Preface 前面我们学习了基于线性表的数据结构,如数组,链表,队列,栈等 ...
分类:
其他好文 时间:
2019-08-13 10:38:50
阅读次数:
194
Mysql索引数据结构( "来源" ) 索引常见数据结构: 1. 顺序查找: 最基本的查询算法 复杂度O(n),大数据量此算法效率糟糕。 2. 二叉树查找(binary tree search): O(log2n),数据本身的组织结构不可能完全满足各种数据结构。 3. hash索引 无法满足范围查找 ...
分类:
数据库 时间:
2019-07-05 19:13:36
阅读次数:
137
二叉树查找效率很高,但是它有一个缺点。类似下面一棵树,查找效率是线性的: 定义 于是,引出了平衡二叉树(Self-balancing binary search tree),也叫 BTree(balance tree),AVLTree 它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左 ...
分类:
其他好文 时间:
2018-11-06 23:31:03
阅读次数:
197
一面: 1.简要介绍项目; 2.select(),poll(),epoll()函数用法 3.介绍TCP和UDP 4.合并两个有序链表,生成一个新的有序链表 5.二叉树查找路径 (4,5都是剑指offer上的题) 6.哈希表相关知识 7.读写锁 二面: 1.简要介绍TCP和UDP 2.介绍项目 3.说 ...
分类:
其他好文 时间:
2018-10-11 23:46:37
阅读次数:
306
一、springMVC aop 二、bean 的生命周期 三、arrayList写一个队列 四、二叉树查找 五、要实现对象的排序 类要实现Comparable接口,重写compareTo方法 主类里面加上: 就可以实现排序了。 六、JVM 七、锁和同步问题 ...
分类:
其他好文 时间:
2018-09-19 20:03:51
阅读次数:
159
哪些情况下不需要使用索引1、数据唯一性差的字段不要使用索引比如性别,只有两种可能数据。意味着索引的二叉树级别少,多是平级。这样的二叉树查找无异于全表扫描。2、频繁更新的字段不要使用索引比如logincount登录次数,频繁变化导致索引也频繁变化,增大数据库工作量,降低效率。3、字段不在where语句... ...
分类:
其他好文 时间:
2018-07-18 00:00:15
阅读次数:
230
数据结构 二叉查找树(BST)的java实现 二叉查找树(BST)是一种能够将链表插入的灵活性和有序数组查找的高效性相结合的一种数据结构。它的定义如下: 二叉查找树是一种二叉树,它的每个节点的key都大于它左子树中的任意节点的key小于它右子树中的所有节点的key。 本文对二叉树查找树的基本功能进行 ...
分类:
编程语言 时间:
2018-07-15 16:14:08
阅读次数:
182
(1)查找: 查找是在一个项目集合中找到一个特定项目的算法过程。查找通常的答案是真的或假的,因为该项目是否存在。 查找的几种常见方法:顺序查找、二分法查找、二叉树查找、哈希查找 (2)二分查找: 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困 ...
分类:
其他好文 时间:
2018-07-05 12:08:28
阅读次数:
158