使用dfs求解全排列


//借助兩個數組,使用dfs輸出全排列
import
java.util.Arrays; public class FullPermutation { private static int [] result;//存放全排列的結果 private static boolean [] visit;//定義一個標記數組 private static int total; //全排列的長度 private static void dfs(int count){ if(count==total){ System.out.println(Arrays.toString(result)); //return; } for(int i=0;i<total;i++){ if(visit[i]){ visit[i] = false; result[count] = i; dfs(count+1); visit[i] = true; } } } public static void main(String[] args) { total = 3;//以長度為5舉例 result = new int[total]; visit = new boolean[total]; Arrays.fill(visit,true); dfs(0); } }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM