数据结构笔记

数据结构笔记

第一章

8.习题:

算法的计算量的大小称为算法的(复杂度);

算法的时间复杂度取决于(问题的规模,待处理数据的初态);

计算机的算法是指(解决问题的步骤序列),他必须具备(可执行性,确定性,有穷性)这三个特性;

//算法的特征(1)有穷性(2)确定性(3)输入(4)输出(5)可行性

一个算法应该是(要满足5个基本特性);

//算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或者堪称按照要求设计好的有限的确切的计算序列

//可行性:算法中的所有操作都必须通过已经实现的基本操作进行运算,并在有限次内实现,而且人们用笔和纸做有限次运算后也可完成。

从逻辑上可以把数据结构分为(线性结构和非线性结构)两大类;

下述(栈)与数据的存储结构无关;

//栈是逻辑结构 链表就是存储结构的体现 散列表顺序存储结构的扩展 循环队列建立在顺序结构上的队列

以下数据结构中,(树)是非线性数据结构;

以下属于逻辑结构的是(有序表);

第二章

1.逻辑结构

线性表示具有相同特性数据元素的有限序列

相同特性:把同一类事物归类,方便批量处理;

有限:表示元素个数为n,n有限大,n可以为0;

序列:表中元素排成一列,体现了一对一的逻辑特点(每个元素有则仅有一个前驱和后继);

2.存储结构

分为顺序结构和链式结构;

顺序存储结构

int A[maxSize];//maxSize最大长度

int length=0;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HigcZ6F8-1640411606890)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211021161600047.png)]

链式存储结构(单链表)

Head指针完整标记了这个链表的存在;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Krygmk0e-1640411606892)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211021161349123.png)]

1.含头结点的链表

2.不含头结点的链表

链式存储结构(双链表)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hglOliVP-1640411606892)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211021161529153.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fqHx7hNy-1640411606893)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211021161847231.png)]

链式存储结构(循环链表)

单循环链表

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GfrNG6Hh-1640411606894)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211021162239340.png)]

双循环链表

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BiOuGIBR-1640411606894)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211021162320007.png)]

判断条件变化

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KxNCYIyo-1640411606895)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211021162415331.png)]

单循环链表和双循环链表不管什么情况下都不会有空指针;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5pp12qGE-1640411606896)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211021162541593.png)]

题:

单链表L(带头结点)为空的判断条件是L->next==NULL;

非空的单循环链表L(带头结点)的终端结点(由p所指向)满足p->next==L&&p!=L

//带头结点的循环链表是没有空指针的

带头结点的双循环链表L为空的条件是L->priorL&&L->nextL

线性表是一个有限序列,可以为空

线性表采用链表存储时,其结点地址

3.两种存储结构的特性对比

在顺序表中插入和删除元素可能会导致移动大量元素的连带操作(插入或删除操作发生在表尾位置除外),而链表不会。

在单链表中找到任意一个结点的位置不像顺序表那么简单,因为顺序表支持随机存取(任意存取),而单链表不支持;

为了尽可能弥补上一条中单链表的不足,开发了双链表,循环链表和循环双链表等存储结构,这些存储结构可以在仅知道链表中任一个结点地址的情况下推知所有结点的地址,但仍不支持随机存取。

有时候还会给链表定义一个额外的指针,最常见的是表尾指针,它指向链表中最后一个结点。可以借助它来提高某些常用的操作执行效率。

存储结构相关问题

线性表采用顺序存储结构,必须占用一片连续的存储单元,而采用链式存储结构则不需要这样;

从表整体来看,一般顺序表存储结构空间利用率低于链表;而从单个存储单元来看,顺序表存储空间利用率要高于链表。

做题

下面各项中属于顺序存储结构的优点的是:存储密度大

存储密度:结点数据本身所占的存储量和整个结点结构所占的存储量之比。

下面关于线性表的叙说:

线性表采用顺序存储结构,必须占用一片连续的存储单元;

线性表采用链式存储结构,不必占用一片连续的存储单元;

线性表采用链式存储结构,便于插入和删除操作。

线性表是具有n个(数据元素 )的有限序列。

线性表是具有相同特性数据元素的一个有限序列。

若某线性表中最常用的操作是存取任一指定序号的元素和在最后一个元素之后进行插入和删除操作,则采用(顺序表)存储方式最节省时间。

若某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用(不带头结点且有尾指针的单循环链表)存储方式最节省时间。

链表具备的特点:

插入,删除不需要移动元素;

不必事先估计存储空间;

所需存储空间与线性表长度成正比;

设线性表有n个元素,一下操作中,()在顺序表上实现比在链表上实现效率更高。

输出第i(1<=i<=n)个元素值;

顺序输出这n个元素的值;

输出与给点给值x相等的元素在线性表中的序号。

对于一个线性表,即要求能够快速地进行插入和删除,又要求存储结构能够反映数据元素之间的逻辑关系,则采用(链式)存结构。

需要分配较大地连续空间,插入和删除不需要移动元素的线性表,其存储结构为:静态链表。

如果最常用的操作是取第i个元素的前驱结点,则采用(顺序表)存储方式最节省时间。

若某表最常用的操作是在最后一个链表之后插入一个结点或删除最后一个结点,则采用(带头结点的循环双链表)存储结构最节省运算时间。

线性表最常用的操作是在最后一个结点之后插入一个结点或删除第一个结点,则采用(仅有尾结点指针的单循环链表)存储方式最节省时间。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MzcKLer0-1640411606897)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211108234452068.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-olbEnVSj-1640411606897)(C:\Users\ZRflog\AppData\Roaming\Typora\typora-user-images\image-20211108234632317.png)]
表)存储结构最节省运算时间。

线性表最常用的操作是在最后一个结点之后插入一个结点或删除第一个结点,则采用(仅有尾结点指针的单循环链表)存储方式最节省时间。

[外链图片转存中…(img-MzcKLer0-1640411606897)]

[外链图片转存中…(img-olbEnVSj-1640411606897)]

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值