当前位置: 首页 > news >正文

回型矩阵:JAVA

解题思路:

通过定义四条边界;top,left,right,bottom,来循环,当top>=bottom&&left>=right的时候循环终止

38371184b7d1420f9b63f1bbfd51538b.png

c31f7a29b82b497687d17e7dd5e64a1c.png

循环结束的条件:

9bc08395c4ba4e879477c34ab69bc52e.png

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
 

题目描述

给你一个整数n,按要求输出n∗n的回型矩阵

输入描述:

输入一行,包含一个整数n1<=n<=19

输出描述:

输出n行,每行包含n个正整数.

示例1

输入

4

输出

1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7

代码:

package cs2;import java.util.Scanner;public class T12 {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);int n=scanner.nextInt();int [][]arr=new int[n][n];int left=0;int right=n-1;int top=0;int bottom=n-1;int sum=1;while (left<=right&&top<=bottom){//从左到右//这个循环写的是top边界,它要不断的往下去循环,所以这里数组的行是top,里面的值是列//列是可变的所以列++,当时top的值是0,所以要给top赋值让它一只往下加//当top的值大于bottom的时候跳出while循环遍历数组所有元素输出;for (int i = left; i <=right ; i++) {arr[top][i]=sum++;}top++;//从上往下for (int i = top; i <=bottom ; i++) {arr[i][right]=sum++;}right--;for (int i =right; i >=left ; i--) {arr[bottom][i]=sum++;}bottom--;for (int i =bottom; i >=top ; i--) {arr[i][left]=sum++;}left++;}for (int i = 0; i <n ; i++) {for (int j = 0; j <n ; j++) {System.out.print(arr[i][j]+" ");}System.out.println();}}
}

 

 

http://www.lryc.cn/news/506093.html

相关文章:

  • 从零开始学习 sg200x 多核开发之 sophpi 编译生成 fip.bin 流程梳理
  • python--在服务器上面创建conda环境
  • day15 python(3)——python基础(完结!!)
  • /:087启动游戏时提示丢失”d3dx···.dll””VCOMP···.dll”
  • 利用PHP和phpSpider进行图片爬取及下载
  • 企业架构划分探讨:业务架构与IT架构的利与弊
  • Java设计模式 —— 【结构型模式】桥接模式详解
  • MySQL学习之DDL操作
  • 游戏AI实现-寻路算法(A*)
  • spring学习(spring的IoC思想、spring容器、spring配置文件、依赖注入(DI)、BeanProxy机制(AOP))
  • 谁说C比C++快?
  • GEE+本地XGboot分类
  • OpenCV相机标定与3D重建(24)计算两个二维点集之间的最佳仿射变换矩阵(2x3)函数estimateAffine2D()的使用
  • UIP协议栈 TCP通信客户端 服务端,UDP单播 广播通信 example
  • 【NoSQL系列】为什么要使用Redis?
  • MySQL Explain 分析SQL语句性能
  • IIS部署程序https是访问出现403或ERR_HTTP2_PROTOCOL_ERROR
  • 学技术学英文:代码中的锁:悲观锁和乐观锁
  • 青少年编程与数学 02-004 Go语言Web编程 02课题、依赖管理
  • MyBatis写法汇总
  • 【Linux学习】十五、Linux/CentOS 7 用户和组管理
  • 三维无人机航迹算法的目标函数如何确定
  • uniapp v-tabs修改了几项功能,根据自己需求自己改
  • 用vscode,进行vue开发
  • Kafka 磁道寻址过程详解
  • 基于Spring Boot的社区药房系统
  • 005 QT常用控件Qwidget_上
  • 机器学习之交叉熵
  • 数据结构 ——前缀树查词典的实现
  • MySQL 主从复制与高可用架构