absneighbormanager.java

来自「用于求解TSP(Traveling salesman problem」· Java 代码 · 共 53 行

JAVA
53
字号
/**
 * Description: provide the information for the Neighbor nodes
 *
 * @ Author        Create/Modi     Note
 * Xiaofeng Xie    May 22, 2005    abstract neighborhood manager
 * Xiaofeng Xie    Apr 28, 2006    MAOS-TSP Beta 1.1.002
 *
 */

package maosKernel.knowledge;

import Global.basic.data.matrix.*;
import Global.methods.*;
import maosKernel.represent.space.*;

public abstract class AbsNeighborManager extends AbsIMatrix implements INeighborEngine {

  public int[] getArrayAt(int index) {
    return getNNArrayAt(index);
  }

  public boolean isCoveredEdge(int startID, int endID) {
    if (isConnectedAt(startID, endID)) {
      return true;
    }
    if (isConnectedAt(endID, startID)) {
      return true;
    }
    return false;
  }

  public boolean isConnectedAt(int nodeID, int connectID) {
    int[] nnArray = this.getNNArrayAt(nodeID);
    int index = BasicArray.getExactIndex(nnArray, connectID, 0, this.getElementNumberAt(nodeID));
    return (index != -1);
  }

  public int getCoverNumber(AISearchState point) {
    int number = 0;
    for(int i=0; i<point.getNodeNumber(); i++) {
      if (isCoveredEdge(point.getValueAt(i), point.getPostValue(i))) {
        number ++;
      }
    }
    return number;
  }

  public String getSummary() {
    return this.getClass().getName();
  }
}

⌨️ 快捷键说明

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