码迷,mamicode.com
首页 > 其他好文 > 详细

螺旋矩阵(逆时针)

时间:2019-04-18 20:20:49      阅读:489      评论:0      收藏:0      [点我收藏+]

标签:can   输入   规模   ext   color   ann   print   创建   pack   

输入:N的值为:4

输入:  

1  12  11 10

2  13 16    9  

3  14 15    8 

4  5  6  7

分析:找出每一圈的规律,假设每一条边有k个元素,则第i圈的边上的元素为,将矩阵的每一圈分成两个半圈,则每一个半圈的元素为2k-1,前一个半圈的角标依次递加,后一个半圈的角标依次递减。

 1 package pack;
 2 import java.util.*;
 3 
 4 public class demo_1 {
 5     public static void main(String[] args) {
 6     Scanner in=new Scanner(System.in);//创建一个可以从键盘输入的类 in;
 7     int a[][] = new int [100][100];
 8     int n,k,x,t=1;//n代表矩阵的规模,x代表填入数据
 9     System.out.print("请输入N的值:");
10     n=in.nextInt();//n从键盘输入
11     k=n;
12     t=1;
13     x=1;
14     int i=0,j=0;
15     while(x<=n*n) {
16         for(int y=0;y<2*k-1;y++) {//由于矩阵的规模是n*n,并且k=n,为一条边上元素的个数,半圈为2k-1个元素
17             if(y<k) i+=t;
18             else j+=t;
19             a[i][j]=x;
20             x++;
21         }
22         t=-t;
23         k--;
24     }
25     for(int r=1;r<=n;r++) {
26         for(int s=0;s<n;s++)
27             System.out.print(a[r][s]+" ");
28         System.out.println();
29     }
30 
31 }
32 }

 

螺旋矩阵(逆时针)

标签:can   输入   规模   ext   color   ann   print   创建   pack   

原文地址:https://www.cnblogs.com/qq396986862/p/10731823.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!