递归生成全排列【C/C++】
生活随笔
收集整理的這篇文章主要介紹了
递归生成全排列【C/C++】
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
簡(jiǎn)述
生成一個(gè)序列的全排列
算法偽代碼
輸入:
- n:表示序列長(zhǎng)度
- char* a: 對(duì)應(yīng)的序列
輸出:
- 這個(gè)序列的全排列
滿足要求:
- 必須使用全排列
- 對(duì)應(yīng)的代碼的參數(shù) void pomi(char *arr, int k);
- 只能修改pomi函數(shù)內(nèi)部的內(nèi)容
算法思路:
k為0的時(shí)候,輸出這個(gè)序列。
否則,創(chuàng)建一個(gè)新序列,在保持前n-k個(gè)字符都完全一樣之后。選一個(gè)到第n-k位,并將后面的保持順序放到之后。
進(jìn)入到遞歸
總結(jié)
以上是生活随笔為你收集整理的递归生成全排列【C/C++】的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sublime搭建C/C++编译环境(超
- 下一篇: 字符串加括号问题(矩阵乘法组合问题)C+