資料結構簡答題期末複習

2021-09-05 11:06:21 字數 1877 閱讀 4033

1、資料結構定義

資料結構是指相互之間存在著一種或多種關係的資料

元素的集合和該集合中資料元素

之間的關係組成。

2、其邏輯結構的四種關係並畫出它們的關係圖

集合結構 2.線性結構 3.樹形結構 4.圖形結構

3、資料結構的特性

陣列:優點是插入快,如果知道下標,可以非常快地訪問。缺點是查詢慢,刪除慢,大小固定。

有序陣列:優點是比無序的資料查詢快。缺點是刪除和插入慢,大小固定。

棧:優點是提供後進先出方式的訪問。缺點是訪問其他項很慢。

佇列:提供先進先出方式的訪問。缺點是訪問其他項很慢。

鍊錶:優點是插入快,刪除快。缺點是查詢慢。

二叉樹:優點是查詢、插入、刪除都快(如果樹保持平衡)。缺點是刪除演算法複雜。

紅-黑樹:查詢、插入、刪除都快。樹總是平衡的。缺點是演算法複雜。

2-3-4樹:優點是查詢、插入、刪除都快。樹總是平衡的。類似的樹對磁碟儲存有用。缺點是演算法複雜。

雜湊表:優點是如果關鍵字已知則訪問極快。插入快。缺點是刪除慢,如果不知道關鍵字則訪問很慢,對儲存空間使用不充分。

堆:優點是插入、刪除快,對最大資料項的訪問很快。缺點是對其他資料項訪問慢。

圖:優點是對現實世界建模。缺點是有些演算法且複雜。

4、儲存結構由哪兩種基本的儲存方法實現?

主要分順序儲存結構和鏈式儲存結構兩種。

5、順序表和煉表的比較?p50

一.順序表:

1.1.從空間角度:

分配方式:靜態分配

儲存密度:為1

1.2.從時間角度:

訪問方式:隨機訪問

操作:插入刪除:o(n) ; 按序訪問:o(1);

二.鍊錶:

2.1.從空間角度:

分配方式:動態分配

儲存密度:小於1

2.2.從時間角度:

訪問方式:順序訪問

6、單鏈表、迴圈表和雙向鍊錶的比較

《資料結構-c語言版》(嚴蔚敏) p51

7、棧和佇列的異同點?

1) 棧與佇列的相同點:

都是線性結構。

插入操作都是限定在表尾進行。

都可以通過順序結構和鏈式結構實現。、

插入與刪除的時間複雜度都是o(1),在空間複雜度上兩者也一樣。

多鏈棧和多鏈佇列的管理模式可以相同。

2) 棧與佇列的不同點:

刪除資料元素的位置不同,棧的刪除操作在表尾進行,佇列的刪除操作在表頭進行。

應用場景不同;常見棧的應用場景包括括號問題的求解,表示式的轉換和求值,函式呼叫和遞迴實現,深度優先搜尋遍歷等;常見的佇列的應用場景包括計算機系統中各種資源的管理,訊息緩衝器的管理和廣度優先搜尋遍歷等。

順序棧能夠實現多棧空間共享,而順序佇列不能。

8、衡量演算法的基本標準?

時間複雜度:程式執行的次數

空間複雜度:程式執行過程中大概所占用的最大記憶體

難易程度

健壯性9、二叉樹的三種遍歷方法

遍歷二叉樹的所有結點且僅訪問一次。按照根節點位置的不同分為前序遍歷,中序遍歷,後序遍歷。

前序遍歷:根節點->左子樹->右子樹(根節點在前面)

中序遍歷:左子樹->根節點->右子樹(根節點在中間)

後序遍歷:左子樹->右子樹->根節點(根節點在後邊)

例如:求下面樹的三種遍歷

前序遍歷:abdefgc

中序遍歷:debgfac

後序遍歷:edgfbca

資料結構簡答題

答案 棧和佇列都是操作受限的線性表,棧只能在一端 棧頂 進行進出的線性表,而佇列是只能在一端 隊尾 插入,在另一端 隊頭 進行刪除的線性表,樹的先中後序遍歷可以通過棧來實現,從而避免遞迴操作,樹的層次遍歷,可以通過迴圈佇列實現。棧佇列 線性表受限 受限線性表進出 一端 棧頂 一端插入另一端刪除 實現...

作業系統期末簡答題

作業系統期末簡答題 打個樣,格式,提問引導,加粗 15 什麼是spooling技術?答 同時聯機外圍操作技術,它是關於慢速字元裝置如何與計算機主機進行資料交換的一種技術,通常又稱為假離線技術。在多道程式環境下,利用多道程式中的一道或者兩道程式來模擬離線輸入 輸出中的外圍控制機的功能,以到達 離線 輸...

Linux Dri Dev 期末考試簡答題

名字相同的不同函式的區別。kmalloc函式與vmalloc函式的區別 來自csdn kmalloc 用於申請較小的 連續的物理記憶體 以位元組為單位進行分配,在中 void kmalloc size t size,int flags 分配的記憶體實體地址上連續,虛擬 位址上自然連續 gfp mas...