2016 - 2024

感恩一路有你

行优先和列优先计算公式 能详细描述一下顺序存储的数组元素的存放地址的计算方法吗?

浏览量:1722 时间:2021-03-18 02:54:00 作者:admin

能详细描述一下顺序存储的数组元素的存放地址的计算方法吗?

元素a(ij)的存储地址应该是数组的基址加上元素a(ij)之前占用的单元数。因为a(ij)位于第i行和第j列,所以在前面的i-1行有(i-1)×n个元素,在第一行的a(ij)前面有j-1个元素,所以在a(ij)前面有(i-1)×n个j-1个元素。

因此,a(ij)的地址计算函数为:LOC(AIJ)=LOC(a11)[(i-1)*nj-1]*D。同样,三维数组a(ijk)以“行优先级顺序”存储,其地址计算函数为:LOC(aijk)=LOC(a111)[(i-1)*n*P(J-1)*P(k-1)]*D。以上讨论假设数组的每个维数的下界为1。更一般的二维数组是[C1。。D1,C2。。D2],其中C1和C2不一定是1。在二维数组中,a(ij)之前总共有i-c1行,d2-c21列,因此i-c1行具有(i-c1)*(d2-c21)元素,并且在第i行的a(ij)之前有j-c2元素。

因此,a(ij)的地址计算函数为:LOC(AIJ)=LOC(ac1c2)[(i-c1)*(d2-c21)j-c2)]*D。

行优先和列优先计算公式 怎么看数组几行几列 三维数组地址按列优先

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。