005 -【CS106B】【C++抽象編程】【中英字幕】【sets, lexic

1. 本課程介紹了抽象數(shù)據(jù)類型(ADTs)和不同類型的集合,包括向量、鏈表、棧、隊列、集合和映射。
2. 課程強烈鼓勵學生合作完成作業(yè),因為合作可以減少問題數(shù)量、提高工作效率,并且可以更好地準備考試。
3. 在編寫程序時,使用合適的數(shù)據(jù)結構可以提高程序的效率。在統(tǒng)計文件中的唯一單詞數(shù)量時,使用集合比使用向量更快。
4. 集合有兩種類型:set和hash set。set按照排序順序存儲元素,而hash set不保證元素的順序,但速度更快。
5. 集合支持添加、刪除和包含等核心操作,以及其他一些方便的方法,如獲取集合大小、判斷集合是否為空等。
6. Set(集合)和Map(映射)是計算機科學中常用的數(shù)據(jù)結構。
7. Set用于存儲唯一的元素,而Map用于存儲鍵值對。
8. Set有兩種類型:Set和HashSet,前者按照插入順序排序,后者無序。
9. Map也有兩種類型:Map和HashMap,前者按照鍵的排序順序排序,后者無序。
10. Map可以用于計數(shù)和統(tǒng)計,例如統(tǒng)計文件中每個單詞的出現(xiàn)次數(shù)。
11. 這段代碼中有兩個嵌套的循環(huán),總共執(zhí)行了n^2 + 3n + 1個語句。
12. 大O表示法是一種用來描述算法效率的方法。
13. 大O表示法用來表示算法的最壞情況下的時間復雜度。
14. 大O表示法中的O(n)表示算法的時間復雜度與輸入規(guī)模n成線性關系。
15. 大O表示法中的O(1)表示算法的時間復雜度是常數(shù)級的,與輸入規(guī)模無關。
16. 循環(huán)次數(shù)越多,執(zhí)行時間越長。
17. 在向向量中添加元素時,末尾添加較快,開頭添加需要移動元素。
18. 執(zhí)行某個操作所需的語句數(shù)量可以用O(n)或O(1)來表示,前者表示執(zhí)行時間與元素數(shù)量成正比,后者表示執(zhí)行時間不隨元素數(shù)量變化。
19. O(n)表示較慢,O(1)表示較快。
20. 表格中的內容告訴我們哪些方法是快速的,哪些方法是慢速的。