二维数组打印

简介: 题目描述 有一个二维数组(n*n),写程序实现从右上角到左下角沿主对角线方向打印。 给定一个二位数组arr及题目中的参数n,请返回结果数组。

题目描述
有一个二维数组(n*n),写程序实现从右上角到左下角沿主对角线方向打印。
给定一个二位数组arr及题目中的参数n,请返回结果数组。
测试样例:
[[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]],4
返回:[4,3,8,2,7,12,1,6,11,16,5,10,15,9,14,13]

public int[] arrayPrint(int[][] arr, int n) {
        // write code here
        int[] ans = new int [n*n];
        int index = 0;
        int X = 0;
        int Y = n-1;
        while (X < n) {
            int x = X;
            int y = Y;
            while (x<n && y<n) {
                ans[index++] = arr[x++][y++];
            }

            if (Y > 0)  //应用于对角线及上半部
                Y--;
            else        //应用于对角线下半部
                X++;
        }
        return ans;
    }
目录
相关文章
|
9月前
数组遍历输出
数组遍历输出
38 1
|
9月前
逆序数打印
该内容是关于编程计算正整数的逆序数。用户输入一个正整数,程序需输出其逆序数,即数字顺序反转后的数。文章中包含两张图片作为示例,但图片数据未显示。
56 0
|
9月前
44.从键盘输入12个数存入二维数组a[3][4]中,编写程序求出最大元素的值及它所在的行号和列号
44.从键盘输入12个数存入二维数组a[3][4]中,编写程序求出最大元素的值及它所在的行号和列号
124 0
|
C语言
C语言:使用函数完成整型数组的打印、元素逆置、初始化
思路: 总体思路: (一). 实现 函数init() -- 初始化数组为全0 (二). 实现 函数print() -- 打印数组的每个元素 (三). 实现 函数reverse() -- 函数完成数组元素的逆置 (四). 完成 主函数 的编写 -- 测试这三个函数
304 0
|
9月前
|
网络协议
用结构体,打印一个成绩数组
用结构体,打印一个成绩数组。
46 1
|
9月前
用几种方法输出二维数组各元素的值。
用几种方法输出二维数组各元素的值。
110 4
if的三种形式,运算符的使用,99乘法表的打印
一、访问[(1, 10), (2, 20), (3, 30)]列表中元组的每个元素
83 0
|
C++
C++数组在年历打印中的运用
C++数组在年历打印中的运用
115 0
7-164 打印杨辉三角
7-164 打印杨辉三角
71 0
输出数组元素
输出数组元素
125 0

热门文章

最新文章