数据结构第二章
线性表习题含答案
说明:顺序存储的线性表称为向量。
一
,
单项选择题一个向量第一个元素的地址是
100
,每个元素的长度为
2
,则第
5
个元素的地
址是
__
①
_B__
。
A) 110 B) 108 C) 100 D) 120
线性结构通常采用的两种存储结构是
__
①
A___
。
A)
顺序存储结构和链式存储结构
B)
散列方式和索引方式
C)
链表存储结构和数组
D)
线性存储结构和非线性存储结构不带头结点的单链表
head
为
空的判定条件是
__
①
__A_.
A) head==NULL B) head->next==NULL
C) head->next==head D) head!=NULL
带头结点的单链表
head
为空的判定条件是
__
①
B___
。
A) head==NULL B) head->next==NULL
C) head->next==head D) head!=NULL
非空的循环链表
head
的尾结点(由
p
所指向)满足
__
①
_C__
。
A) p->next==NULL B) p==NULL
C) P->next==head D) p==head
在循环双链表的
p
所指结点之后插入
s
所指结点的操作是
___
①
_C_
。
A) p->right=s; s->left=p; p->right->left=s; s->right=p->right;
B) p->right=s; p->right->left=s; s->left=p; s->right=p->right;
C) s->left=p; s->right=p->right; p->right=s; p->right->left=s;
D) s->left=p; s->right=p->right; p->right->left=s; p->right=s;
在一个单链表中,已知
q
所指结点是
p
所指结点的前驱结点,若在
q
和
p
之间插入
s
结点
,
则执行
__
①
c___
。
A) s->next=p->next; p->next=s; B) p->next=s->next; s->next=P;
C) q->next=s; s->next=p; D) p->next=s; s->next=q;
在一个单链表中,
若
p
所指结点不是最后结点,
在
p
之后插入
s
所指结点,
则执行
__
①
b___
。
A) s->next=p; p->next=s; B) s->next=p->next; p->next=s;
C) s->next=p->next; p=s; D) p->next=s; s->next=p;
在一个单链表中,若删除
p
所指结点的后续结点,则执行
__
①
_a__
。
A) p->next=p->next->next; B) p=p->next; p->next=p->next->next;
C) p->next=p->next; D) p=p->next->next;
10,
假设双链表结点的类型如下:
typedef struct linknode
{