![]() |
#2
林月儿2018-12-22 23:05
|

import java.util.*;
public class BinarySearch {
public static void main(String[] args) {
//以下语句看不懂是什么作用?想请论坛的热心人帮忙解答。
int[] whiteList = In.readInts(args[0]);
Arrays.sort(whiteList);
while(!StdIn.isEmpty()) {
int key = StdIn.readInt();
if(rank(key,whiteList) < 0) {
StdOut.println(key);
}
}
}
public static int rank(int key, int[] a) {
int lo =0;
int hi = a.length -1;
while(lo <= hi) {
int mid = lo +(hi+lo)/2;
if(key < a[mid]) {
hi = mid -1;
}else if(key > a[mid]) {
lo = mid +1;
}else {
return mid;
}
}
return -1;
}
}
public class BinarySearch {
public static void main(String[] args) {
//以下语句看不懂是什么作用?想请论坛的热心人帮忙解答。
int[] whiteList = In.readInts(args[0]);
Arrays.sort(whiteList);
while(!StdIn.isEmpty()) {
int key = StdIn.readInt();
if(rank(key,whiteList) < 0) {
StdOut.println(key);
}
}
}
public static int rank(int key, int[] a) {
int lo =0;
int hi = a.length -1;
while(lo <= hi) {
int mid = lo +(hi+lo)/2;
if(key < a[mid]) {
hi = mid -1;
}else if(key > a[mid]) {
lo = mid +1;
}else {
return mid;
}
}
return -1;
}
}