官术网_书友最值得收藏!

1.9 小結

分析操作需要的步驟數是理解數據結構性能的核心。在程序中選擇正確的數據結構決定了程序在處理大量數據時會不會崩潰。在本章中,你已經學習了如何分析特定應用中數組和集合的優劣。

既然已經開始學習如何思考數據結構的時間復雜度,那么就可以用同樣的分析法來比較算法(即便使用相同的數據結構)的優劣,以確保代碼性能最佳。而那正是第2章的內容。

習題

(1) 已知一個有100個元素的數組,請回答以下操作需要的步驟數。

a. 讀取

b. 查找該數組中沒有的一個值

c. 在數組開頭插入

d. 在數組末尾插入

e. 從數組開頭刪除

f. 從數組末尾刪除

(2) 已知一個基于數組的集合有100個元素,請回答以下操作需要的步驟數。

a. 讀取

b. 查找該數組中沒有的一個值

c. 在集合開頭插入一個新值

d. 在集合末尾插入一個新值

e. 從集合開頭刪除

f. 從集合末尾刪除

(3) 通常,數組的查找操作只尋找給定值的第一個實例。但有時我們想找出它的每一個實例。例如,我們可能想統計"apples"在數組中出現的次數。尋找所有的"apples"需要多少步呢?假設數組中有N個元素。

主站蜘蛛池模板: 普兰店市| 论坛| 临澧县| 延川县| 大田县| 襄垣县| 武宣县| 平昌县| 收藏| 同江市| 合江县| 彭阳县| 巴林右旗| 调兵山市| 贡觉县| 历史| 蒙阴县| 锡林郭勒盟| 尼木县| 云龙县| 农安县| 武山县| 景泰县| 榆林市| 甘洛县| 商丘市| 林口县| 库伦旗| 镇巴县| 吴川市| 牙克石市| 普安县| 澄迈县| 孙吴县| 榆林市| 天长市| 疏勒县| 九江县| 大安市| 万山特区| 芦山县|