作业一:找有序list缺失的数字
package com.itranswarp.learnjava; import java.util.*; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub // 构造从start到end的序列: final int start = 10; final int end = 20; List<Integer> list = new ArrayList<>(); for (int i = start; i <= end; i++) { list.add(i); } // 随机删除List中的一个元素: int removed = list.remove((int) (Math.random() * list.size())); int found = findMissingNumber(start, end, list); System.out.println(list.toString()); System.out.println("missing number: " + found); System.out.println(removed == found ? "测试成功" : "测试失败"); } private static int findMissingNumber(int start, int end, List<Integer> list) { // TODO Auto-generated method stub for(int i = 0;i<list.size();i++) { if(list.get(i)!=(end - start +i)) { return (end - start +i); //continue; } if((i==end -start - 1)&&(list.get(i)!=end)) { return end; } } return 0; } }
作业二:找无序list缺失的数字
package com.itranswarp.learnjava; import java.util.*; /** * Learn Java from https://www.liaoxuefeng.com/ * * @author liaoxuefeng */ public class Main { public static void main(String[] args) { // 构造从start到end的序列: final int start = 10; final int end = 20; List<Integer> list = new ArrayList<>(); for (int i = start; i <= end; i++) { list.add(i); } // 洗牌算法suffle可以随机交换List中的元素位置: Collections.shuffle(list); // 随机删除List中的一个元素: int removed = list.remove((int) (Math.random() * list.size())); System.out.println("排序前的数组:"); System.out.println(list.toString()); int found = findMissingNumber(start, end, list); System.out.println("missing number: " + found); System.out.println(removed == found ? "测试成功" : "测试失败"); } /** * TODO: 找出从start到end的缺失的数字并返回 */ static int findMissingNumber(int start, int end, List<Integer> list) { Integer[] it = list.toArray(new Integer[list.size()]); Arrays.sort(it); System.out.println("排序后的数组:"); System.out.println(Arrays.deepToString(it)); for(int i = 0;i<it.length;i++) { if(it[i]!=(end - start +i)) { return (end - start +i); //continue; } if((i==end -start - 1)&&(it[i]!=end)) { return end; } } return 0; } }
Sign in to make a reply
喵了个咪的904
作业一:找有序list缺失的数字
作业二:找无序list缺失的数字