C#數(shù)據(jù)結(jié)構(gòu)與算法之順序表淺析
C#數(shù)據(jù)結(jié)構(gòu)與算法之順序表是什么呢?首先來看看看C#數(shù)據(jù)結(jié)構(gòu)與算法之順序表的概念:
C#數(shù)據(jù)結(jié)構(gòu)與算法之順序表是在計算機內(nèi)存中以數(shù)組的形式保存的線性表,是指用一組地址連續(xù)的存儲單元依次存儲數(shù)據(jù)元素的線性結(jié)構(gòu)。
線性表采用順序存儲的方式存儲就稱之為順序表。順序表是將表中的結(jié)點依次存放在計算機內(nèi)存中一組地址連續(xù)的存儲單元中。將表中元素一個接一個的存入一組連續(xù)的存儲單元中,這種存儲結(jié)構(gòu)是順序結(jié)構(gòu)。
采用順序存儲結(jié)構(gòu)的線性表簡稱為“ 順序表”。順序表的存儲特點是:只要確定了起始位置,表中任一元素的地址都通過下列公式得到:LOC(ai)=LOC(a1)+(i-1)*L 1≤i≤n 其中,L是元素占用存儲單元的長度。
如順序表的每個結(jié)點占用len個內(nèi)存單元,用location (ki)表示順序表中第i個結(jié)點ki所占內(nèi)存空間的第1個單元的地址。
則有如下的關(guān)系:
location (ki+1) = location (ki) +len
location (ki) = location(k1) + (i-1)len
存儲結(jié)構(gòu)要體現(xiàn)數(shù)據(jù)的邏輯結(jié)構(gòu)。
C#數(shù)據(jù)結(jié)構(gòu)與算法之順序表的存儲結(jié)構(gòu)中,內(nèi)存中物理地址相鄰的結(jié)點一定具有順序表中的邏輯關(guān)系。
C#數(shù)據(jù)結(jié)構(gòu)與算法之順序表的相關(guān)內(nèi)容就向你介紹到這里,希望對你了解C#數(shù)據(jù)結(jié)構(gòu)與算法之順序表有所幫助。
【編輯推薦】