到底什麼是順序表的隨機讀取?

2021-10-10 01:31:40 字數 407 閱讀 5652

要讀取a[5](隨機選乙個數讀取,所以叫隨機儲存),可以直接從位址a+5讀取;但是鍊錶,只能從表頭開始乙個乙個讀取下乙個節點位址,讀到第6個才找到。

本人初學時對於順序表的隨機訪問和查詢總是混淆,無論是順序表的查詢還是鍊錶的查詢他們的時間複雜度都為o(n),我就很納悶那到底順序表的優點是如何體現的呢?

順序表是利用陣列儲存的,所謂的隨機訪問,即當你知道陣列的首位址後你可以讀取任何乙個位置的元素,設ai序號為i 的元素的儲存位置為li,每個元素長度為d,則序號為j的元素的儲存位置為li + d(j - i),這個式子對所有元素序號(下標)都是一樣的計算時間,也就是說,訪問任何乙個元素的時間都是相同的,因此是隨機訪問

而對於鍊錶來說則需要根據指標所乙個乙個讀取。比如:要讀取第五個位置的元素,順序表:l0+d*5即可,鍊錶則需要依次讀,讀到第五個才能找到

ofstream的讀取是有順序

include include include 目的在於從number.txt檔案中讀取數字,並比較大小 將結果輸入end.txt using namespace std int main int argc,char argv int score 5 max,i ifstream outf outf...

什麼是線性表,何為順序表,順序表基本運算方法的解析

承接上文,直接開始講這兩種表let s go.還是老樣子,在這兩種表 順序錶鏈表 之前說一下線性表。線性表定義 具有相同資料元素的乙個有序序列 線性表的性質 線性表定義 把線性表中的所有元素按照他的邏輯順序依次儲存到指定的連續的儲存空間中。通俗來說,就是線性表的順序儲存結構叫做順序表。可以把順序表看...

到底什麼是REST中的狀態

廢話不多說,貼上群裡大佬給的例子 業務場景,乙個迷宮api,使用者登陸後在起點,用請求進行移動 有狀態的unrestful介面 使用者傳送請求,比如我要往前走,伺服器根據儲存的使用者座標進行計算,能走就返回移動成功,不能走就返回有障礙物,用同樣的引數去請求,但是每次返回的結果卻不一樣,並且資源的狀態...