Informatika gyűjtemény

Egy szinttel feljebb ep_elfogo.java

2004050607080910

NézetNyomtat

ep_elfogo.java (Vissza)
Az alábbi letöltési lehetőségek közül választhatsz: (segítség)
Karakterkódolás:
Sortörés:
Típus: text/plain
Tartalmaz szöveget
Karakterkódolás: utf-8
Méret: 1 KB
import java.io.*;

public class Elfogo {
    private int N;
    private int E;
    private int[][] matrix;
    private int[] szurke;
    
    
    Elfogo(String inpF){
    try{
        StreamTokenizer st =
        new StreamTokenizer(new FileReader("Teszt/elfogo.be"+inpF));   
        
        st.nextToken();
        N = (int)st.nval;
        
        st.nextToken();
        E = (int)st.nval;
        
        
        matrix = new int[+ 1][+ 1];
        szurke = new int[+ 1];
        
        for(int i = 1; i <= N; i++){
        szurke[i] = 0;
        for(int j = 1; j <= N; j++){
            matrix[i][j] = 0;
        }
        }
        
        for(int i = 1; i <= E; i++){
        st.nextToken();
        int from = (int)st.nval;
        st.nextToken();
        int to = (int)st.nval;
            
        matrix[from][to] = 1;
        matrix[to][from] = 1;
        }

    } catch (Exception e){
        System.out.println("File olvasási hiba!");
    }
    }

    public void bejar(int i){
    System.out.print(i+" ");
    szurke[i] = 1;
    for(int sz= 1; sz <= N; sz++){
        if( matrix[i][sz]==1 && szurke[sz] != 1 && matrix[sz][i] == 1){
        matrix[i][sz] = 0;
        bejar(sz);
        System.out.print(i+" ");
        }
    }
    szurke[i] = 0;
    
    }

    public void solve(){
    bejar(1);   
    System.out.println();
    }

        
    public static void main(String arg[]){
    Elfogo myE = new Elfogo(arg[0]);
    
    System.out.println("A lépésszám: " + (2 * myE.+ 1));
    System.out.println("A bejárási sorozat: ");
    myE.solve();
    
    }
}
(Vissza)