package com.person.appframework.test;
import java.util.Stack;
/**
* 图寻路算法
* 深度回溯
* @author wuwhe
*
*/
public class GraphPath {
private int[][] block;
/** 高度 */
private int maxHeight;
/** 宽度 */
private int maxWidth;
/** 结束x坐标 */
private int targetx = 9;
/** 结束y坐标 */
private int targety = 9;
/** 回溯节点需要的路径 */
private Stack stack = new Stack();
/** 开始坐标 */
private int startx;
/** 结束时间 */
private int starty;
/** 状态保存 */
private NodeInfo[][] table=null;
private boolean isCompelet = true;
private boolean result = false;
GraphPath(int[][] grapdata) {
this.block = grapdata;
this.maxHeight = block.length;
this.maxWidth = block[0].length;
table = new NodeInfo[maxHeight][maxWidth];
// initTable();
}
/**
* 初始化路径的表格
*/
public void initTable() {
for (int i = 0; i < maxHeight; i++)
for (int j = 0; j < maxWidth; j++) {
NodeInfo node = new NodeInfo();
node.tagx = i;
node.tagy = j;
table[i