java实现三角螺旋阵

该博客介绍了如何使用Java编程语言实现一种特殊的矩阵填充方法,即从左上角开始,按照顺时针方向螺旋填充上三角区域。通过示例展示了当n为3、4、5时,填充的矩阵结果,并指出程序接收3到20之间的整数n作为输入,输出相应大小矩阵的上三角部分,数据以每格4位,右对齐的格式展示。
摘要由CSDN通过智能技术生成

方阵的主对角线之上称为“上三角”。
请你设计一个用于填充n阶方阵的上三角区域的程序。填充的规则是:使用1,2,3….的自然数列,从左上角开始,按照顺时针方向螺旋填充。
例如:当n=3时,输出:
1 2 3
6 4
5
当n=4时,输出:
1 2 3 4
9 10 5
8 6
7
当n=5时,输出:
1 2 3 4 5
12 13 14 6
11 15 7
10 8
9

程序运行时,从标准输入获得整数n(3~20)
程序输出:方阵的上三角部分。
要求格式:每个数据宽度为4,右对齐。

package com.liu.ex9;

import java.util.Scanner;


public class Main {
    
    public void initArray(int[][] arrayA) {
        for(int i = 0;i < arrayA.length;i++)
            arrayA[i] = new int[arrayA.length - i];
    }
    
    public void dfs(int[][] arrayA, int row, int num) {
        if(row >= arrayA.length / 2)
            return;
        //填充上方第一行
        for(int i = row;i < arrayA[row].length - row;i++)
            arrayA[row][i] 
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值