内螺旋矩阵算法

  • T3_284850
    了解作者
  • 3.3KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-05-23 05:43
    上传日期
以面向对象的思想及普通算法各写了这个算法,有源代码,可以比较两种方法的区别。这样更容易了解JAVA面向对象思想的优点与便捷。
内螺旋矩阵算法-面向对象思想.rar
  • 面向对象思想
  • Action.java
    1.2KB
  • Position.java
    757B
  • Test.java
    482B
  • Obj.java
    1.3KB
  • Map.java
    925B
  • MatrixDemo.java
    1.2KB
内容介绍
package com.rosa.day03; /** * 在运行的对象类 * * @project date_String * @author 羅沙 * @date 2012-5-14 * @version 1.0 * @copyright: 2012 www.ls.com . All rights reserved. */ public class Obj { private static int count = 0; Map map = null; Action action = new Action(); public Obj(Map map) { this.map = map; } public int[][] run(Position position, int colSize, int rowSize) { while (count < colSize * rowSize-1 ) { // 如果可以向右走 while (action.isForward(position, map)) { map.matrix[position.row][position.col] = count + 1; action.forward(position); count++; } // 如果可以向下走 while (action.isDown(position, map)) { map.matrix[position.row][position.col] = count + 1; action.down(position); count++; } // 如果可以向左走 while (action.isBack(position, map)) { map.matrix[position.row][position.col] = count + 1; action.back(position); count++; } // 如果可以向上走 while (action.isUp(position, map)) { map.matrix[position.row][position.col] = count + 1; action.up(position); count++; } } // 因为count是累加的,最后一次超值,要单独给值 map.matrix[position.row][position.col] = count + 1; return map.matrix; } }
评论
    相关推荐