Find Java 50 randomly generated integer equal to the number greater than the number (bisection method) 60

package com.it.homework;

import java.util.Arrays;

public class TestCount {
	
	public static void main(String[] args) {
		
		int[] numlist = new int[50];
		for (int i = 0; i < numlist.length; i++) {
			int rand = (int)(100*Math.random());
			numlist[i] = rand;
		}
		
		Arrays.sort(numlist);
		System.out.println("Max"+numlist[numlist.length-1]);
		System.out.println("Min"+numlist[0]);
		System.out.println(Arrays.toString(numlist));
		System.out.println("大于等于六十的有"+(bigerSixty(numlist)==-1?0:numlist.length-bigerSixty(numlist)));
		}
	
	public static int bigerSixty(int[] arr) {
		int before = 0;
		int after = arr.length-1;
		while(before<=after) {
			int middle = (before+after)/2;
			if(arr[middle]>=60 && arr[middle-1]<60) {
				return middle;
			}
			if(arr[middle]>=60 && arr[middle-1] >=60) {
				after = middle-1;
			}
			if(arr[middle]<60 && arr[middle-1] <60) {
				before = middle+1;
			}
		}
		return -1;
	}

}

Here Insert Picture Description

Published 37 original articles · won praise 29 · views 10000 +

Guess you like

Origin blog.csdn.net/qq_42755868/article/details/105031661
Recommended