![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
夏天的技术博客
这个作者很懒,什么都没留下…
展开
-
学习堆排序
堆排序是一种选择排序的优化,原创 2014-07-17 21:48:54 · 1302 阅读 · 0 评论 -
从前缀树谈到后缀树
前一阵看的数据结构比较多,刚好放假没事,把一些我认为重要的写成博客记录下来。今天主要看的是树中的两个比较重要的数据结构前缀树和后缀树这两个树的应用特别广,但是我认为常看课外技术书籍的,博客的都知道,但是一些专注于课本的同学可能就没听说过了。比如我们的课本 - -。开始吧 ^_^先说下前缀后缀的概念吧。比如单词apple。app和appl是单词的前缀,ple和pple原创 2015-04-05 11:48:53 · 9395 阅读 · 5 评论 -
从 MongoDB 及 Mysql 谈B/B+树
前两天有位朋友邀请我回答个问题,为什么 MongoDB (索引)使用B-树而 Mysql 使用 B+树?我觉得这个问题非常好,从实际应用的角度来学习数据结构,没有比这更好的方法了。因为像 Mysql 和 MongoDB 这种经久考验的大型软件在设计上都是精益求精的,它们为什么选择这些数据结构?:)本文从实际应用的角度来介绍以及分析B-树和B+树。B-树由来 定义:B-树是一类树原创 2016-01-14 17:37:29 · 16068 阅读 · 24 评论 -
AVL树,红黑树,B-B+树,Trie树原理和应用
前言:本文章来源于我在知乎上回答的一个问题 AVL树,红黑树,B树,B+树,Trie树都分别应用在哪些现实场景中? 看完后您可能会了解到这些数据结构大致的原理及为什么用在这些场景,文章并不涉及具体操作(如插入删除等等)目录AVL树 AVL树原理与应用红黑树 红黑树原理与应用B/B+树 B/B+树原理与应用Trie树 Trie树原理与应用AVL树 简介: AV原创 2015-08-17 23:01:56 · 5208 阅读 · 4 评论 -
实现一个 O(1) 查找的 LRU Cache
前几天百度面试,当时让实现一个 LRU Cache,要求 O(1) 完成查找。后来发现这个也可以用在自己简易的 key-value 数据库项目中。简单来说 LRU 是内存管理的一种算法,淘汰最近不用的页。O(1) 时间完成查找,那除了 hash 别无选择。LRU 用双向链表实现即可。数据结构选择好了,查找我们用 hash 通过 key 得到链表节点的位置,然后更新 LRU 链表即可。简单说下自己的项原创 2016-09-01 19:13:19 · 3018 阅读 · 1 评论