《資料結構練習題》線性表

2021-03-03 23:54:00 字數 1596 閱讀 3215

線性表及其實現

1 設一順序表中元素值遞增有序。寫一演算法,將元素x插到表中適當的位置,並保持順序表的有序性,且分析演算法的時間複雜度。

2 設有兩個按元素值遞增有序的順序表a和b,編一程式將a表和b表歸併成乙個新的遞增有序的順序表c(值相同的元素均保留在c表中)。

3 按下面兩種情況分別編寫演算法刪除順序表中值相同的多餘元素:

(1) 順序表元素值遞增有序;

(2) 順序表元素值無序。

4 已知l是無表頭結點的單鏈表,且p結點既不是首結點,也不是尾結點,試從下列提供的語句中選出合適的語句序列。

(1) 在p結點後插入s結點

(2) 在p結點前插入s結點

(3) 在表首插入s結點

(4) 在表尾插入s結點

① p->next = s;

② p->next = p->next->next;

③ p->next = s->next;

④ s->next = p->next;

⑤ s->next = l;

⑥ s->next = p;

⑦ s->next = null;

⑧ q = p;

⑨ while (p->next != q) p = p->next;

while (q->next != null) q = q->next;

p = q;

p = l;

l = s;

l = p;

5 已知p結點是某雙向鍊錶的中間結點,試從下列提供的語句中選出合適的語句序列。

(1) 在p結點後插入s結點

(2) 在p結點前插入s結點

(3) 刪除p結點的直接後繼結點

(4) 刪除p結點的直接前驅結點

(5) 刪除p結點

① p->next = p->next->next;

② p->prior = p->prior->prior;

③ p->next = s;

④ p->prior = s;

⑤ s->next = p;

⑥ s->prior = p;

⑦ s->next = p->next;

⑧ s->prior = p->prior;

⑨ p->prior->next = p->next;

p->prior->next = p;

p->next->prior = p;

p->next->prior = s;

p->prior->next = s;

p->next->prior = p->prior;

q = p->next;

q = p->prior;

free(p);

free(q);

6 設有兩個線性表a和b皆是單鏈表儲存結構。同乙個表中的元素各不相同,且遞增有序。寫一演算法,構成乙個新的線性表c,使c為a和b的交集,且c中元素也遞增有序。

7 設有兩個按元素值遞增有序的單鏈表a和b,編一程式將a表和b表歸併成乙個新的遞增有序的單鏈表c(值相同的元素均保留在c表中)。

8 設l為帶頭結點的單鏈表,按下面兩種情況分別編寫演算法,刪除表中值相同的多餘元素。

(1) 順序表元素值遞增有序;

(2) 順序表元素值無序。

資料結構線性表作業

void main主函式 檔案中所定義的全域性變數的變數名和主要功能 暫無 檔案中用到的他處定義的全域性變數及其出處 暫無 與其他檔案的依賴關係 暫無 和資料的出處 資料結構 清華大學出版社 include include include include sleep 用到 define list i...

資料結構線性表答案

a.在p結點後插入s結點的語句序列是 b.在p結點前插入s結點的語句序列是 c.在表首插入s結點的語句序列是 d.在表尾插入s結點的語句序列是 1 p next s 2 p next p next next 3 p next s next 4 s next p next 5 s next l 6 s...

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

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