資料結構第2章線性表練習

2021-03-04 09:55:29 字數 1768 閱讀 5064

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...