我的第一本算法书学习-第一章数据结构

本文章仅用于学习使用,还希望想深入了解本书的同学去购买人民邮电出版社的《我的第一本算法书》,这本书真心写的非常好,对于入门有很好的帮助。

1-1 什么是数据结构

决定了数据的顺序和位置关系

数据存储于计算机的内存中。形似排成 1 列的箱子,1 个箱子里存储 1 个数据。数据存储于内存时,决定了数据顺序和位置关系的便是“数据结构”。
在这里插入图片描述

选择合适的数据结构以提高内存的利用率

数据结构方面的思路也和制作电话簿时的一样。将数据存储于内存时,根据使用目的选择合适的数据结构,可以提高内存的利用率。

1-2 链表

链表是数据结构之一,其中的数据呈线性排列。在链表中,数据的添加和删除都较为方便,就是访问比较耗费时间
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1-3 数组

数组也是数据呈线性排列的一种数据结构。与前一节中的链表不同,在数组中,访问数据十分简单,而添加和删除数据比较耗工夫。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1-4 栈

栈也是一种数据呈线性排列的数据结构,不过在这种结构中,我们只能访问
最新添加的数据。栈就像是一摞书,拿到新书时我们会把它放在书堆的最上
面,取书时也只能从最上面的新书开始取。
在这里插入图片描述
在这里插入图片描述

1-5 队列

与前面提到的数据结构相同,队列中的数据也呈线性排列。虽然与栈有些相
似,但队列中添加和删除数据的操作分别是在两端进行的。就和“队列”这个名
字一样,把它想象成排成一队的人更容易理解。在队列中,处理总是从第一
名开始往后进行,而新来的人只能排在队尾。
在这里插入图片描述
在这里插入图片描述

1-6 哈希表

在哈希表这种数据结构中,使用将在5-3 节讲解的“哈希函数”,可以使数据的
查询效率得到显著提升。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1-7 堆

堆是一种图的树形结构,被用于实现“优先队列”(priority queues)(树形结构的详细讲解在4-2 节)。优先队列是一种数据结构,可以自由添加数据,但取出数据时要从最小值开始按顺序取出。在堆的树形结构中,各个顶点被称为“结点”(node),数据就存储在这些结点中。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1-8 二叉查找树

二叉查找树(又叫作二叉搜索树或二叉排序树)是一种数据结构,采用了图的树形结构(关于树形结构的详细说明请参考4-2 节)。数据存储于二叉查找树的各个结点中。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值