




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、數(shù)組元素存儲地址的計算一維數(shù)組設(shè)一維數(shù)組An存放在n個連續(xù)的存儲單元中,每個數(shù)組元素占 一個存儲單元(不妨設(shè)為 C個連續(xù)字節(jié)).如果數(shù)組元素A0的首地址是L,則A1的首地址是L+C , A2的首地址是L+2C,依次類推,對于0 i n 1有:Loc(Ai) Loc(A0) i*C二維數(shù)組二維數(shù)組的每個元素含兩個下標(biāo),如果將二維數(shù)組的第一個下標(biāo)號,理解為行號,第二個下標(biāo)理解為列號,然后按行列次序排列個元素, 則二維數(shù)組呈陣列形狀。例如a11 a12a1nAa21 a22a2nam1am2amn它是個行號為1m ,列號為1n的二維數(shù)組元素陣列如何保存二維數(shù)組?首先要確定個順序Oa00 a01&am
2、p;02B 0a11盹a20a21a22a00 a01 a02a10 a11 a12a20 a21 a22a00a01a020a11a12a20a21a22Ba00a01a02ai0ai1ai2a20<Ja21a22a00a0ia02a00a01a02a00a01302Bai0aii3,2Ba10311a12Ba10311312a20a21a22a20a21a22a20a21322a00ai0 a20a01a11a21a02ai2a22300301302300h-30130200S01302a10311312BO&s£1312B310S12321322320沐32232
3、0321300301302300301 302a10311 312B310311312320321322320321322320 310321300311322 301312 302設(shè)count為數(shù)組B中元素的個數(shù),則 count=9按行優(yōu)先存儲123456789a000)1a02a10011a12a20a21a227,按列優(yōu)先存儲123456789a00a10a20a01311a21a02a12a22VVY地址如何計算?所謂按行優(yōu)先順序,就是將數(shù)組元素按行向量的順序存儲, 第i 1個行向量存儲在第i個行向量之后。F面我們計算二維數(shù)組Am n中任一元素Aij的存儲地址,設(shè)每個數(shù)組元素所占空間為
4、C個連續(xù)字節(jié)。顯然,Aij是第i個行向量Bi中的第j個元素。123456789aooao1ao2310311a12920a21a22'V"八y'第0行第1行第2行在Aij之前的元素個數(shù)為u,分別是AOO , AO1,AO2,AOn,A10 ,A11 ,A12,A1n,Ai-10, Ai-11,Ai-12,Ai-1n, Ai0 , Ai1,Ai2,Aij-1設(shè)每個數(shù)組元素所占空間為C個連續(xù)字節(jié)。Loc (Aij)二Loc (AOO ) +u*Cu二?前i行(第0行到第i-1行)(每行n個元素)的元素個數(shù)+第i行的元素個數(shù)(Ai0到Aij-1因此,u=i*n+j)+u*C
5、Loc (Aij ) =Loc (AOO=Loc ( AOO)+ (i*n+j ) *C按列優(yōu)先存儲123456789a00a10a20a01311a21a02a12a22地址如何計算?在Aij之前的元素個數(shù)為V,分別是A00, A10,A20,Am0,A01,A11 ,A21,Am1,A0j-1,A1j-1,A2j-1,Amj-1,A0j,A1j,A2j,Ai-1j設(shè)每個數(shù)組元素所占空間為C個連續(xù)字節(jié)。Loc( Aij)二Loc (A00 )+v*Cv=?前j列(第0列到第j-1列)(每列m個元素)的元素個數(shù)+第j列的元素個數(shù)(A0j到 Ai-1j)因此,V二j*m+iLoc( Aij )=
6、Loc(A00 )+v*C=Loc(A00 ) + (j*m+i ) *C高維數(shù)組按行優(yōu)先:“左”下標(biāo)優(yōu)先,即第一(最左)下標(biāo)的下標(biāo)值較小的元素較先存儲,第一個下標(biāo)值相同者,按第二下標(biāo)優(yōu)先存儲,對任意的k>1,對第1( k-1 )維相同者,先存儲第k維中下標(biāo)值較小者。按列優(yōu)先:“右”下標(biāo)優(yōu)先(最后一維下標(biāo)為最右)先存儲第n維下標(biāo)值較小者,第n維下標(biāo)值相同者,先存儲第n-1維下標(biāo)值較小者。三維數(shù)組D334的順序存儲次序是元素表示為Dijk其中,0 <i <2 , 0 <j <2 ,0 <k <3,可以把它看作一維數(shù)組D034i=0B13 = D034,
7、D134, D234 000, D001, D 002, D 003010, D011, D012, D013020, D021, D 022, D 023D134i=11 00, D101, D 1 02, D 1 03:D 1 10, D111, D112, D 1 13D 1 20, D121, D 1 22, D 1 23D 2 00,D201,D 202,D 2 03D234i=2D210,D211,D212,D213D220,D221,D 222,D223For x=0to 2doFor y=0 todoFor z=0to3 doDijk的地址:Loc (Dijk)=Loc(D00
8、0)+w*C第一個下標(biāo)的變化:0 到 i-1,共 i*3*4個元素第一個下標(biāo)為i時,第二個下標(biāo)的變化:0到j(luò)-1,共j*4個元素第一個下標(biāo)為i,第二個下標(biāo)為j時,第三個下標(biāo)的變化:0到k-1 ,共k個元素w= i*3*4+j*4+kLoc( Dijk)=Loc ( D000)+w*C=Loc(D000)+( i*3*4+j*4+k)*CFor z=0 to 3doFor y=0 to2 doFor x=0 to 2 doop £00=z JojG庇庇a,£乙山'£遼HoldG "庇a4gl山Hold2=G Ko庇a4go山4g0HoldL=0=k
9、 乙庇a'乙乙山'乙乙Holdk "庇a七U山'遼MHold2=L=k Ko庇a七0山'遼0Hold0=門乙庇a'門乙山'門遼Hold庇a U山4 d 1Hold2=門0庇a'門0山'門0HoldO=£££血©G2=1=0=0乙庇G '0乙山'0遼HoldoKi Ma 'oU 山 4olHold0胡0Ko 庇G 4oo 山 4ooHoldoGGa乙乙E乙Lg30g 比g k kg%03g Okg OOgFor y=0 to 2doFor x=0 to2 do
10、Loc (Dijk)二Loc(D000)+w*C第三個下標(biāo)的變化:0到k-1,共k*3*3個元素第三個下標(biāo)為k時,第二個下標(biāo)的變化:0到j(luò)-1,共j*3個元素第三個下標(biāo)為k,第二個下標(biāo)為j時,第一個下標(biāo)的變化:0到i-1 ,共i個元素w= k*3*3+j*3+iLoc( Dijk)=Loc ( D000)+w*C=Loc (D000) + (k*3*3+j*3+i) *Cn 維數(shù)組 amim2 mnFor l1=0 tom1 1doFor I2 =0 tom21 doFor ln=0 tomn 1 doLoc(ii,i2, ,in)Loc(0,0,0) s*CnI1 的變化:0 i1-1,共 i1*m2*m3*mn 二 i1* mp 個元素p 2m4 *in -1 ,nl1等于h時,2的變化:0 i2-1,共i2* m3*mn二i2* mp個元素p 3ll等于il時,I2等于i2時,l3的變化:0i3-1 ,共i3*n*mn= i3*mp個元素P 4ll等于ii時,I2等于
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 拱墅區(qū)小學(xué)數(shù)學(xué)試卷
- 高一期末深圳數(shù)學(xué)試卷
- 房山區(qū)高三數(shù)學(xué)試卷
- 高一金太陽數(shù)學(xué)試卷
- 福建英語數(shù)學(xué)試卷
- 2025年03月山東威海市中心醫(yī)院山東省博士后創(chuàng)新實踐基地招聘20人筆試歷年專業(yè)考點(難、易錯點)附帶答案詳解
- 財務(wù)評價培訓(xùn)課件模板
- 2025至2030達(dá)瓦納油行業(yè)市場深度研究與戰(zhàn)略咨詢分析報告
- 阜新實驗月考數(shù)學(xué)試卷
- 東莞市初三題目數(shù)學(xué)試卷
- 2025年中國普通聚醚市場調(diào)查研究報告
- 上海市重點建設(shè)項目社會穩(wěn)定風(fēng)險評估報告編制指南2025
- 2025央國企AI+數(shù)智化轉(zhuǎn)型研究報告
- 倉儲部標(biāo)簽管理制度
- 數(shù)字化情報資源管理-洞察闡釋
- 電氣自動化 霓虹燈廣告屏的PLC控制設(shè)計
- 穿透式管理模式在建設(shè)項目中的應(yīng)用與探索
- 車庫門維修合同范本
- 2025年度事業(yè)單位公開招聘考試《綜合應(yīng)用能力(E類)公共衛(wèi)生管理》試卷真題及解析
- 三市耐多藥肺結(jié)核病患者管理狀況剖析與優(yōu)化策略探究
- 風(fēng)機吊裝安全培訓(xùn)
評論
0/150
提交評論