java求助
查看原帖
java求助
520952
mingxxx9楼主2022/2/17 18:47

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;
import java.util.*;
import java.util.logging.XMLFormatter;

public class Main {
    static  int n,m,ans;
     static LinkedList<Integer>[] list =new  LinkedList[1000010];
     static int[] mark =new int[1000010];
     static void dfs (int x,int cur){
        System.out.print(x+" ");
        cur++;
        if (cur!=n) {
            for (int i = 0; i < list[x].size(); i++) {
                if (mark[list[x].get(i)] == 0) {
                    mark[list[x].get(i)] = 1;
                    dfs(list[x].get(i),cur);
                }
            }
        }
     }

    public static void main(String[] args) throws IOException {
        StreamTokenizer in =new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
        in.nextToken();n=(int)in.nval;in.nextToken();m=(int)in.nval;
        for (int i=1;i<=n;i++) list[i] =new LinkedList<Integer>();
        int x,y;
        for (int i=1;i<=m;i++){
            in.nextToken();x=(int)in.nval;in.nextToken();y=(int)in.nval;
            list[x].add(y);
        }
        for (int i=1;i<=n;i++) {
            Collections.sort(list[i]);
        }
        mark[1]=1;
        dfs(1,0);
        System.out.println();
        mark= new int[1000010];
            Queue<Integer> queue =new LinkedList<Integer>();
            mark[1]=1;
            queue.add(1);
            int now=0;
            while (!queue.isEmpty()){
                now=queue.peek();
                queue.poll();
                System.out.print(now+" ");
                for (int i=0;i<list[now].size();i++){
                    if (mark[list[now].get(i)]==0){
                        mark[list[now].get(i)]=1;
                        queue.add(list[now].get(i));
                    }
                }
            }




    }}
```java求助,后四个点一直RE
2022/2/17 18:47
加载中...