前面我们提到了二叉查找树,支持快速的查找、插入和删除操作。中序遍历二叉查找树,可以输出有序的数据序列,非常高效。 ...[作者空间]
树 在介绍二叉树之前,我们需要先明白什么是树,因为二叉树是树的其中一种,因为我们用的最多,所以我们大多都在学习和了...[作者空间]
什么是散列表 散列表(hash table),我们平时叫它哈希表或者Hash 表,你肯定经常听到它。 散列表是根据...[作者空间]
什么是跳表 跳表全称为跳跃列表,它允许快速查询,插入和删除一个有序连续元素的数据链表。跳跃列表的平均查找和插入时间...[作者空间]
二分查找算法的简单介绍 今天我们来学习一下二分查找算法,也叫做折半查找算法。使用二分查找算法的前提是数据需要是有序...[作者空间]
递归的理解 在学习数据结构和算法的过程中,递归可能是比较难理解的一个知识点,每次都试着用自己的大脑去把一步一步去想...[作者空间]
什么是队列 队列也是一种操作受限制的线性表,只允许在表的前端进行删除,也就是出队,而在表的后端进行插入,即入队。 ...[作者空间]
本文转自公众号 「程序员私房菜 」 一直有写一篇关于排序算法文章的打算,直到我看到了这一篇,我放弃了自己写的打算,...[作者空间]
什么是栈 栈是一种运算受限制的线性表,只允许在表的一端进行插入和删除操作。这一端被称为栈顶,另一端被称为栈底。向一...[作者空间]
上次我们简单的对比了一下数组和链表的区别和各自的优缺点,今天我们来详细看一下链表这个结构。链表的结构五花八门,我们...[作者空间]
数组的介绍 在每一种编程语言种,基本都有数组这种数据类型,当然它不仅是一种数据类型,还是一种基础、简单的数据结构。...[作者空间]
数据结构和算法本质就是帮我们用最快的时间和最少的空间来执行我们的代码。所以,执行效率是衡量一个算法的非常重要的指标...[作者空间]