給定乙個由不同的小寫字母組成的字串,輸出這個字串的所有全排列。 我們假設對於小寫字母有'a' < 'b' < ... < 'y' < 'z',而且給定的字串中的字母已經按照從小到大的順序排列。
輸入只有一行,是乙個由不同的小寫字母組成的字串,已知字串的長度在1到6之間。
輸出這個字串的所有排列方式,每行乙個排列。要求字母序比較小的排列在前面。字母序如下定義:示例1已知s = s1s2...sk , t = t1t2...tk,則s < t 等價於,存在p (1 <= p <= k),使得
s1 = t1, s2 = t2, ..., sp - 1 = tp - 1, sp < tp成立。
每組樣例輸出結束後要再輸出乙個回車。
abc
abcacbbac
bcacab
cba
思路:非常經典的dfs題目,需要理解遞迴的過程,合理的利用回溯即可。我覺得這屬於基本功題。
#include using namespace std;
vectorans;
mapmp;
bool bit[10];
int n;
void dfs(int k,string tmp)
for(int i=0;i>s;
ans.clear();
mp.clear();
//sort(vec.begin(),vec.end());
for(int i=0;in= s.size();
for(int i=0;isort(ans.begin(),ans.end());
for(auto t:ans)
cout
}
leetcode刷題 全排列
給定乙個不含重複數字的陣列 nums 返回其 所有可能的全排列 你可以 按任意順序 返回答案。輸入 nums 1,2,3 輸出 1,2,3 1,3,2 2,1,3 2,3,1 3,1,2 3,2,1 這個問題可以看作有 n 個排列成一行的空格,我們需要從左往右依此填入題目給定的 n 個數,每個數只能...
計算機歷年考研複試上機題 成績排序
這道題他的題目描述有一點模糊,他的測試用例上面在對於相同的值排序應該排序前後順序不變。這時我們就要用到c sort類函式stable sort 題目描述 題目 輸入任意 使用者,成績 序列,可以獲得成績從高到低或從低到高的排列,相同成績 都按先錄入排列在前的規則處理。例示 jack 70 peter...
計算機歷年考研複試上機題 反序輸出
偶遇清華大學的一道水題 題目傳送門 題目描述 輸入任意4個字元 如 abcd 並按反序輸出 如 dcba 輸入描述 題目可能包含多組用例,每組用例佔一行,包含4個任意的字元。輸出描述 對於每組輸入,請輸出一行反序後的字串。具體可見樣例。示例1 輸入 upin cvyj wjpw cxoa 輸出 ni...