摘要: 什么是冒泡排序? 摘自漫画算法: 冒泡排序的英文是bubble sort,它是一种基础的交换排序。 大家一定都喝过汽水,汽水中常常有许多小小的气泡哗啦啦飘到上面来。这是因为组成小气泡的二氧化碳比水轻,所以小气泡可以一点一点地向上浮动。 而冒泡排序之所以叫冒泡排序,正是因为这种排序算法的每一个元素都可 阅读全文
posted @ 2020-05-20 21:45 瞬间的花逝 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 什么是红黑树? 红黑树的定义 每个节点或者是红色的,或者是黑色的。 根节点是黑色的。 每一个叶子节点(最后的空节点)是黑色的。 如果一个节点是红色的,那么他的孩子节点都是黑色的。 从任意一个节点到叶子节点,经过的黑色节点是一样的。 直接看到这些定义是非常难以理解的,红黑树为什么这样定义? 在算法4这 阅读全文
posted @ 2020-05-18 20:13 瞬间的花逝 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 什么是AVL树? 首先,回忆一下二分搜索树的问题,在二分搜索树中有一个很严重的问题,什么问题呢? 在二分搜索树中如果顺序添加元素会转化为链表,这就会大大降低二分搜索树的效率。比如说1、2、3、4、5、6。 二分搜索树如图: 那么如何解决这个问题? 需要在二分搜索树的基础上添加一定的机制,使得二分搜索 阅读全文
posted @ 2020-05-17 12:09 瞬间的花逝 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 什么是Trie? Trie树,也叫作字典树或前缀树,顾名思义,它是一个树行结构。它是一种专门处理字符串匹配的数据结构,用来解决在一组字符串集合中快速查找某个字符串的问题。 它的核心思想就是通过最大限度地减少无畏的字符串比较,使得查询效率高效,即用空间换时间,再利用共同前缀来提高查询效率。 例如:通讯 阅读全文
posted @ 2020-05-16 13:14 瞬间的花逝 阅读(437) 评论(0) 推荐(0) 编辑
摘要: 什么是优先队列? 在之前,我们先回顾一下普通队列的特点。 普通队列的特点是先进先出,后进后出。 那优先队列的特点是什么呢?优先队列的出队顺序和入队顺序无关,有优先级相关。在这里分为两种情况: 最大优先队列,无论入队顺序如何,都是最大的元素优先出队。 最小优先队列,无论入队顺序如何,都是最小的元素优先 阅读全文
posted @ 2020-05-15 11:42 瞬间的花逝 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 什么是堆? 二叉堆本质上是一颗完全二叉树,它分为两个类型: 最大堆 什么是最大堆?最大堆的任何一个父节点的值,都大于或等于它左右孩子节点的值。 如图: 最小堆 什么又是最小堆?最小堆的任何一个父节点的值,都小于或等于它左右孩子节点的值。 如图: 堆的根节点叫作堆顶。 最大堆和最小堆的特点决定了,最大 阅读全文
posted @ 2020-05-14 12:54 瞬间的花逝 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 什么是树? 在现实生活中有很多能体现出树的逻辑的例子。 例如:企业里的职位关系,也是一颗树。 再例如:操作系统的文件夹目录,也是一颗树。 那么以上的这些例子有什么共同点呢?为什么称它们为"树"呢? 因为它们都像自然界中的树一样,从同一个"根"衍生出许多的"枝干",再从每一个"枝干"衍生出许多更小的" 阅读全文
posted @ 2020-05-13 16:16 瞬间的花逝 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 为什么需要哈希表? 举个例子(摘自漫画算法): 在上学时需要学习英语,而在当时有很多的电子词典,同学们遇到不会的单词,只要在这个电子词典上输入单词的英文,就可以查出中文的含义。 当时的英语老师强烈反对使用这样的工具,因为电子词典查出来的中文资料太有限,而传统的纸质词典可以查到单词的多种含义、词性、例 阅读全文
posted @ 2020-05-12 13:03 瞬间的花逝 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 什么是链表? 链表是一种在物理上非连续,非顺序的数据结构,由若干节点(node)所组成。 单向链表的每一个节点包含两个部分,一部分存放数据的变量,另一部分是指向下一个节点的指针。链表的第一个节点称为头节点,最后一个节点称为尾结点,尾结点的指针指向空。与数组按照索引来随机查找数据不同,对于链表的其中一 阅读全文
posted @ 2020-05-11 13:18 瞬间的花逝 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 什么是队列? 队列是一种线性数据结构,要理解它,其实非常简单,举个例子。 假如高速公路上有一条隧道,所有通过隧道的车辆只允许从隧道的入口驶入,从隧道出口驶出,不允许逆行。因此,要想让车辆驶出隧道,只能按照车辆的驶入顺序,先驶入的车辆先驶出,后驶入的车辆后驶出,任何车辆都无法跳过它前面的车辆提前驶出。 阅读全文
posted @ 2020-05-10 11:25 瞬间的花逝 阅读(250) 评论(0) 推荐(0) 编辑