試題 1
閱讀題文
請回答下列 Big O 的相關問題: (一) Big O Notation,根據維基百科又稱為漸進符號,它是用於描述演算法漸 進行為的數學符號。更確切地說,它用更簡單的函式來描述一個演算法在 數量上的漸進趨勢。某個問題可採用 5 個演算法 A~E 求解,各演算法執 行時間的 Big O 分別如下:A 為 O(N²),B 為 O(Nlog(log N)),C 為 O(N¹.⁵),D 為 O(N²log(N)),E 為 O(SQRT(N))。當 N 很 大時,請根據演算法的執行時間,由慢至快排序這 5 個演算法。(10 分) (二) 給定100 萬個介於 0 到 100(含 0 及 100)的整數,請利用任一種高階 程式語言寫出一個 O(N)的由大至小的排序演算法,並說明此演算法 為何是 O(N)的方法。(15 分)
正確答案
申論題難度分析
中等難度 3/5統計
尚無資料0 次作答試題內容有誤?
回報會送到後台審核,不會公開在評論區。
下圖中有 4 個城市 8 條公路,公路上的數字表示這條公路的長短。請注意 這些公路是單向的。若使用 Floyd Warshall 的動態規劃法求解從任意兩個 城市之間的最短路徑,請回答下列問題: (一)首先將圖的信息建成一個 N*N 的初始距離矩陣,其中 N 是節點的個 數,矩陣的各列(Rows)代表 From Nodes,矩陣的各行(Columns) 代表 To Nodes,矩陣中的值則分別代表上圖中從 From Node 到 To Node 的距離。(5 分) (二)其次列舉從 D 到 C 的最短路徑求解過程(需輸出最短路徑的值及路徑), 並說明此方法的計算複雜度 Big O 為何。(15 分)
評論區