`
我是小仙321
  • 浏览: 12994 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

螺旋队列的java实现

    博客分类:
  • Java
阅读更多
import java.util.Scanner;

public class Luoxuan {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		while(true){
		Scanner sc1=new Scanner(System.in);
		System.out.println("请输入x坐标:");
		int a=sc1.nextInt();
		System.out.println("请输入y坐标:");
		int b=sc1.nextInt();
		System.out.printf("坐标(%d,%d)上的数是:",a,b);
		System.out.println(new Luoxuan().getVal(a,b));
		}

	}
	private int getVal(int a,int b){
		//定位点(a,b)在第几圈,默认原点为第0圈,向外扩散
		int n=Math.max(Math.abs(a), Math.abs(b));
		//如果(a,b)为原点,返回1
		if(n==0) return 1;
		int retval;
		//求出坐标(n,n)点上的数
		int val=(int) Math.pow((2*n+1), 2)-n*6;
		//求出(a,b)与(n,n)点的位置关系
		int i=n-a,j=n-b;
		 //将正方形分为上下左右4条边,需要注意对圈上的所有点不重不漏
		//(a,b)在右边
			if(i==0){
				//如果是右上角的点
				if(j==2*n) retval=val+6*n;
				else retval=val-j;
		}   //(a,b)在下边
			else if(j==0){
				retval=val+i;
			}//(a,b)在左边
			else if(i==2*n){
				retval=val+2*n+j;
			}//(a,b)在上边
			else retval=val+6*n-i;
		
		return retval;
		
	}

}

 

0
6
分享到:
评论

相关推荐

    【Linux】关于螺旋队列算法的精讲

    本文主要对螺旋队列算法图文结合的进行了讲解。

    JAVA实现螺旋矩阵

    用JAVA实现螺旋矩阵的编写,这是一种比较容易让人接受的方法

    螺旋数组的java实现----------------------------------------

    螺旋数组的java实现-----------------------------------------------------------------------------------------------------------

    java螺旋数组代码

    java螺旋数组源码java螺旋数组源码java螺旋数组源码

    Java实现n阶螺旋方阵

    Java实现n阶螺旋方阵,键盘输入阶值。。。。。。

    阿基米德螺旋线java小实验

    阿基米德螺旋线实验 简单java做的 import java.awt.Canvas; import java.awt.Color; import java.awt.Dimension; import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event....

    java实现螺旋数据

    从键盘输入一个整数(1~20) 则以该数字为矩阵的大小,把1,2,3…n*n 的数字按照顺时针螺旋的形式填入其中

    Java:编程实现螺旋方阵

    编程输出螺旋方阵: 螺旋方阵是指将从1开始的自然数由方阵的最外圈向内螺旋方式地顺序排列。如4阶的螺旋方阵形式如下: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 要求:1)从键盘输入螺旋方阵的阶数 2)代码有...

    螺旋矩阵 java

    java编写的螺旋举证的程序,用了几个方向变量来控制遍历复制的方向

    C 语言写的螺旋队列

    螺旋队列是一个很有意思的数字排列: 如: 73 74 75 76 77 78 79 80 81 72 43 44 45 46 47 48 49 50 71 42 21 22 23 24 25 26 51 70 41 20 7 8 9 10 27 52 69 40 19 6 1 2 11 28 53 68 39 18 5 4 3 12 29 54 ...

    Java:编程实现螺旋矩阵

    编程输出螺旋方阵. 螺旋方阵是指将从1开始的自然数由方阵的最外圈向内螺旋方式地顺序排列。如4阶的螺旋方阵形式如下: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 要求:从键盘输入螺旋方阵的阶数

    Java:螺旋矩阵

    编程输出螺旋方阵. 螺旋方阵是指将从1开始的自然数由方阵的最外圈向内螺旋方式地顺序排列。如4阶的螺旋方阵形式如下: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 要求:从键盘输入螺旋方阵的阶数

    螺旋矩阵 java 初学者可看懂

    螺旋矩阵 java 初学者可看懂 。。。。。。。。

    螺旋数组 java下载

    java螺旋数组有关Java面向对象编程指南 Java面向对象编程指南

    java 画阿基米德螺旋线

    java 画阿基米德螺旋线

    java输出螺旋方阵

    编程输出螺旋方阵. 螺旋方阵是指将从1开始的自然数由方阵的最外圈向内螺旋方式地顺序排列。如4阶的螺旋方阵形式如下: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 要求:1)从键盘输入螺旋方阵的阶数

    用二维数组打印螺旋方阵 JAVA入门之数组

    这是一个JAVA中关于二维数组的拔高题。

    使用C++,关于螺旋队列问题

    看清以下数字排列的规律,设1点的坐标是(0,0),x方向向右为正,y方向向下为正。例如,7的坐标为(-1,-1),2的坐标为(0,1),3的坐标为(1,1)。编程实现输入任意一点坐标(x,y),输出所对应的数字。

    Java实现螺旋矩阵的示例

    主要介绍了Java实现螺旋矩阵的示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    java笔试面试题汇总 基础版 最新 最全

    java笔试面试题汇总 基础版 最新 最全

Global site tag (gtag.js) - Google Analytics