MatrixOrder Enumeration |
Namespace: Accord.Math
Member name | Value | Description | |
---|---|---|---|
CRowMajor | 1 | Row-major order (C, C++, C#, SAS, Pascal, NumPy default). | |
FortranColumnMajor | 0 | Column-major oder (Fotran, MATLAB, R). | |
Default | 1 | Default (Row-Major, C/C++/C# order). |
In computing, row-major order and column-major order describe methods for arranging multidimensional arrays in linear storage such as memory. In row-major order, consecutive elements of the rows of the array are contiguous in memory; in column-major order, consecutive elements of the columns are contiguous. Array layout is critical for correctly passing arrays between programs written in different languages. It is also important for performance when traversing an array because accessing array elements that are contiguous in memory is usually faster than accessing elements which are not, due to caching. In some media such as tape or NAND flash memory, accessing sequentially is orders of magnitude faster than nonsequential access.
References: