数据结构与算法B作业二,线性表(1)

来源:互联网 发布:翻译英语的软件 编辑:程序博客网 时间:2024/06/05 20:26

一口气继续做………



1.以下哪种结构是逻辑结构,而与存储和运算无关:


这题选“图”~没啥说的……

2.已知两个元素依值递增有序排列的线性表A和B,且同一表中的元素值各不相同。构造一个线性表C,其元素为A和B中元素的交集,且表C中的元素也依值递增有序排列。已知A和B的最大长度都是n。求你设计的高效算法的时间复杂度:
On

由于A和B都是有序数列,我们只需要从A的第一项开始与B的第一项比较,如果相同则放入C,如果A>B则B前进一位继续比,如果A<B则A前进一位继续比,这样就能在2n的时间内完成查找,因此选O(n)。

3.下面的叙述中正确的是:


选第一、第二,顺序表优点是随机查找,链表优点是存储空间灵活,可动态。

第三个,要把后面的所有元素移动,时间与n-i+1成正比,n是线性表的规模。
第四个,顺序表要删除表中元素时需要将之后所有元素前移。

4.某个线性表以顺序表形式实现,长度为n,现在按值查找元素,假设线性表中没有该值的概率为p,且要查找的值在线性表中等概率出现。则平均比较次数为:
p∗n+p∗(n+1)/2

选第二个,没有的概率为p,如果没有就要比n次,是p*n,如果有的话,就是1-p的概率,可能比较1,2,3...n次,总共(1+n)*n*0.5,算平均再除以n,于是加起来就是p*n+(1-p)*(1+n)*0.5

5.某个线性表存储元素如下:a0,a1,a2,a3,a4,a5,a6,a7,a8。如果该线性表以顺序表形式实现,那么在ai0≤i≤9的位置插入新元素,需要移动的元素个数为:
i+1

选第三个,插到哪就要把后面的所有元素挪一下,于是就要挪9-i次。


6.某个线性表存储元素如下:a0,a1,a2,a3,a4,a5,a6,a7,a8。如果该线性表以单链表形式实现(含头结点),已知头指针,那么在ai0≤i≤9前的位置插入新元素,需要移动指针的次数为:
i+1

选第二个,在哪插入就要把指针挪到哪。






















原创粉丝点击