对有序数组进行二分查找,是一种性能卓越的算法:目标是在有序数组 a[] 中查找是否有 a[k]=key,若有返回 k,否则返回 -1。
第一行包含 1 个整数 N,代表数组长度。 第二行包含 N 个(N <= 30000)int 范围内的整数,保证升序,空格隔开。 第三行包含 1 个整数 T,代表有 T 组询问。 第四行包含 T 个(T <= 30000)int 范围内的整数,表示每组询问需要查找的 key 值,空格隔开。
一行,对于每组询问输出结果k 或 -1,空格隔开。
4 -2 -2 -2 1 3 -2 -2 -1
3 3 -1
使用二分查找。