保研+夏令营+预推免+计算机知识汇总打包总结+(数据结构科目)+11条知识点极速通关!

问题1:数据项,数据元素,数据对象

答案1:

①数据项是每一个属性

②数据元素是一条数据,里面包含多条数据元素

③数据对象:是数据元素的集合

问题2:线性表的分类

答案2:①顺序表②单链表

问题3:顺序表

答案3:

①定义:用顺序存储的方法实现线性表的顺序存储,在逻辑上相邻的元素在物理位置上也相邻

②查找的时间复杂度:O(1)

③插入和删除的时间复杂度:O(n)

④优缺点:可以随机存取,存储密度高,但是改变容量不方便

问题4:单链表

答案4:

①定义:使用链式存储存储的方式实现线性表的顺序存储

②插入操作:

在链表头部插入:时间复杂度为O(1),因为不需要遍历整个链表。

在链表尾部插入:时间复杂度为O(n),因为需要遍历整个链表来找到尾部。

在链表中间插入:时间复杂度为O(n),因为需要遍历链表直到找到插入位置。

③删除操作:

在链表头部删除:时间复杂度为O(1),因为只需要修改头节点的指针。

在链表尾部删除:时间复杂度为O(n),因为需要遍历整个链表来找到倒数第二个节点。

在链表中间删除:时间复杂度为O(n),因为需要遍历链表直到找到要删除的节点的前一个节点。

④查找操作:

查找一个节点:时间复杂度为O(n),因为需要遍历整个链表直到找到目标节点。

查找最大/最小值:时间复杂度为O(n),因为需要遍历整个链表。

⑤优缺点:属于顺序存取,改变容量简单,但是需要耗费一定的空间来存储指针

问题5:栈的基本特点

答案5:

①后进先出(LIFO)

②只允许在一端进行插入或删除操作的线性表

③只有一个端口,用于各项操作

问题6:队列的基本特点

答案6:

①先进先出FIFO

②有两个端口,只能在队尾插入,在队头删除

问题7:树的定义

答案7:除了根节点外,任何一个结点都有且仅有一个前驱

问题8:树的结点分类

答案8:

①祖先结点:该结点的父亲,爷爷,一直往上

②子孙结点:自己往下的所有结点

③双亲结点:一个结点的直接前驱(爸爸)

④孩子结点:一个结点的直接后继(儿子)

⑤兄弟结点:一个爹生的多个儿子

⑥堂兄弟结点:和你同一层,但不是你爹生的结点

问题9:结点的特征

答案9:

①两个节点的路径长度:只能从上到下,经过了几条边

②结点的深度:从上往下数,结点所在的层次

③结点的高度:从下往上数,越往上越大

④树的高度/深度:也就是有几层

⑤结点的度:指的是这个节点有几个孩子

⑥树的度:各个节点中度的最大值

问题10:树的计算性质

答案10:

①结点数=总度数+1

问题11:二叉树的分类

答案11:

①满二叉树

除了叶子结点外,每一个结点都有左右两个节点

只有最后一层有叶子结点

不存在度为1的结点

当前节点为i,左孩子为2i,右孩子为2i+1,父亲为i/2向下取整

②完全二叉树

是满二叉树的一部分,但是按照顺序,结点的位置要能够一一对应

只有最后两层可能有叶子结点

最多只有一个度为1的节点

③二叉排序树

左边的结点值都小于该结点;

右边的结点值都大于该结点;

④平衡二叉树

所有左子树和右子树的高度差不超过1

这主要是为了能够确保有更高的搜索效率,不然树只长一遍就变成了顺序查找了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

还不秃顶的计科生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值