论一维数组与二维数组之间的除余关系
大家学编程这么多年,对数组再熟识不过了。而且经常性的用到。可我们很少用到它他们之间的转换,也许你们经常用到,只是我而已,我不能把我的认知加给大家。一维数组就相当于一个自然数集,从0,起到很大的一个序列。从数组的角度就是一维数组,可数组的引用及检索就是用序列,可以说一维数组的角色很多,功能也最大。而二维数组的下标都是一维的。可以说这一个递归的组成。这只是其中的一个关系,相互组成,一维构成了二维,二维用一维检索。这不是主要关系,我要讲的是转换关系及数学中的除余关系。我先讲解一下示例:
如一个序列,0。1,2,3,4,5,6,7,8,9,10,11,12,13,...这里不举多了。
再看二维数组:
┌ ┐
│ a00,a11,a12,a13 │
│ a10,a11,a12,a13 │
│ a20,a21,a22,a23 │
这就是一个二维数组吧。如果我们要把它按行展开就是这样a00,a11,a12,a13,a10,a11,a12,a13,a20,a21,a22,a23现在它们是按一维的形式出现了,哪么下标不再是双维的了,新的下标就是0,1,2,3,4,5,6,7,8,9,...
这样的我们应该如何快速转换呢?我们先用col表标列,用row表示行,用c_n表示一行的个数,用i表示一维的下标。哪么就公式,大家可以当公式记下来的。
公式如下:row=Math.floor(i/c_n)//Math.floor()表示取整;
col=i%c_n;
是不是开简单呀,所以你可以用a[Math.floor(i/c_n),i%c_n]检索二维数组了。这样就完了从二维到一维的转换。
交流QQ:550703900
欢迎加入我的论坛:http://bbs.dfutureworld.com/
我的专业博客地址:http://ideafuture.iteye.com/
分享到:
相关推荐
一维数组转二维数组
2. **使用数组公式**:选择一个新单元格区域,这个区域的大小应等于两个一维数组的长度乘积(即二维数组的行数与列数)。然后,输入一个能够处理两个一维数组的公式,如进行加法运算的`{=A1:A_n+B1:B_n}`。这里的`A1...
在C#编程中,一维数组到二维数组的转换是一个常见的操作,特别是在处理表格数据或者在Windows Forms(WinForm)应用程序中创建控件布局时。本篇将详细讲解如何进行这种转换以及如何保存二维数组的数据。 首先,让...
2. **二维数组**:二维数组可以理解为一维数组的数组,常用于表示表格或矩阵。声明二维数组时,需要提供行数和列数,如 `int matrix[3][4]` 创建了一个3行4列的二维数组。 3. **指针**:在C++中,指针是存储内存...
C# json 一维数组 和 二维数组的转换 写的非常详细,对大家有帮助
将labview内二维数组方便的转化为一维数组使用
在本主题中,我们将深入探讨一维数组、二维数组和三维数组的概念,以及如何使用模板来实现这些数据结构。这些基础知识在编程中至关重要,尤其是在处理大量数据时。 一维数组是最基础的数据结构之一,它是一个有序的...
用二维数组实现二维矩阵的加法和乘法 #include #define SIZE 4 void addMatrix(int [ ][SIZE], int [ ][SIZE], int [ ][SIZE]); void mulMatrix(int [ ][SIZE], int [ ][SIZE], int [ ][SIZE]); void ...
一维数组是基本的数组,多维数组是在一维数组的基础上创建的。一维数组的创建过程如下。 (1)创建数组框架。在前面板窗口控件选板中选择控件“新式→数组、矩阵与簇→数组,置于前面板窗口的空白处,如图1所示。...
本文将深入探讨二维数组与指针之间的紧密联系,以及如何通过指针实现二维数组与一维数组之间的转换。 首先,我们需要理解指针的基本概念。指针是C++中的一种特殊类型,它存储的是另一个变量的地址。当指针指向一个...
二维数组,顾名思义,是具有两个索引维度的数组,可以看作是由若干个一维数组排列而成的一个矩形阵列。在易语言中,二维数组通常用于存储表格或矩阵形式的数据,例如图像像素、游戏地图、成绩表等。在编程过程中,...
#### 三、二维数组与一维数组转换 对于二维数组的排序,通常的做法是先将其转换为一维数组,然后再利用冒泡排序对一维数组进行排序,最后再将排序后的一维数组还原为二维数组。这种方法不仅易于理解和实现,而且...
在LabVIEW编程环境中,三维数组是一种非常重要的数据结构,它能够有效地存储和处理大量多维数据。本篇文章将深入探讨如何在LabVIEW中创建、操作和应用三维数组,以实现如标题和描述所述的功能。 首先,让我们理解...
在C语言中,二维数组是处理表格数据的一种基础方式,它本质上是一组一维数组的集合,每个一维数组代表数组的一行。本编程练习旨在加深对C语言中二维数组、指针和函数的理解,通过实际操作提升编程技能。下面我们将...
本压缩包提供了几个关键的VBA示例,包括行列转置、表格数据到数组、一维数组转二维数组以及单列转多列等操作。下面将详细介绍这些知识点及其应用。 1. **行列转置**: 在Excel中,行列转置是将工作表中的数据从行...
在这个“一维数组题目8道题带答案”资源中,我们可以期待找到一系列与一维数组相关的练习题,旨在帮助学习者理解和熟练掌握在Unity C#环境中操作数组的技巧。 1. **数组的基本概念**: - 一维数组是线性数据结构,...
要对二维数组进行排序,我们不能直接使用C#内置的排序方法,如`Array.Sort()`,因为它们通常适用于一维数组。对于二维数组,我们需要自定义排序逻辑。文中提供的代码提供了一种解决方案,它首先将二维数组转换为`...
在LabVIEW编程环境中,二维数组是一种常见的数据结构,用于存储多行多列的数据。本教程将深入探讨如何在LabVIEW中有效地读取二维数组的所有数据,这对于数据分析、处理和可视化至关重要。 首先,让我们理解二维数组...
* 理解二维数组与一维数组的关系 * 理解二维数组的行列概念 * 认识到计算机在存储多维数组时,依然是采取线性的存储方式 * 能结合循环和一维数组的知识,合理使用行列位置变量,解决矩阵、地图、网格上的综合问题