Java实现二维数组转置的三种输出方法(IntelliJ IDEA 2017.2.6 x64)

 1 import java.util.Arrays;
 2
 3 /**
 4  * Created by Stefango at 9:54 on 2018/7/22
 5  */
 6 public class Solution {
 7     public static int[][] transpose(int[][] A) {
 8         int R = A.length, C = A[0].length;
 9         int[][] ans = new int[C][R];
10         for (int r = 0; r < R; r++)
11             for (int c = 0; c < C; c++)
12                 ans[c][r] = A[r][c];
13         return ans;
14     }
15
16     public static void main(String[] args) {
17         int[][] A = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
18         for (int[] i : A) {
19             for (int j : i)
20                 System.out.print(j + " ");
21             System.out.println();
22         }
23         System.out.println("---转置---");
24         int[][] B = transpose(A);
25
26 //        方法一:传统的for循环
27 //        for (int i = 0; i < B.length; i++) {
28 //            for (int j = 0; j < B[i].length; j++)
29 //                System.out.print(B[i][j] + " ");
30 //            System.out.println();
31 //        }
32
33 //        方法二:for each 循环
34 //        for (int[] i : B) {
35 //            for (int j : i)
36 //                System.out.print(j + " ");
37 //            System.out.println();
38 //        }
39
40 //        方法三:利用Arrays类中的toString方法(与前两种方法的输出略有不同)
41         for (int i=0;i<B.length;i++)
42             System.out.println(Arrays.toString(B[i]));
43 //        方法三输出为
44 //        [1, 4, 7]
45 //        [2, 5, 8]
46 //        [3, 6, 9]
47     }
48 }

原文地址:https://www.cnblogs.com/stefango/p/9349702.html

时间: 2024-10-11 06:11:51

Java实现二维数组转置的三种输出方法(IntelliJ IDEA 2017.2.6 x64)的相关文章

45.将3&#215;3二维数组转置,并输出

//1.定义一个3*3的二维数组//2.输入内容,并在屏幕中输出//3.运用for循环嵌套将数组转置,并输出 (1)我的程序:运用中间量交换 -错误版:转置算法有问题,需要好好模拟一下 #include<iostream> using namespace std; int main() { int temp; int a[3][3]; cout<<"please input 9 numbers: "<<endl; for(int i=0;i<3

C++_二维数组作为函数参数的使用方法

二维数组作为函数参数的使用方法 /*01)恒等式:ar2[r][c] == *(*(ar2+r)+c)03) ar2+r指向编号为r的元素,该元素由c个int型(或其他类型)数组成,编号从0开始02)int a[100][4]; ....   int total = sum(a,100); //在主函数中调用sum()函数,使用二维数组中的全部的数据   int total = sum(a,10); //在主函数中调用sum()函数,使用二维数组中的前十行数据   int total = sum

Java的二维数组的应用及杨辉三角的编写

(1) 编写一个程序,生成一个10*10的二维随机整数数组,并将该数组的每行最大值保存于一个一维数组中,将每列平均值保存于另外一个一维数组中并分别输出. (2) 编程输出杨辉三角的前10行. 找出一个,即该位置上的元素在该行上最大,在该列上最小(注:一个二维数组也可能没有这样的鞍点). /** * * @author liuhui *@version Java上机实验三 *@time 2016.10.30 */ public class javatest2 { public static int

6、JAVA基础-二维数组 及 面向对象理解

1:二维数组(理解) (1)元素是一维数组的数组. (2)格式: A:数据类型[][] 数组名 = new 数据类型[m][n]; B:数据类型[][] 数组名 = new 数据类型[m][]; C:数据类型[][] 数组名 = new 数据类型[][]{{...},{...},{...}}; D:数据类型[][] 数组名 = {{...},{...},{...}}; (3)案例(掌握): A:二维数组的遍历 B:二维数组的求和 C:杨辉三角形 2:两个思考题(理解) (1)Java中的参数传递

JAVA:二维数组

一.二维数组相关语法 /* 二维数组:就是元素为一维数组的一个数组. 格式1: 数据类型[][] 数组名 = new 数据类型[m][n]; m:表示这个二维数组有多少个一维数组. n:表示每一个一维数组的元素有多少个. 注意: 以下格式也可以表示二维数组 a:数据类型 数组名[][] = new 数据类型[m][n]; b:数据类型[] 数组名[] = new 数据类型[m][n]; */ class Array2Demo { public static void main(String[]

java定义二维数组的几种写法

//定义二维数组写法1 class numthree{              public static void main(String[] args)    {              float[][] numthree;//定义一个float类型的2维数组              numthree=new float[5][5];//为它分配5行5列的空间大小 numthree[0][0]=1.1f;//通过下标索引去访问1行1列=1.1              numthre

题目一:使用Java实现二维数组中的查找

考点:数组 题目:二维数组中的查找 描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 方式一:选择从左下角开始搜寻,因为选择在左下角搜寻的话,如果目标值大于搜索值,那么就向右继续搜索,如果目标值小于搜索值,那么就向上继续搜索.在左上角就无法形成这样的判断.时间复杂度为:0(lgn) package cn.imooc.java2; public class Solution

69期-Java SE-005_二维数组、综合练习-001-002

Test.java public class Test { public static void main(String[] args) { int[] array = {73,80,62,93,96,87}; //求最大值 int max = array[0]; for(int i=1;i<array.length;i++) { if(array[i]>max) { max = array[i]; } } System.out.println("数组中的最大值是"+max

晓莲说-何不原创:java 实现二维数组冒泡排序

新手从业路-为自己回顾知识的同时,也希望和大家分享经验: 话不多说,上代码 public class 冒泡排序 { /**     * @param admin     * @2017.12.4     */    public static void main(String[] args) {       int[][] array=new int[10][3];    //新建一个二维数组              //对数组进行赋值(以日期为例)       array[0][0]=201