我的图表的实现是以下哈希表:
public class DiGraphHash{
private int numNodos, numArcos;
private TheList<Nodo> nodos[];
private TheList<Arco> arcos[];
private TheList<Arco> preds[];
}
TheList,是我自己制作的列表。
对于 Dijkstra 的算法,我需要映射每个节点的成本和到达该节点的路径。我有以下两个数组:
int[] cost = new cost[num_nodes];
Nodo[] path = new Nodo[num_nodes];
另一个重要的细节是,我的节点将是字母 A、B、C、D。
因此,当我映射节点时,例如,假设我必须将成本分配给节点 A,我如何找到数组中的位置?
我正在考虑使用 hashcode % array.length 但我不确定是否会发生冲突(考虑到它只有 1 个字符字母)
我不是在问代码,而是需要这个想法。