⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 link.java

📁 寻找最短路径A_算法的实现
💻 JAVA
字号:
/* * Link.java * * Created on 2004年9月24日, 下午8:45 *//** * * @author  xhuad */import java.util.Vector;public class Link {    private Vector link = new Vector();   // private Link next = null;    public Link() {            }        public boolean addNode(Node setNode){//增加一个节点        setNode = checkNode(setNode);        if(setNode != null){                             this.link.addElement((Node)setNode);                        return true;        }        return false;    }        public void delNode(Node setNode){ //删除一个节点                if(!this.link.isEmpty()){                                     for(int i=0;i < this.link.size(); i++)            {                if(setNode.getPos() == ((Node)this.link.elementAt(i)).getPos()){                    this.link.remove(i);                    //System.out.println("asdfasdfas:"+this.link.size());                    break;                }            }                                }    }             public Node checkNode(Node setNode){//判断节点是否在链表里面并取得两者的最佳值        if(!this.link.isEmpty() && setNode!=null){                                     for(int i=0;i < this.link.size(); i++)            {                if(setNode.getPos() == ((Node)this.link.elementAt(i)).getPos()){                    if(setNode.getStep() < ((Node)this.link.elementAt(i)).getStep()){                        setNode = (Node)this.link.elementAt(i);                        this.link.remove(i);                    }                    else                        return null;                    break;                }                            }                                }        return setNode;            }        public boolean isEmpty(){        return this.link.isEmpty();    }        public Node getBestNode(){ //得到最好的节点        Node tmpNode = null;        if(!this.link.isEmpty()){            tmpNode = (Node)this.link.elementAt(0);                          //System.out.println("tmpNodeStep:"+tmpNode.getStep());            //System.out.print("OpenNode(pos,step):");            for(int i=1;i < this.link.size(); i++)            {                //System.out.print("("+((Node)this.link.elementAt(i)).getPos()+","+((Node)this.link.elementAt(i)).getStep()+")");                if(tmpNode.getJudgeNum() >= ((Node)this.link.elementAt(i)).getJudgeNum()){                    tmpNode = (Node)this.link.elementAt(i);                                          }                            }                       }        return tmpNode;    }        }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -