資料結構考研真題-網路工程與資訊保安2017貢獻-判斷與選擇題
1-1快速排序和歸併排序在最壞情況下的比較次數都是O(nlog2n)。 (2分)F
1-2在任何情況下,歸併排序都比簡單插入排序快。 (2分)F
1-3歸併排序在任何情況下都比所有簡單排序速度快。( ) (2分)F
1-4快速排序總比簡單排序快。( )(2分)F
各種常見排序演算法
類別 | 排序方法 | 時間複雜度 | 空間複雜度 | 穩定性 | 複雜性 | ||
---|---|---|---|---|---|---|---|
最好 | 平均 | 最壞 | 輔助儲存 | ||||
插入排序 | 直接插入 | O(N) | O(N²) | O(N²) | O(1) | 穩定 | 簡單 |
希爾排序 | O(N) | O(N¹·³) | O(N²) | O(1) | 不穩定 | 複雜 | |
選擇排序 | 直接選擇 | O(N) | O(N²) | O(N²) | O(1) | 不穩定 | |
堆排序 | O(N*log₂N) | O(N*log₂N) | O(N*log₂N) | O(1) | 不穩定 | 複雜 | |
交換排序 | 氣泡排序 | O(N) | O(N²) | O(N²) | O(1) | 穩定 | 簡單 |
快速排序 | O(N*log₂N) | O(N*log₂N) | O(N²) | O(log₂N)~O(N) | 不穩定 | 複雜 | |
歸併排序 | O(N*log₂N) | O(N*log₂N) | O(N*log₂N) | O(N) | 穩定 | 複雜 | |
基數排序 | O(d(r+n) | O(d(r+n) | O(d(r+n) | O(rd+n) | 穩定 | 複雜 |
注:r代表關鍵字基數,d代表長度,n代表關鍵字個數。
1-5中序周遊(遍歷)平衡的二叉排序樹,可得到最後排序的關鍵碼序列。 (2分)F
前序遍歷可得
1-6外部排序是把外存檔案調入記憶體,可利用內部排序的方法進行排序,因此排序所花的時間取決於內部排序的時間 。 (2分)F
外部排序指的是大檔案的排序,當待排序的檔案很大時,無法將整個檔案的所有記錄同時調入記憶體進行排序,只能將檔案存放在外存,這種排稱為外部排序。外部排序的過程主要是依據資料的內外存交換和“內部歸併”兩者結合起來實現的。
一般情況下,外部排序所需總的時間=內部排序(產生初始歸併段)所需的時間m*tIS+外存資訊讀寫的時間
1-7在外部排序時,利用選擇樹方法在能容納m個記錄的記憶體緩衝區中產生的初始歸併段的平均長度為2m個記錄。( ) T
歸併排序是將兩個長度相當序列合併成一個序列,初始序列長度為m,那麼合併之後的平均長度為2m
1-8為提高在外排序過程中,對長度為N的初始序列進行“置換—選擇”排序時,可以得到的最大初始有序段的長度不超過N/2。 (2分)F
外部排序,置換選擇,在記憶體區儲存一段數字,每次彈出記憶體區中最小的數字(這個數字不能比已經彈出的最大數字大),加入一個新數字,當記憶體區中不存在比彈出序列中最大數字還大的數字,即記憶體區中的數字都比上一個彈出的數字小,分段。構造第二個段,以此類推。如果待排元素有序,則只有一個歸併段。長度N。
1-9排序速度,進行外排序時,必須選用最快的內排序演算法。 (2分)F
外排序和內排序不只是考慮內外排序演算法的效能,還要考慮IO資料交換效率的問題,記憶體存取速度遠遠高於外存。
記憶體與外設的資訊交換,主要看交換效率,至於內排序最優演算法,僅佔一點點因素。
1-10在完成外排序過程中,每個記錄的I/O次數必定相等。( ) (2分)F
1-11影響外排序的時間因素主要是記憶體與外設交換資訊的總次數。( ) (2分)T
1-12串是一種資料物件和操作都特殊的線性表。 (2分)T
1-13連結串列中的頭結點僅起到標識的作用。( )(2分)F
1-14順序儲存結構的主要缺點是不利於插入或刪除操作。( )(2分)T
1-15線性表採用連結串列儲存時,結點和結點內部的儲存空間可以是不連續的。( )(2分) (2分)T
1-16順序儲存方式插入和刪除時效率太低,因此它不如鏈式儲存方式好。( )(2分)F
1-17對任何資料結構鏈式儲存結構一定優於順序儲存結構。( )(2分)F
1-18順序儲存方式只能用於儲存線性結構。( )(2分)F
順序儲存方式不僅能用於儲存線性結構,還可以用來存放非線性結構,例如完全二叉樹是屬於非線性結構,但其最佳儲存方式是順序儲存方式。
1-19集合與線性表的區別在於是否按關鍵字排序。( ) (2分) F
集合是不允許重複的,連結串列可以有資料重複,集合和連結串列都可以是無序的。
1-20所謂靜態連結串列就是一直不發生變化的連結串列。( )(2分)F
1-21線性表的特點是每個元素都有一個前驅和一個後繼。( ) (2分)F
第一個元素無前驅,最後一個元素無後繼。
1-22取線性表的第i個元素的時間同i的大小有關. ( )(2分)F
線性表包括順序表和連結串列,順序表和查詢元素位置無關,時間複雜度為o(1),連結串列則隨i增大而增大,平均時間複雜度為o(n)
1-23迴圈連結串列不是線性表. ( ) (2分)F
1-24線性表只能用順序儲存結構實現。( )(2分)F
1-25線性表就是順序儲存的表。( )(2分) F
1-26順序儲存方式的優點是儲存密度大,且插入、刪除運算效率高。( ) (2分)F
1-27資料元素是資料的最小單位。( ) (2分)F
資料處理的最小單位是資料項;由若干資料項組成資料元素;資料是指能夠被計算機識別、儲存和加工處理的資訊載體;資料結構是指資料之間的相互關係和資料運算。
1-28記錄是資料處理的最小單位。 ( ) (2分)F
1-29資料的邏輯結構是指資料的各資料項之間的邏輯關係。( )(2分)F
資料的邏輯結構是對資料元素之間邏輯關係的描述。!!!不是資料項。真·摳字眼。。。
1-30演算法的優劣與演算法描述語言無關,但與所用計算機有關。( )(2分)F
1-31健壯的演算法不會因非法的輸入資料而出現莫名其妙的狀態。( ) (2分)T
1-32演算法可以用不同的語言描述,如果用C 語言或PASCAL語言等高階語言來描述,則演算法實際上就是程式了。( ) (2分)F
1-33程式一定是演算法。( ) (2分)F
1-34資料的物理結構是指資料在計算機內的實際儲存形式。( ) (2分)T
1-35資料結構的抽象操作的定義與具體實現有關。( ) (2分)F
資料結構的抽象操作定義取決於客觀存在的一組邏輯特性,與其在計算機內如何表示和實現無關
1-36在順序儲存結構中,有時也儲存資料結構中元素之間的關係。( )(2分)F
資料元素都是按順序依次存放的,並沒有儲存元素之間的關係。
像連結串列,除了儲存資料外,還儲存了下一個資料的指標,這才叫儲存了資料元素之間的關係
1-38資料結構的基本操作的設定的最重要的準則是,實現應用程式與儲存結構的獨立。( ) (2分)T
1-39資料的邏輯結構說明資料元素之間的順序關係,它依賴於計算機的儲存結構. ( ) (2分)F