一维数组和二维数组的转换表示(C#)

简介:

关键:下标的计算

一维->二维

一个n个元素的一维数组,转换为r行c列的二维数组

对于一维数组中任意一个元素的下标i(0 <= i < n)

其对应的二维数组下标为 (i / c, i % c), 显然, 只与列数c有关,而与行数r无关

code like this

int [] a  =   new   int [n];
int [,] b  =   new   int [r, c];

for  ( int  i  =   0 ; i  <  n; i ++ )
    b[i 
/  c, i  %  c]  =  a[i];

 

also can write like this

复制代码
for  ( int  i  =   0 ; i  <  r; i ++ )
{
    
for  ( int  j  =   0 ; j  <  c; j ++ )
    {
        b[i, j] 
=  a[i  *  c  +  j];
    }
}
复制代码

 

二维->一维

int [,] a  =   new   int [r, c];
int [] b  =   new   int [r  *  c];
for ( int  i  =   0 ; i  <  b.Length; i ++ )
    b[i] 
=  a[i  /  c, i  %  c];

 

本文转自zdd博客园博客,原文链接:http://www.cnblogs.com/graphics/archive/2009/06/04/1496203.html,如需转载请自行联系原作者

相关文章
|
1月前
|
存储 算法 搜索推荐
15一维数组
15一维数组
15 0
|
6月前
【一维数组和二维数组】
【一维数组和二维数组】
29 0
|
1月前
|
存储 算法 搜索推荐
16二维数组
16二维数组
13 0
|
2月前
|
机器学习/深度学习 算法 前端开发
将一维数组转变成二维数组
将一维数组转变成二维数组
19 0
|
3月前
|
JavaScript 前端开发 索引
如何对实现一维数组转化为二维数组
本文章实现了数组之间的转换
|
4月前
|
C语言
二维数组的知识
二维数组的知识
|
4月前
|
存储 算法 C++
C++013-C++二维数组
C++013-C++二维数组
C++013-C++二维数组
|
4月前
|
算法 C++
C++012-C++一维数组
C++012-C++一维数组
C++012-C++一维数组
|
4月前
|
存储
二维数组剖析
二维数组剖析
29 0
|
4月前
|
存储 C语言
一维数组剖析
一维数组剖析
29 0