題目描述:給定一個數列a1,a2,a3…an,輸出他所有的全排列。 算法設計描述: 1、獲取當前的一種排列,用start,end分別表示該排列的列頭,列尾; 2、判斷start是否和end相等,若相等,執行3,否則執行4; 3、將當前排列和已出現過的排列進行比較,判斷當前排列是否已經出現過,若出現過,將其忽略,否則將其進行存儲; 4、從j=start開始到end結束,對排列中的每一個字符和a[start]進行比較,若a[j]==a[start]&&j!=start,跳過,否則,交換當前排列中位于start和j處的字符,再將start=start+1,并跳轉到1,再將位于j和start處的字符交換回來; 5、輸出全部的排列。
面試官問的面試題: 對工資有啥要求,能不能適應加班,行不行從頭學起