这涉及到图的存储表示问题,
假如图中每个节点只能有不超过n条边,
那么对应的结构体至少应该含有n个指向该类型节点的指针,
这时可以通过遍历此图获得距离和路径信息。
路径数组(2维):
若有n个节点,数组可定义为int a[n][n],
若第i个节点跟第j个节点连同,则执行a[i][j]=1;否则a[i][j]=0。
距离数组(2维):
同理,定义为b[n][n],对第i个节点跟第j个节点,
若a[i][j]=1,表示两点相连,那么b[i][j]赋以正确的距离(值记录在节点信息中或者已知),
否则,令b[i][j]=100000,“100000”表示无穷的近似值。
希望对楼主有帮助。 |