- 大 O 表示法衡量的是什麼?
顯示答案
當輸入規模增加時,演算法所需的執行時間或空間如何成長。
- 請定義 O(1) 時間複雜度。
顯示答案
常數時間,不論輸入規模多大,執行時間都不會改變。
- 請定義 O(n) 時間複雜度。
顯示答案
線性時間,執行時間與輸入規模 n 成正比。
- 請定義 O(log n) 時間複雜度。
顯示答案
對數時間,執行時間隨輸入規模的對數成長。
- 請定義 O(n^2) 時間複雜度。
顯示答案
平方時間,執行時間隨輸入規模的平方成長。
- 請定義 O(n log n) 時間複雜度。
顯示答案
線性對數時間,執行時間為 n 乘以 n 的對數。
- 請定義 O(2^n) 時間複雜度。
顯示答案
指數時間,輸入規模每增加一,執行時間就變成兩倍。
- 以索引存取陣列元素的時間複雜度是多少?
顯示答案
O(1) 常數時間。
- 在未排序的陣列中搜尋某個值,時間複雜度是多少?
顯示答案
O(n) 線性時間。
- 對已排序的陣列做二元搜尋,時間複雜度是多少?
顯示答案
O(log n) 對數時間。
- 使用二元搜尋之前,陣列必須滿足什麼條件?
顯示答案
陣列必須是已排序的。
- 在陣列開頭插入一個元素,時間複雜度是多少?
顯示答案
O(n) 線性時間。
- 在容量足夠的動態陣列尾端新增一個元素,時間複雜度是多少?
顯示答案
O(1) 均攤常數時間。
- 在雜湊表中搜尋的平均時間複雜度是多少?
顯示答案
雜湊函數良好時為 O(1) 常數時間。
- 快速排序在平均情況下的時間複雜度是多少?
顯示答案
O(n log n) 線性對數時間。