回答
那麼,在C中,沒有像「C++ std庫」中那樣的「vector」和「list」數據類型可以直接使用。但就「抽象數據類型」而言,矢量通常被認爲代表連續存儲,並且鏈接列表被認爲是由連接在一起的單個單元表示的。向量提供快速的恆定時間隨機訪問讀取和寫入操作,但插入和刪除向量元素需要線性時間。列表具有線性查找性能,用於查找要讀取和寫入的元素,但給定元素位置後,會有恆定的時間插入和刪除。您也可以在常量時間內將項目添加到列表的開始和結尾(如果ADT實現緩存列表中最後一個元素的位置)。
謝謝你的幫助:)。 – iPadDevloperJr 2011-02-26 07:31:56
簡單地說,我聽過這個問題的最好解釋。 – MadPumpkin 2012-03-30 22:43:14
基本上,一個向量駐留在連續的內存中。鏈表包含指向前一個和下一個結構的指針。隨機訪問的矢量速度更快,鏈表更適合成長。
http://www.codeguru.com/forum/archive/index.php/t-309352.html
vector是一個動態數組。內存中的元素相鄰。鏈接列表中的元素不相鄰。
一個向量通常作爲一個連續的內存塊被實現爲一個數組。而列表可以分佈在內存中,因爲每個元素持有指向一個或多個其他元素的指針(可以雙重鏈接)。這爲向量提供了訪問速度優勢,但列出了插入/刪除優勢。
- 1. 動態超鏈接列和超鏈接列之間的區別
- 2. 結構和列表ADT之間的用法區別是什麼?
- 3. 鏈接列表和流之間的技術區別是什麼?
- 4. 錨鏈接和window.location之間的區別?
- 5. 列表和序列之間的區別
- 6. HashMap與字典之間的區別ADT
- 7. 列表切片和直接分配列表之間的區別?
- 8. 排序鏈接列表的方法之間的區別C++
- 9. 靜態鏈接和動態鏈接之間的區別
- 10. 帖子鏈接和鏈接功能之間的區別
- 11. TBB併發向量和STL向量之間的區別?
- 12. 雙端鏈表和雙鏈表之間的區別
- 13. **變量和變量[] []之間的區別?
- 14. 長度爲1的tcl列表和標量之間的區別?
- 15. 鏈接列表的首節點和起始節點之間有什麼區別?
- 16. 方法鏈接和流暢接口之間的區別
- 17. render_template和重定向之間的區別?
- 18. 區間鏈接列表
- 19. Scala:類型類和ADT之間的區別?
- 20. 什麼是直接鏈接和鏈接的靜態libarary之間的區別
- 21. C中的硬鏈接和它的程序之間的區別
- 22. Clojure:列表和返回列表的函數之間的區別
- 23. Ruby - 變量和@variable之間的區別
- 24. Sharepoint中的字段鏈接和字段之間的區別
- 25. 鏈接中的文本和輸入/按鈕之間的區別
- 26. 鏈接列表向量
- 27. 數組列表和列表之間的區別
- 28. 列表<T>和列表<object>之間的區別?
- 29. 兩個不同的HTML超鏈接之間的區別? (鏈接和HTML標籤)
- 30. react-native鏈接和cocoapods之間的區別?
可能重複[是矢量鏈表的特例嗎?](http://stackoverflow.com/questions/4700052/are-vector-a-special-case-of-linked-lists) – bdonlan 2011-02-26 07:29:53