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 ();}}}
第五周作业
最新推荐文章于 2024-11-16 21:36:47 发布