7-1 集合基础和基于二分搜索树的集合实现 07-Set-and-Map 集合 01-Set-Basics-and-BSTSet 文件IO操作,简单分词工具类 FileOperation import java.io.FileInputStream; import java.util.ArrayLi ...
分类:
其他好文 时间:
2020-02-25 17:52:28
阅读次数:
52
MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。数据库查询是数据库的最主要功能之一,我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化,这篇文章对索引做一个系统的梳理,希望对大家有帮助。一、MySQL有哪些索引类型索引的分类可以从多个角度进行,下面分别从数据结构,物理存储和业务逻辑三个维度进行划分。1、从数据结构角度(1)
分类:
数据库 时间:
2020-02-24 16:45:27
阅读次数:
74
堆: 树这种结构 本身在计算机科学领域 占有很重要的地位,这种数据结构之所以占有重要的地位,不仅仅是因为二分搜索树这样的一种结构, 是树本身这种形状可以产生很多拓展,对于不同的问题 ,我们可以稍微改变 或者 限制树这种数据结构的性质,从而产生不同的数据结构,高效的解决不同的问题, 从节开始,将会有四 ...
分类:
其他好文 时间:
2020-02-24 12:39:08
阅读次数:
56
二分搜索树 6-1 为什么要研究树结构 树结构 为什么要有树结构? 树结构本身是一种天然的组织结构 高效 将数据使用树结构存储后,出奇的高效。 二分搜索树(Binary Search Tree) 平衡二叉树:AVL;红黑树 堆;并查集 线段树;Trie(字典树,前缀树) 6-2 二分搜索树基础 和链 ...
分类:
其他好文 时间:
2020-02-23 20:26:55
阅读次数:
82
######################################################## """ 一、树 1、什么是树? 树状图是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。 把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下 ...
分类:
编程语言 时间:
2020-02-23 09:39:17
阅读次数:
74
########################################## """ 数据结构: 1,用Python代码简单实现一个栈。实现pop/push及max方法,要求能在O(1)时间内取得最大值。 排序算法: 写个快速排序热热身,分析一下复杂度,如果不使用额外的空间,应该怎么写?快排 ...
分类:
编程语言 时间:
2020-02-23 09:27:44
阅读次数:
71
B+树作为索引最为常见,亦是数据库中最为频繁的一种索引。 B+树通过二叉查找树,再由平衡二叉树,最后加B树演化而来。 1. 二分查找法 二分查找法(binary search)也叫折半查找法,从有序数组中查询某一条记录。 基本思想:将记录按有序(递增或递减)排列,先查找数组中的中间位置的对象,如果t ...
分类:
其他好文 时间:
2020-02-22 20:05:29
阅读次数:
56
可以用hash表,本题使用二分法 二分查找算法模板 视频讲解:AcWing 67. 数字在排序数组中出现的次数 ...
分类:
编程语言 时间:
2020-02-20 00:07:18
阅读次数:
74
题目描述: 我的成绩: 成绩不是很好,代码本身写的也很乱,本文只是提供一种解题思路。 题目分析: 要求两有序数组的中位数并不难,简单粗暴的方法就是得到两数组合并后的新数组,取其中位数即可,但是难度在于这个时间复杂度有限制,为 O(log(m + n))。 一看这个log,那么很容易想到二分查找算法什 ...
分类:
编程语言 时间:
2020-02-18 20:26:51
阅读次数:
82
总结一句话就是:思路很简单,细节是魔鬼,hhhh。 本博客探究几个最常用的二分查找场景:寻找一个数、寻找左侧边界、寻找右侧边界。 寻找一个数(基本的二分搜索) + 为什么 while 循环的条件中是 = target) { // 注意点3 right = mid; } else if (nums[m ...
分类:
其他好文 时间:
2020-02-09 20:08:27
阅读次数:
144