第五周作业

来源:互联网 发布:音响软件 编辑:程序博客网 时间:2024/06/01 09:14
package program;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
public class GraphReverse {
public static void main(String[] args) {
// TODO 自动生成的方法存根
File file = new File("tinyDG.txt");
int V;
int E;
int v[];
int g[][];
int h[][];
int tempchar;
String str = "";
try {
FileReader in = new FileReader(file);
BufferedReader bufr = new BufferedReader(in);
str = bufr.readLine();
V = Integer.parseInt(str);
v = new int[V];
for(int i = 0; i < V; i++){
v[i]=i;
}
str = bufr.readLine();
E = Integer.parseInt(str);
g = new int[V][V];
h = new int[V][V];
str = "";
int a = 0;
int b = 0;
while ((tempchar = bufr.read()) != -1) {
str = str + (char) tempchar;
if ((char) tempchar == ' ') {
a = Integer.parseInt(str.trim());
str = "";
}
if ((char) tempchar == '\n') {
b = Integer.parseInt(str.trim());
g[a][b] = 1;
h[b][a] = 1;
str = "";
}
}
System.out.println("有向图邻接表:");
for (int i = 0; i < V; i++) {
System.out.print(v[i]+":");
for (int j = 0; j < V; j++) {
if (g[i][j] !=0) {
System.out.print(j+" ");
}
}
System.out.println("");
}
System.out.println("");
System.out.println("反向图邻接表:");
for (int i = 0; i < V; i++) {
System.out.print(v[i]+":");
for (int j = 0; j < V; j++) {
if (h[i][j] !=0) {
System.out.print(j+" ");
}
}
System.out.println("");
}
bufr.close();
in.close();
}
catch(Exception e) {
e.printStackTrace();
}
}
}
0 0
原创粉丝点击