首页 > 代码库 > 全排列
全排列
package com.perm;public class Permutation { public static void perm(int[] num, int i) { if (i < num.length - 1) { for (int j = i; j <= num.length - 1; j++) { int temp = num[j]; // 旋转该区间最右边数字至最左边 for (int k = j; k > i; k--) { num[k] = num[k - 1];// 减法 } num[i] = temp; perm(num, i + 1); // 还原 for (int k = i; k < j; k++) { num[k] = num[k + 1];// 加法 } num[j] = temp; } } else { // 显示此次排列 for (int j = 1; j <= num.length - 1; j++) { System.out.print(num[j] + " "); } System.out.println(); } } public static void main(String[] args) { int[] num = new int[4 + 1]; for (int i = 1; i <= num.length - 1; i++) { num[i] = i; } perm(num, 1); }}
全排列
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。