小肚皮上机题
1. 图片
|
2.代码(可能有误,望改正)代码缩进有毒,不想改了
package com.leon; import java.util.ArrayList; /** * @author leon * @version 1.0 * @date 2019/7/22 20:59 */ public class Main { // 取随机数存入到list private static ArrayList<Integer> randomList(int size) { ArrayList<Integer> list = new ArrayList<>(); int rz = 0; int num = 0; while (rz < size) { num = (int) (size * Math.random()); if (list.contains(num)) continue; list.add(num); rz++; } return list; } // Tuesday public static ArrayList<String[]> TuesdayOut(String[] s1, String[] s2) { if (s1 == null || s2 == null || s1.length != s2.length) return null; ArrayList<String[]> list = new ArrayList<>(); int size = s1.length; // 随机数,存入list1 ArrayList<Integer> list1 = randomList(size); ArrayList<Integer> list2 = randomList(size); // 2.匹配 int index = 0; int n = 0; int m = 0; while (index < list1.size()) { String[] s = new String[4]; for (int i = 0; i < 2; i++) { if (index < list1.size()) { n = list1.get(index); m = list2.get(index); index++; s[i] = s1[n]; s[i + 2] = s2[m]; } } list.add(s); } return list; } // Thursday public static ArrayList<String[]> ThursdayOut(ArrayList<String[]> list, String[] s1, String[] s2) { ArrayList<String[]> tuesList = TuesdayOut(s1, s2); for (int i = 0; i < list.size(); i++) { String[] a = list.get(i); String[] b = tuesList.get(i); for (int j = 0; j < 4; j++) { if (a[j].equals(b[j])) tuesList = TuesdayOut(s1, s2);break; } } return tuesList; } // 打印数组 private static void printArray (ArrayList<String[]> list){ for (int i = 0; i < list.size(); i++) { String[] s = list.get(i); for (String a : s) { System.out.print(a + " "); } System.out.println(); } } public static void main(String[] args) { String[] s1 = {"a", "b", "c", "d", "e", "f", "g", "h"}; String[] s2 = {"A", "B", "C", "D", "E", "F", "G", "H"}; ArrayList<String[]> list = TuesdayOut(s1, s2); ArrayList<String[]> list1 = ThursdayOut(list, s1, s2); printArray(list); System.out.println(); printArray(list1); } }3.运行图片
| |