Matlab中数据的存储方式
扫描二维码
随时随地手机看文章
简介
MATLAB提供了丰富的算法以及一个易于操作的语言,给算法研发工作者提供了很多便利。然而MATLAB在执行某些任务的时候,执行效率偏低,测试较大任务量时可能会引起较长时间的等待。未解决这个问题,MATLAB提供了与C语言联用的功能,而C语言的执行效率相对较高,因此联合使用MATLAB和C可以兼顾开发测试程序的速度和程序的执行效率。要联合使用它们,有必要知道MATLAB中数据的存储方式,这就是本文索要介绍的内容。
MATLAB的数据组织方式
MATLAB中所有数组都以行优先存储数据,例如一个2x2的矩阵,在内存中的数据存储顺序是:(行1,列1),(行2,列1),(行1,列2),(行1,列2)。如果是三维数组,例如2x2x2的一个三维数组,其数据存储顺序为:(行1,列1,层1),(行2,列1,层1),(行1,列2,层1),(行1,列2,层1);(行1,列1,层2),(行2,列1,层2),(行1,列2,层2),(行1,列2,层2);(行1,列1,层3),(行2,列1,层3),(行1,列2,层3),(行1,列2,层3)。
这种存储方式可以用下面的图说明:
上图中,不同的颜色代表不同层。每个方块代表一个数据单元。内存地址从左到右,从上到下依次增大。
总结
MATLAB中数据的组织形式与C只相差一个行列互换!只要注意这一点,就可以在MATLAB中熟练使用MATLAB的多维数据了。