#include <stdio.h>

void swap(int &x, int &y) { int t = x; x = y; y = t; }

void Perm(int a[], int p, int m) { if (p == m) { for (int i = 1; i <= m; i++) { printf("%d ", a[i]); } printf("\n"); return; } for (int i = p; i <= m; i++) { swap(a[p], a[i]); Perm(a, p + 1, m); swap(a[p], a[i]); } }

int main() { int a[15] = {0, 1, 2, 3, 4, 5}; Perm(a, 2, 5); return 0; }

#includestdiohvoid swapint &xint &yint t=x;2007x=y;y=t;把数组a从下标p到下标m的几个元素做全排列每得到一种排列就输出整个数组的值不考虑下标为0的元素void Permint alint pint m1在这里补充代码1 11111111111111int mainint a15=012345Perma15;return 0;

原文地址: https://www.cveoy.top/t/topic/fjkU 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录