n个整数全排列的递归实现(C++)
Posted slgkaifa
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了n个整数全排列的递归实现(C++)相关的知识,希望对你有一定的参考价值。
全排列是很经常使用的一个小算法,以下是n个整数全排列的递归实现,使用的是C++
#include <iostream> using namespace std; int n = 0; void swap(char *a ,char *b) { int m ; m = *a; *a = *b; *b = m; } void perm(char list[],int k, int m ) { int i; if(k >m) { for(i = 0 ; i <= m ; i++) { cout<<list[i]; } cout<<endl; } else { for(i = k ; i <=m;i++) { swap(&list[k],&list[i]); perm(list,k+1,m); swap(&list[k],&list[i]); } } } int main() { char list[] ="12345"; perm(list,0,4); return 0; }
以上是关于n个整数全排列的递归实现(C++)的主要内容,如果未能解决你的问题,请参考以下文章