若某线性表最常用的操作是存取任一指定序号的元素和在最后进行插入和删除运算,则利用()的存储方式最节省时间。
A.顺序表
B.双链表
C.带头结点的双循环链表
D.单循环链表
第1题
设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用( )最节省时间。
A.带头结点的双循环链表
B.单循环链表
C.带尾指针的单循环链表
D.单链表
第2题
下面哪一条是顺序存储结构的优点?( )
A.插入运算方便
B.可方便地利用各种逻辑结构的存储表示
C.存储密度大
D.删除运算方便
第3题
下面关于线性表的叙述中,错误的是( )。
A.线性表若采用顺序存储,则必须占用一片连续的存储单元
B.线性表若采用顺序存储,则便于进行插入和删除操作
C.线性表若采用链表存储,则不必占用一片连续的存储单元
D.线性表若采用链表存储,则便于进行插入和删除操作
第5题
于在双链表中删除指针变量p所指的结点: p->next=p->prior->next; p->prior=p->next->prior; free(p); (2)下面的算法描述片段用于在双链表中指针变量p所指结点后插入一个新结点: new(q); q->prior=p; p->next=q; q->next=p->next; q=p->next->prior;
第6题
处填写相应的语句。 void Lmknown(LinkList L){ //… p=L->next; q=p->next; r=q->next; while(q!=L){ while((p!=L)&&(p->data>q->data)) p=p->prior q->prior->next=r; A q->next=p0>next; q0>prior=p; B C q=r; p=q->prior; D } }
第7题
ointer h){ //为附加头结点指针 pointer p,q; p=h->next; h->next=NULL; while( (1) ){ q=P; p=p->next; q->next=h->next; h->next= (2) ; } }
第8题
在行个结点的线性表的数组实现中,算法的时间复杂度为O(1)的操作是( )。
A.访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
B.在第i个结点后插入一个新结点(1≤i≤n)
C.删除第i个结点(1≤i≤n)
D.以上都不对
第9题
线性表以链接方式存储时,访问第i个元素的时间复杂度为( )。
A.O(i)
B.O(1)
C.O(n)
D.O(i-1)
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!