Java-数组n个数字,输出全部n!排列

import java.net.StandardSocketOptions;
import java.util.Arrays;

public class Test {
    static int k=0;
    public static void main(String[] args) {
        //第n
        int a[]={1,2,3,4,5};
        permutations(a, 0,4);
    }
    public static void permutations(int[]a,int m,int n) {
        if (m == n) {
            k++;
            System.out.print("第"+k + "个:");
            for (int i = 0; i <= n; i++) {
                System.out.print(a[i]);
            }
            System.out.println();
        } else {
            for (int i = m; i <= n; i++) {
                int temp = a[m];
                a[m] = a[i];
                a[i] = temp;
                permutations(a, m + 1, n);
                temp = a[m];
                a[m] = a[i];
                a[i] = temp;
            }

        }
    }
}

输出结果

第1个:12345
第2个:12354
第3个:12435
第4个:12453
第5个:12543
第6个:12534
第7个:13245
第8个:13254
第9个:13425
第10个:13452
第11个:13542
第12个:13524
第13个:14325
第14个:14352
第15个:14235
第16个:14253
第17个:14523
第18个:14532
第19个:15342
第20个:15324
第21个:15432
第22个:15423
第23个:15243
第24个:15234
第25个:21345
第26个:21354
第27个:21435
第28个:21453
第29个:21543
第30个:21534
第31个:23145
第32个:23154
第33个:23415
第34个:23451
第35个:23541
第36个:23514
第37个:24315
第38个:24351
第39个:24135
第40个:24153
第41个:24513
第42个:24531
第43个:25341
第44个:25314
第45个:25431
第46个:25413
第47个:25143
第48个:25134
第49个:32145
第50个:32154
第51个:32415
第52个:32451
第53个:32541
第54个:32514
第55个:31245
第56个:31254
第57个:31425
第58个:31452
第59个:31542
第60个:31524
第61个:34125
第62个:34152
第63个:34215
第64个:34251
第65个:34521
第66个:34512
第67个:35142
第68个:35124
第69个:35412
第70个:35421
第71个:35241
第72个:35214
第73个:42315
第74个:42351
第75个:42135
第76个:42153
第77个:42513
第78个:42531
第79个:43215
第80个:43251
第81个:43125
第82个:43152
第83个:43512
第84个:43521
第85个:41325
第86个:41352
第87个:41235
第88个:41253
第89个:41523
第90个:41532
第91个:45312
第92个:45321
第93个:45132
第94个:45123
第95个:45213
第96个:45231
第97个:52341
第98个:52314
第99个:52431
第100个:52413
第101个:52143
第102个:52134
第103个:53241
第104个:53214
第105个:53421
第106个:53412
第107个:53142
第108个:53124
第109个:54321
第110个:54312
第111个:54231
第112个:54213
第113个:54123
第114个:54132
第115个:51342
第116个:51324
第117个:51432
第118个:51423
第119个:51243
第120个:51234



知识共享许可协议本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。

相关推荐

暂无评论