C++利用递归求排列的代码 求出N个不同元素的所有排列方式,代码中设定10个元素分别是0到9,可以求出这十个元素的所有排列
#include <iostream>using namespace std;int arr[10];void perm(int list[], int k, int m);void swap(int &a, int &b);int main(int argc, char* argv[]){ int j; for(j=0; j<10; j++) arr[j] = j; perm(arr, 0, 2); return 0;}void perm(int 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]); } }}void swap(int &a, int &b){ int t = a; a = b; b = t;}新闻热点
疑难解答
图片精选