我必须写一个找到最短距离的程序。我很难弄清楚存储数据的最佳方式是什么。我有一个关于以下城市的有向图:旧金山,休斯顿,查尔斯顿,新奥尔良,巴吞鲁日,丹佛,匹兹堡,孟菲斯,拉斯维加斯,西雅图。下面列出了城市及其边缘和与城市的距离。所以从哥伦布到迈阿密有61英里。关于如何存储它有什么建议吗?
哥伦布->迈阿密:61,查尔斯顿:408,拉斯维加斯:689
迈阿密->旧金山:34,哥伦布:61
旧金山->迈阿密,休斯顿:485
休斯顿->旧金山,孟菲斯:63,丹佛:83
查尔斯顿->匹兹堡:36,孟菲斯:86,西雅图:933,哥伦布
发布于 2020-10-27 11:36:38
你有没有想过做一个二维数组?把所有的名字放在第一行和第一列,比如说String distance[8][8];,然后就像是一个乘法表,你可以手动输入距离的值。在那之后,如果你想知道哥伦布和迈阿密之间的距离,你只需要写:System.out.println(distance[Columbus][Miami]);
然而,这是一个非常基本的方法来存储它,所以如果你找到了一个更全面的方法,比如创建一个Cities类,我建议你遵循它。作为这方面的一个小示例,您可以创建
Public Class Cities() {
public String CityName;
public int distance; }然后手动制作几个城市对象,以及设置它们到不同城市的距离。然后,如果您想要找到从一个城市到另一个城市的距离,您可以使用自定义方法打印出各个城市的距离变量。
https://stackoverflow.com/questions/64547822
复制相似问题