java内存超出问题
查看原帖
java内存超出问题
956117
Xhd123456楼主2024/3/2 17:45
import java.util.Scanner;

public class Main {
    static int n;
    static int []arr=new int[10];
    static boolean[]visit=new boolean[10];
    public static void dfs(int num){
        if(num==n){
            for(int i=0;i<n;i++){
                System.out.print("    "+arr[i]);
                //System.out.printf("%5d",arr[i]);
            }
            System.out.println();
        }
        for(int i=1;i<=n;i++){
            if(!visit[i]){
                visit[i]=true;
                arr[num]=i;
                dfs(num+1);
                visit[i]=false;
            }
        }
    }
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        n=sc.nextInt();
        dfs(0);
    }
}

System.out.print(" "+arr[i]); //System.out.printf("%5d",arr[i]);

为什么加上%5d反而会在当输入为8时显示超出内存呢?求大佬解惑。谢谢。

2024/3/2 17:45
加载中...