java第八次作业
2013-05-15 12:50
351 查看
1.元胞自动机
没有办法,时间紧,任务紧急,题目难,工作忙,只能从网上找到的答案进行加工,请谅解。
import java.util.*; public class Main { public static void main(String[] args) { Scanner cin = new Scanner(System.in); int iN = cin.nextInt(); boolean[][] vec = new boolean[iN - 1][iN * 2]; for (int i = 0; i < iN - 1; i++) { for (int j = 0; j < iN * 2; j++) { vec[i][j] = false; } } CellularAutomata(vec, iN); } public static void CellularAutomata(boolean[][] vec, int iN) { vec[0][iN] = true; for (int i = 1; i < iN - 1; i++) { for (int j = 1; j < iN * 2 - 1; j++) { vec[i][j] = vec[i - 1][j - 1] ^ vec[i - 1][j + 1]; } } Print(vec, iN); } public static void Print(boolean[][] vec, int iN) { for (int i = 0; i < iN - 1; i++) { for (int j = 0; j < iN * 2; j++) { if (vec[i][j]) { System.out.print("*"); } else { System.out.print(" "); } } System.out.println(); } } }
2.N皇问题
老师提供的.class ,反编译后的源码
public class Main { public static boolean isConsistent(int[] paramArrayOfInt, int paramInt) { for (int i = 0; i < paramInt; ++i) { if (paramArrayOfInt[i] == paramArrayOfInt[paramInt]) return false; if (paramArrayOfInt[i] - paramArrayOfInt[paramInt] == paramInt - i) return false; if (paramArrayOfInt[paramInt] - paramArrayOfInt[i] == paramInt - i) return false; } return true; } public static void printQueens(int[] paramArrayOfInt) { int i = paramArrayOfInt.length; for (int j = 0; j < i; ++j) { for (int k = 0; k < i; ++k) if (paramArrayOfInt[j] == k) System.out.print("Q "); else System.out.print("* "); System.out.println(); } System.out.println(); } public static void enumerate(int paramInt) { int[] arrayOfInt = new int[paramInt]; enumerate(arrayOfInt, 0); } public static void enumerate(int[] paramArrayOfInt, int paramInt) { int i = paramArrayOfInt.length; if (paramInt == i) printQueens(paramArrayOfInt); else for (int j = 0; j < i; ++j) { paramArrayOfInt[paramInt] = j; if (isConsistent(paramArrayOfInt, paramInt)) enumerate(paramArrayOfInt, paramInt + 1); } } public static void main(String[] paramArrayOfString) { int i = StdIn.readInt(); enumerate(i); } }
2.Kendall's tau相似度指标
老师提供的.class ,反编译后的源码
public class Main { public static int Inversion(String[] paramArrayOfString) { int i = 0; for (int j = 0; j < paramArrayOfString.length; ++j) for (int k = j + 1; k < paramArrayOfString.length; ++k) if (less(paramArrayOfString, k, j)) ++i; return i; } public static boolean less(String[] paramArray, int paramInt1, int paramInt2) { return (paramArray[paramInt1].compareTo(paramArray[paramInt2]) < 0); } public static void SortBoth(String[] paramArray, String[] paramArrayOfString2) { for (int i = 0; i < paramArray.length; ++i) for (int j = i; j < paramArray.length; ++j) if (less(paramArray, j, i)) { String str = paramArrayOfString2[i]; paramArrayOfString2[i] = paramArrayOfString2[j]; paramArrayOfString2[j] = str; str = paramArray[i]; paramArray[i] = paramArray[j]; paramArray[j] = str; } } public static int distance(String[] paramArray, String[] paramArrayOfString2) { SortBoth(paramArray, paramArrayOfString2); return Inversion(paramArrayOfString2); } public static void main(String[] paramArrayOfString) { String str1 = StdIn.readLine(); String str2 = StdIn.readLine(); String[] arrayOfString1 = str1.split(","); String[] arrayOfString2 = str2.split(","); int i = arrayOfString1.length; if (i != arrayOfString2.length) return; StdOut.printf("%.3f\n", new Object[] { Double.valueOf(1D - 2.0D * distance(arrayOfString1, arrayOfString2) / i / (i - 1)) }); } }
相关文章推荐
- 吉软_Java57_第八次作业
- Java第八次作业
- Java第八次作业--数据库编程
- java-java57-第八次作业
- 吉软-java-第八次作业
- JAVA第八次作业
- java-java57-第八次作业
- java第八次作业:课堂上发布的前5张图片(包括匿名对象、单例模式恶汉式、自动生成对象、args[]数组使用、静态关键字)
- JAVA 第八次作业(1)
- 吉软_java57_第八次作业
- java基础作业之猜数字游戏;
- JAVA第一次作业
- 20145226夏艺华 JAVA预备作业1
- java第十二次作业
- [置顶] Java模拟最短作业优先、时间片轮转、最高响应比三种进程调度算法
- IT十八掌作业_java基础第九天_多线程、自动拆装箱
- JAVA笔记11__File类/File类作业/字节输出流、输入流/字符输出流、输入流/文件复制/转换流
- java 10.28/29 作业
- IT十八掌作业_java基础第22天_mysql存储过程、事务隔离
- 第6次JAVA作业