閱讀827 返回首頁    go 阿裏雲 go 技術社區[雲棲]


生成字符串的全排列

 

void permute(string s) { sort(s.begin(),s.end()); cout<<s<<endl; while(next_permutation(s.begin(),s.end())) cout<<s<<endl; } 

 

上麵的是標準庫的迭代版本。

下麵的是遞歸版本

void permute(string s,unsigned k) { if (k == s.length()-1) { cout<<s<<endl; } for (unsigned i = k;i<s.length();++i) { swap(s[i],s[k]); permute(s,k+1); } } 

最後更新:2017-04-02 06:51:23

  上一篇:go 數組與指針的藝術 第八章 柔性數組成員
  下一篇:go 安裝SQL Server 2005 express沒有權限,sa不能登錄問題。