是否有可能创建一个将字母显示为边缘而不是数字的邻接矩阵。例如,加权图。
. a b c d e f
a 0 1 0 0 0 0
b 0 0 0 4 0 0
c 0 0 1 0 0 0
d 0 0 0 3 0 0
e 0 2 0 0 0 0
f 0 0 0 0 0 0
在完成此类任务时,我已经尝试了所有方法来测试我的理论,例如
int let = 0;
String str = "a b c d e f";
char[] list = new char[str.length()];
for(int i = 0; i < list.length; i++)
{
list[i] = str.charAt(i);
}
//To create the char array with letters used for the matrix
System.out.println();
for(int i = 0; i < list.length; i++)
{
System.out.printf("%-3d", list[i]);
}
System.out.println();
for(int i = 0; i < list.length; i++)
{
System.out.printf("%-3d", list[i]);
for(int x = 0; x < list.length; x++)
{
System.out.printf("%-3d", let);
}
System.out.println();
}
我只是收到一堆关于打印格式和转换等的错误。(目前没有打开日食)
如果我将 (list[i]) 替换为 (i+1) 以获得数字 1-6,它的效果非常好,但对于字母则没有。甚至有可能完成这项任务吗?如果不可能,如何创建一个带有字母边缘的加权矩阵。
这个问题对你们大多数人来说可能并不具有挑战性,但是作为一个初学java程序员,我很好奇学习,即使我不得不谦虚。没有其他学习方法。