您的位置:首页 > 其它

第四周作业——图的表示

2014-04-03 23:36 483 查看
代码:

package 邻接链表;  

  

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 GraphRepresentation {  

  

    public static void main(String[] args) {  

        try {  

            FileReader in = new FileReader("F:\\tinyG.txt");  

            BufferedReader bl = new BufferedReader(in);  

            int tempchar
1226b
;  

            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("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中,如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: