1. 程式人生 > >隨機訪問與順序訪問

隨機訪問與順序訪問

隨機訪問是說你可以隨意訪問該資料結構中的任意一個節點,假設該資料結構有10個節點,你可以隨意訪問第1個到第10個節點。
對於列表而言,如果其存在10個節點,如果你要訪問第5個節點,你只能從列表的頭或者尾,依次遍歷相鄰的每一個節點;
對於vector而言,你可以直接利用[]操作符,直接訪問[4],不需要遍歷其他的節點。
這就是隨機訪問。

比如first是第一個元素的地址,現在想訪問第N個元素。

隨機訪問:直接first+N,便可以得到第N個元素的地址,因為這些相鄰元素是按順序連續儲存的。
比如普通陣列就是可隨機訪問的。

而連結串列不支援隨機訪問,連結串列儲存的元素,它們的儲存地址也不是連續的,是隨機的。
要想訪問第N個元素,只能從second = first->next遍歷第2個元素,然後再three = first->next遍歷第3個元素… 這樣一直到第N個元素。所以這樣的訪問速度就沒有隨機訪問快