1.對以下單鏈表分別執行下列各程式段,並畫出結果示意圖。
(1) q=p->next;
(2) l=p->next;
(3) r->data=p->data;
(4) p->data=p->next->data;
(5) p->next->next->next->data=p->data;
(6) t=p;
while(t!=null)
(7) t=p;
while(t->next!=null)
2.畫出執行下列各行語句後各指標及鍊錶的示意圖
l= (linklist)malloc(sizeof(lnode)); p=l;
for(i=1;i<=4;i++)
p->next=null;
for(i=4;i>=1;i--) ins_linklist (l, i+1, i*2);
for(i=1;i<=3;i++) del_linklist (l, i);
3.在乙個單鏈表hl中,若要在指標q所至結點的後面插入乙個由指標p所指向的結點,則執行()。
a. q->next=p->next; p->next=q;
b. p->next=q->next; q=p;
c. q->next=p->next; p->next=q;
d. p->next=q->next; q->next=p;
4.不帶頭結點的單鏈表head為空的判定條件是____
a. head=nullb. head->next=nullc. head->next=headd. head!=null
5.雙向鍊錶結點結構如下:
llink data rlink
其中:llink是指向前趨結點的指標域; data是存放資料元素的資料域; rlink是指向後繼結點的指標域。
下面給出的演算法段是要把乙個新結點q作為非空雙向鍊錶中的結點p的前趨,插入到此雙向鍊錶中。能正確完成要求的演算法段是( )
a.q->llink = p->llink;
q->rlink = p;
p->llink = q;
p->llink->rlink = q;
b.p->llink = q;
q->rlink = p;
p->llink->rlink = q;
q->llink = p->llink;
c.q->llink = p->llink;
q->rlink = p;
p->llink->rlink = q;
p->llink = q;
6.已知l是帶表頭結點的單鏈表,其p結點既不是首結點(第一結點),也不是尾結點:
1) 刪除p結點的直接後繼結點的語句序列是( );
2) 刪除p結點的語句序列是( );
3) 刪除首結點的語句序列是( );
4) 刪除尾結點的語句序列是( );
a) p=p→next ;
b) p→next=p ;
c) p→next=p→next→next ;
d) p=p→next→next ;
e) while (p !=null)
f) while (p→next !=null)
g) while (p→next !=q)
h) while (p→next→next !=q)
i) q=null ;
j) q=p ;
k) q=p→next ;
l) p=l ;
m) l=l→next ;
n) free(q);
資料結構 第2章線性表
第2章線性表 一選擇題 1 下述哪一條是順序儲存結構的優點?北方交通大學 2001 一 4 2分 a 儲存密度大 b 插入運算方便 c 刪除運算方便 d 可方便地用於各種邏輯結構的儲存表示 2 下面關於線性表的敘述中,錯誤的是哪乙個?北方交通大學 2001 一 14 2分 a 線性表採用順序儲存,必...
資料結構第2章線性表
第2章線性表自測卷 一 填空 1.在順序表中插入或刪除乙個元素,需要平均移動元素,具體移動的元素個數 與有關。2.線性表中結點的集合是的,結點間的關係是的。3.向乙個長度為n的向量的第i個元素 1 i n 1 之前插入乙個元素時,需向後移動個元素。4.向乙個長度為n的向量中刪除第i個元素 1 i n...
資料結構第2章線性表
第2章線性表練習題 一 填空 1.在順序表中插入或刪除乙個元素,需要平均移動元素,具體移動的元素個數 與有關。2.線性表中結點的集合是的,結點間的關係是的。3.向乙個長度為n的向量的第i個元素 1 i n 1 之前插入乙個元素時,需向後移動個元素。4.向乙個長度為n的向量中刪除第i個元素 1 i n...