第四周作业,图的表示
2014-04-10 22:59
232 查看
package test; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FileReader; import java.io.IOException; import java.io.OutputStreamWriter; public class test { public static void main(String[] args) { try { FileReader in = new FileReader("e:\\tinyG.txt"); BufferedReader bl = new BufferedReader(in); int tempchar; String str = ""; str = bl.readLine(); int x = Integer.parseInt(str); str = bl.readLine(); int E = Integer.parseInt(str); int[][] g = new int[x][x]; str = ""; int a = 0, b = 0; while ((tempchar = bl.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; g[b][a] = 1; str = ""; } } bl.close(); in.close(); FileOutputStream fos = new FileOutputStream("e:\\tinyG_matrix.txt"); OutputStreamWriter osw = new OutputStreamWriter(fos, "gb2312"); BufferedWriter bw = new BufferedWriter(osw); str=""; System.out.println("得 到 图 的 邻 接 矩 阵 为 : "); for (int i = 0; i < x; i++) { for (int j = 0; j < x; j++) { System.out.print(g[i][j]+" "); str=str+Integer.toString(g[i][j]); if(j==12){ System.out.println(); bw.write(str); bw.newLine(); str=""; } } } bw.close(); osw.close(); } catch (NumberFormatException e) { e.printStackTrace(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
结果:
tinyG_matrix.txt 显示结果: