1
一:错误,顺序存储结构如果优于链式,那我们没必要学习链式存储了。
二:链式存储可以更方便的表示各种逻辑结构,因为链式存储用指针可以随意指向下一个逻辑结构,甚至可以指向多个结点,但是顺序存储不可以。
三:写反了,链式优于顺序。
四:顺序存储可以顺序存取也可以随机存取
所以选b
2
a不能快速插入删除
c散列存储方式是指在一片空间内查找元素,用‘关键字’去查找,所以不能反应数据之间的逻辑关系
3
结点之间的存储单元地址不一定连续,但是结点内的存储单元地址一定是连续的。
4
一:后面会学到二维数组顺序存储图或树等结构,所以只存储线性结构是错误的。
二:链表删除表尾元素需要遍历一遍表,所以时间复杂度和表长有关。错误的
三:带头结点的单循环链表中不存在空指针,即使只有一个结点,他也要指向自己。对的
四:插入新节点,要先遍历再插入即时间复杂度为O(n)
五:对,带尾指针的循环链表用来表示队列很合适。队列要考虑入队出队,即尾指针后入队,直接插入即可,出队也是用尾指针指向新的结点即可。
5
a找元素的时间复杂度一样,单链表删除的效率高于顺序表
b单链表要遍历,顺序表可以直接插入
c时间复杂度一样,都是逐个输出
d单链表要遍历,顺序表可以随机读取,只是交换复杂一点,但时间复杂度是O(1)
6
q指向一个结点,该节点指向p所指的结点,现在要让该节点指向s,再让s指向p所指的结点。
即调整p->next和s->next,选c
7
O(n平方)或者O(nlog2n)
直接插入有序数组时间复杂度为前者
先排序时间段复杂度为后者,在建立相对应的有序单链表时间复杂度为O(n),后者省略。
最低为d
一:错误,顺序存储结构如果优于链式,那我们没必要学习链式存储了。
二:链式存储可以更方便的表示各种逻辑结构,因为链式存储用指针可以随意指向下一个逻辑结构,甚至可以指向多个结点,但是顺序存储不可以。
三:写反了,链式优于顺序。
四:顺序存储可以顺序存取也可以随机存取
所以选b
2
a不能快速插入删除
c散列存储方式是指在一片空间内查找元素,用‘关键字’去查找,所以不能反应数据之间的逻辑关系
3
结点之间的存储单元地址不一定连续,但是结点内的存储单元地址一定是连续的。
4
一:后面会学到二维数组顺序存储图或树等结构,所以只存储线性结构是错误的。
二:链表删除表尾元素需要遍历一遍表,所以时间复杂度和表长有关。错误的
三:带头结点的单循环链表中不存在空指针,即使只有一个结点,他也要指向自己。对的
四:插入新节点,要先遍历再插入即时间复杂度为O(n)
五:对,带尾指针的循环链表用来表示队列很合适。队列要考虑入队出队,即尾指针后入队,直接插入即可,出队也是用尾指针指向新的结点即可。
5
a找元素的时间复杂度一样,单链表删除的效率高于顺序表
b单链表要遍历,顺序表可以直接插入
c时间复杂度一样,都是逐个输出
d单链表要遍历,顺序表可以随机读取,只是交换复杂一点,但时间复杂度是O(1)
6
q指向一个结点,该节点指向p所指的结点,现在要让该节点指向s,再让s指向p所指的结点。
即调整p->next和s->next,选c
7
O(n平方)或者O(nlog2n)
直接插入有序数组时间复杂度为前者
先排序时间段复杂度为后者,在建立相对应的有序单链表时间复杂度为O(n),后者省略。
最低为d