转自:http://www.riafan.com/article.asp?id=139
package com.riafan.utils {
/**
* Class that contains static utility methods for manipulating and working
* with Arrays
* @author Flying
* @version 1
* @tiptext
*/
public class ArrayUtil {
/**
* Switch the rows and columns of a 2d array array
* @param arr The 2d array whose dimensions will be switched
* @return A new array which contains items after switch
*/
public static function switchDimensions(arr : Array) : Array {
var newArr : Array = new Array();
var rowMax : uint = arr.length;
var colMax : uint;
try {
if(arr[0] is Array) {
colMax = arr[0].length;
}else {
throw new TypeError("muse be a 2d array");
}
}
catch (error : TypeError) {
trace(error.message);
}
for (var col : uint = 0; col < colMax; col++) {
var tmpArr : Array = new Array();
for (var row : uint = 0; row < rowMax; row++) {
tmpArr[row] = (arr[row][col]);
}
newArr[col] = tmpArr;
}
return newArr;
}
}
}
分享到:
相关推荐
实现数组的行列互换 形参使用二维数组。函数调用使用引用传递,比较基础。
JavaScript二维数组转置是一个在编程中经常遇到的问题,它指的是将一个二维数组的行列进行交换。在介绍这个概念和实现方法之前,我们首先要了解什么是二维数组。二维数组可以看作是一个表格,其中包含有行和列的概念...
`,这种方式创建的二维数组各行列长度可能不一致。 二维数组在实际应用中非常常见,例如在存储多维度数据时,如上述例子中的部门财务数据,可以使用二维数组按部门划分数据,提高数据组织的清晰度。通过定义变量来...
对于矩阵,我们通常使用二维数组表示,但在某些情况下,使用一维数组可以提高内存效率和计算速度。这是因为一维数组的连续存储特性有利于内存管理和缓存优化。 要创建一个基于一维数组的C#矩阵类,我们需要定义以下...
在我们的示例中,一个二维数组`$arr1`被定义为一个矩阵: ```php $arr1=array( array(1,2,3), array(4,5,6), array(6,7,8), array('a','b','c') ); ``` 这里,`$arr1`是一个有四行三列的矩阵,其中最后一个子...
在上述代码中,我们看到了几种不同的数组应用示例,包括倒序输出、斐波那契数列、冒泡排序、二维数组行列互换、求矩阵中的最大值及其行列号、计算对角线元素之和以及在已排序数组中插入元素。 1. **倒序输出**: ...
本章主要讨论了如何利用数组高效地处理批量数据,包括一维数组和二维数组的概念、定义、引用以及初始化。 一维数组是线性数据结构,可以理解为连续存储的数据集合。在C语言中,一维数组的定义通常采用以下形式:`...
1. **指针变量**:形参为指针变量时,将二维数组的首地址传递给指针,通过双重循环遍历二维数组,按照行列关系将元素赋值给一维数组,然后再进行排序和输出。 2. **数组指针**:形参为数组指针时,实际上是指针数组...
在编程实现时,可以通过定义一个二维数组来表示矩阵,并通过循环和交换操作来完成行的交换。 4. 遍历矩阵中的同行、同列、同对角线元素: 给定一个N*N的棋盘,要求输出指定格子(i,j)同行、同列、同一对角线的...
交换第 0 行和第 2 行: >> P[[0, 2], :] = P[[2, 0], :] # P[(0, 2), :] = P[(2, 0), :] >> P array([[ 0., 0., 1.], [ 0., 1., 0.], [ 1., 0., 0.]]) 再交换第一列和第三列: >> P[:, [0, 2]] = P[:, [2, 0
下面我们将深入探讨如何在Python中创建二维数组、交换行列以及打印结果。 首先,我们需要创建一个二维数组。这可以通过嵌套列表来实现。例如: ```python matrix = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ] ``` ...
实现的关键在于理解二维数组的存储结构,以及如何通过循环来实现对应位置元素的加法。 - **实现思路**: 1. 读取矩阵的行列数。 2. 分别读取两个矩阵。 3. 使用双重循环计算两个矩阵的和,并存储在一个新的二维...
通常,这样的函数会接收一个二维数组作为输入,并返回一个新的二维数组表示旋转后的结果。下面是一个简单的Java方法示例: ```java public int[][] rotate(int[][] matrix) { int n = matrix.length; int[][] ...
在处理具有行列关系的数据时,二维数组非常实用。 在读取`.txt`文件之前,我们需要了解文件的基本结构。`.txt`文件通常包含一行接一行的文本,每行可能包含一个或多个数据项。例如,如果我们有一个简单的CSV(逗号...
在本节内容中,我们将介绍多维数组的基础知识,并通过实例学习如何在C++编程中处理多维数组,特别是二维数组(矩阵)的行交换操作,以及如何实现矩阵边缘元素之和的计算和矩阵行列对角线格子的输出。 首先,我们来...
代码示例中,程序将一个2x3的二维数组a的元素按行存储到另一个3x2的二维数组b中,实现了行列互换。这种操作常见于矩阵变换或数据处理场景。 2. **冒泡排序**:冒泡排序是一种简单的排序算法,通过不断交换相邻两个...
在二维数组中,转置操作通过交换矩阵的行和列实现。而在图结构中,矩阵加法和减法需要考虑元素的位置和数量,转置操作则涉及非零元素的重新排列。 总的来说,数据结构课程设计中的特殊矩阵运算涉及到基本的矩阵运算...
- 可以使用嵌套循环来遍历二维数组,外层循环遍历行,内层循环遍历列。 例如: ```java for (int i = 0; i ; i++) { for (int j = 0; j [i].length; j++) { System.out.print(matrix[i][j] + " "); } System....
互换二维数组的行与列,使用记事本打开,数组操作
在这个例子中,我们使用指针变量 `p` 将二维数组 `a` 的每个元素输出,并判断每个元素是否能被 3 整除。 例子 4:将一个二维数组 a 的各行前两个数组元素的值求和并输出 在这个例子中,我们使用指针变量 `p` 将二...