zoukankan      html  css  js  c++  java
  • 螺旋矩阵(逆时针)

    输入: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 }
  • 相关阅读:
    cmd常用指令
    python笔记01-05
    python安装过程中的一些问题
    初始化spring容器的一种方式
    切入点范式
    spring的list注入多个值
    Statement和PreparedStatement有什么区别?哪个效率高?
    sql 的四种隔离级别
    简单的spring核心配置文件编写
    spring
  • 原文地址:https://www.cnblogs.com/qq396986862/p/10731823.html
Copyright © 2011-2022 走看看