矩阵分析:把回旋矩阵看作多个空心的矩阵,如图:
注:五阶矩阵示意:
然后找到每个空心矩阵和它上下左右的for循环关系即可,如图:
注:六阶矩阵示意:
其中重要的一点是:将矩阵的上下和左右对称分析,这样确保自己不会再分析的过程中,头晕眼花,相关代码如下:
package proj18.回旋矩阵;
import javax.swing.JOptionPane;
public class main {
public static void main(String[] args) {
String str=JOptionPane.showInputDialog("你想要几阶回旋矩阵:");
int n=Integer.parseInt(str);
int[][] a= new int [100][100];
int i,j,num=0;
for(int m=0;m<n/2;m++) {//n阶矩阵,意味着从外至内一共有