栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java螺旋数组

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java螺旋数组

1. (程序设计题)

对于一个 n 行 m 列的表格,我们可以使用螺旋的方式给表格依次填上正整数,我们称填好的表格为一个螺旋矩阵。例如,一个 4 行 5 列的螺旋矩阵如下:

  1   2   3   4   5

  14 15 16 17  6

  13 20 19 18  7

  12 11 10 9    8

要求编程实现:输入两个整数M和N,输出一个M*N的螺旋矩阵。

import java.util.Scanner;
class temp
{
	public static void main(String[] args) 
	{
	
		int i=0,j=0;

		System.out.print("请输入M和N : ");

		Scanner sc=new Scanner(System.in);

		int M=sc.nextInt();

		//sc.close();

		Scanner sd=new Scanner(System.in);

		int N=sd.nextInt();

		//sd.close();

		int[][] a=new int[100][100];

		for(int k=1;k<=N*M;k++){

			a[i][j]=k;

			if((j0)&&(a[i][j-1]==0)){

				j--;

			}

			else {

			while(a[i-1][j]==0){

				i--;

				k++;

				a[i][j]=k;

				//System.out.println("i:"+i+"t"+"j:"+j+"t"+"k:"+k+"t"+"a[i][j]:"+a[i][j]+"t");

			}

			j++;

			}

			}

		for(int p=0;p 

2. (程序设计题)  

 

import java.util.Scanner;

class temp

{

	public static void main(String[] args) 

	{

	int[][] a=new int[100][100];

	boolean[][] flag=new boolean[100][100];

	int i=0,j=0;

	System.out.print("请输入M和N : ");

	Scanner sc=new Scanner(System.in);

	int M=sc.nextInt();

	Scanner sd=new Scanner(System.in);

	int N=sd.nextInt();

	int val=1;

	for(int p=0;p0)&&(flag[i][j-1])){

			j--;

		}

		else {

		while(flag[i-1][j]){

			i--;

			k++;

			System.out.print(a[i][j]+" ");

			flag[i][j]=false;

//System.out.println("i:"+i+"t"+"j:"+j+"t"+"k:"+k+"t"+"a[i][j]:"+a[i][j]+"t");

		}

		j++;

		}

	}

	}


}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/396540.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号