您的位置:首页 > 其它

algs4_BinarySearch

2018-01-11 16:45 155 查看
import java.util.Arrays;
import edu.princeton.cs.algs4.In;
import edu.princeton.cs.algs4.StdOut;
import edu.princeton.cs.algs4.StdIn;

public class BinarySearch
{
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 static void main(String[] args)
{
int[] whitelist = In.readInts(args[0]); //
Arrays.sort(whitelist);
//     for(int element : whitelist)
//         StdOut.printf("== tinyW is %d\n", element);

while(!StdIn.isEmpty())
{
int key = StdIn.readInt();
//            StdOut.printf("** tintT is %d\n", key);
if(rank(key, whitelist) == -1)
StdOut.println(key);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: