public class ArrayDemo {
private static int[][] createArray(int num) {
int[][] intArray = new int[num][num];
for (int i = 0; i < num; i++) {
for (int j = 0; j < num; j++) {
int tmp = 0;
if (i == j) {
tmp = i;
} else if (i < j) {
tmp = i;
} else if (i > j) {
tmp = j;
}
intArray[i][j] = tmp;
}
}
return intArray;
}
public static void main(String[] args) throws Exception {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入 一个正整数:");
int num = scanner.nextInt();
System.out.println("开始输出【" + num + "】维数组:");
int[][] intArray = createArray(num);
for (int i = 0; i < num; i++) {
for (int j = 0; j < num; j++) {
System.out.print(intArray[i][j]);
System.out.print(" ");
}
System.out.println("");
}
}
}
public class ArrayDemo {
public static Set<String> set = new TreeSet<String>();
public static void perm(char[] n, int beg, int end) {
if (beg == end) {
addNumber(String.valueOf(n));
} else {
for (int i = beg; i <= end; ++i) {
swap(n, beg, i);
perm(n, beg + 1, end);
swap(n, beg, i);
}
}
}
public static void swap(char[] n, int x, int y) { //内层循环。
if (x == y || n[x] == n[y]) {
return;
}
char temp = n[x];
n[x] = n[y];
n[y] = temp;
}
public static void addNumber(String str) { //添加到set集合里边,其中的if语句是排除那些条件的。
if (str.charAt(2) == '4' || str.contains("35") || str.contains("53")) {
return;
}
set.add(str);
}
public static void main(String args[]) {
char[] number = new char[] { '1', '2', '2', '3', '4', '5' };
perm(number, 0, number.length - 1); //外层循环
System.out.println(set.size());
int cols = 10;
for (String s : set) {
System.out.print(s + " ");
if (cols-- == 1) {
System.out.println();
cols = 10;
}
}
}
}