龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

JAVA 树中 按最长路径行驶

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
private Vector findRoad(int posX,int posY,int dir){ Vector roadUPVec=null,roadRIGHTVec=null,roadDOWNVec=null,roadLEFTVec=null; boolean tempUP=false,tempRIGHT=false,tempLEFT=false,tempDOWN=false; int upNum=0,downNum=0,rightNum=0,leftNum=0,ma

 private Vector findRoad(int posX,int posY,int dir){
          Vector roadUPVec=null,roadRIGHTVec=null,roadDOWNVec=null,roadLEFTVec=null;
          boolean tempUP=false,tempRIGHT=false,tempLEFT=false,tempDOWN=false;
          int upNum=0,downNum=0,rightNum=0,leftNum=0,maxNum=0;
         
          if(posY>0 && m_nowMap[posX][posY-1]!=0 && dir!=DIR_UP){
              roadUPVec=new Vector();
              roadUPVec.addElement(new Integer(posX));
              roadUPVec.addElement(new Integer(posY-1));
              Vector tempVec=findRoad(posX,posY-1,DIR_DOWN);
              if(tempVec!=null){
                  for(int i=0;i<tempVec.size();i++)
                      roadUPVec.addElement(tempVec.elementAt(i));
              }
          }
          else
              tempUP=false;
          if(posX<COLUMN-1 && m_nowMap[posX+1][posY]!=0 && dir!=DIR_RIGHT){
              roadRIGHTVec=new Vector();
              roadRIGHTVec.addElement(new Integer(posX+1));
              roadRIGHTVec.addElement(new Integer(posY));
              Vector tempVec=findRoad(posX+1,posY,DIR_LEFT);
              if(tempVec!=null){
                  for(int i=0;i<tempVec.size();i++)
                      roadRIGHTVec.addElement(tempVec.elementAt(i));
              }
          }
          else
              tempRIGHT=false;
          if(posY<ROW && m_nowMap[posX][posY+1]!=0 && dir!=DIR_DOWN){
              roadDOWNVec=new Vector();
  
  

精彩图集

赞助商链接