分享:典型的數(shù)據(jù)結(jié)構(gòu)筆試題。
1. 線性表的順序存儲結(jié)構(gòu)是一種 的存儲結(jié)構(gòu),而鏈?zhǔn)酱鎯Y(jié)構(gòu)是一種___的存儲結(jié)構(gòu)。
A.隨機存取 B.索引存取 C.順序存取 D.散列存取
2. 線性表若采用鏈?zhǔn)酱鎯Y(jié)構(gòu)時,要求內(nèi)存中可用存儲單元的地址___。
A. 必須是連續(xù)的 B. 部分地址必須是連續(xù)的
C. 一定是不連續(xù)的 D. 連續(xù)或不連續(xù)都可以
3. 在一個單鏈表中p所指結(jié)點之前插入一個s (值為e)所指結(jié)點時,可執(zhí)行如下操作:
q=head;
while (q->next!=p) q=q->next;
s= new Node; s->data=e;
q->next= ; //填空
s->next= ; //填空
4. 在一個單鏈表中,已知q所指結(jié)點是p所指結(jié)點的前驅(qū)結(jié)點,若在q和p之間插入s結(jié)點,則執(zhí)行____。
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;
5. 在一個單鏈表中,若p所指結(jié)點不是最后結(jié)點,在p之后插入s所指結(jié)點,則執(zhí)行____。
A. s->next=p; p->next=s; B. s->next=p->next; p->next=s;
C. s->next=p->next; p=s; C. p->next=s; s->next=p;
6. 在一個單鏈表中,若刪除p所指結(jié)點的后續(xù)結(jié)點,則執(zhí)行____。
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;
7. 鏈表不具備的特點是 ____ 。
A 可隨機訪問任何一個元素 B 插入、刪除操作不需要移動元素
C 無需事先估計存儲空間大小 D 所需存儲空間與線性表長度成正比
8. 在一個長度為n的順序表中刪除第i個元素,要移動 個元素。如果要在第i個元素前插入一個元素,要后移( )個元素。 N-I N-I+1
9. 以下關(guān)于線性表的說法不正確的是 。
A 線性表中的數(shù)據(jù)元素可以是數(shù)字、字符、記錄等不同類型。
B 線性表中包含的數(shù)據(jù)元素個數(shù)不是任意的。
C 線性表中的每個結(jié)點都有且只有一個直接前趨和直接后繼。
D 存在這樣的線性表:表中各結(jié)點都沒有直接前趨和直接后繼。
答案
1.A/C(這題是考察對概念的理解,可參考第7題,“順序表才能隨即存取,而鏈表不可以”)
2.D
3.q->next=s;
s->next=p;
4.C
5.B
6.A
7.A(此題絕對選A,因為鏈表只能根據(jù)他的前一個結(jié)點才能找到下一個結(jié)點,不具備隨即訪問元素的功能)
8.n-i; n-i+1
9.C