2021年6月16日

排序

摘要: 排序就是将输入的数字按照从小到大的顺序进行排列。这里我们用柱形来表示数字,数字越大,柱形就越高 假设现在有如上图所示的输入数据,那么我们的目标就是将它们像下图一样,按从小到大的顺序从左边开始依次排列。 如果只有 10 个数字,手动排序也能轻松完成,但如果有 10 000 个数据,排序就不那么容易了。 阅读全文

posted @ 2021-06-16 22:28 胡子就不刮 阅读(79) 评论(0) 推荐(0) 编辑

数据结构--二叉查找树

摘要: 二叉查找树(又叫作二叉搜索树或二叉排序树)是一种数据结构,采用了图的树形结构。数据存储于二叉查找树的各个结点中。 最后将最大结点移到被删除结点的位置上。这样一来,就能在满足二叉查找树性质的前提下删除结点了。如果需要移动的结点(此处为4)还有子结点,就递归执行前面的操作 解说 我们可以把二叉查找树当作 阅读全文

posted @ 2021-06-16 21:24 胡子就不刮 阅读(87) 评论(0) 推荐(0) 编辑

数据结构--堆

摘要: 堆是一种图的树形结构,被用于实现“优先队列”(priority queues) 优先队列是一种数据结构,可以自由添加数据,但取出数据时要从最小值开始按顺序取出。在堆的树形结构中,各个顶点被称为“结点”(node),数据就存储在这些结点中。 这就是堆的示例。结点内的数字就是存储的数据。堆中的每个结点最 阅读全文

posted @ 2021-06-16 21:19 胡子就不刮 阅读(119) 评论(0) 推荐(0) 编辑

数据结构--哈希表

摘要: 在哈希表这种数据结构中,使用将在 5-3 节讲解的“哈希函数”,可以使数据的查询效率得到显著提升。 哈希表存储的是由键(key)和值(value)组成的数据。例如,我们将每个人的性别作为数据进行存储,键为人名,值为对应的性别。 为了和哈希表进行对比,我们先将这些数据存储在数组中 此处准备了 6 个箱 阅读全文

posted @ 2021-06-16 21:16 胡子就不刮 阅读(180) 评论(0) 推荐(0) 编辑

数据结构--队列

摘要: 与前面提到的数据结构相同,队列中的数据也呈线性排列。虽然与栈有些相似,但队列中添加和删除数据的操作分别是在两端进行的。就和“队列”这个名字一样,把它想象成排成一队的人更容易理解。在队列中,处理总是从第一名开始往后进行,而新来的人只能排在队尾。 从队列中取出(删除)数据时,是从最下面,也就是最早入队的 阅读全文

posted @ 2021-06-16 21:13 胡子就不刮 阅读(53) 评论(0) 推荐(0) 编辑

数据结构--栈

摘要: 栈也是一种数据呈线性排列的数据结构,不过在这种结构中,我们只能访问最新添加的数据。栈就像是一摞书,拿到新书时我们会把它放在书堆的最上面,取书时也只能从最上面的新书开始取。 从栈中取出数据时,是从最上面,也就是最新的数据开始取出的。这里取出的是Red。 如果再进行一次出栈操作,取出的就是Green了。 阅读全文

posted @ 2021-06-16 21:12 胡子就不刮 阅读(63) 评论(0) 推荐(0) 编辑

数据结构--数组

摘要: 数组也是数据呈线性排列的一种数据结构。与前一节中的链表不同,在数组中,访问数据十分简单,而添加和删除数据比较耗工夫。这和 1-1 节中讲到的姓名按拼音顺序排列的电话簿类似。 这就是数组的概念图。Blue、Yellow、Red作为数据存储在数组中。 数据按顺序存储在内存的连续空间内。 由于数据是存储在 阅读全文

posted @ 2021-06-16 21:10 胡子就不刮 阅读(74) 评论(0) 推荐(0) 编辑

导航