Kotlin Array 二分法查找
示例代码
/**
* 二分法查找
* @findValue:需查找的数字
* */
fun findNumber(findValue:Int):Int{
var index = -1
if(itemArr[0] > findValue || itemArr[itemArr.size - 1] < findValue){
return index
}
var start = 0
var end = itemArr.size - 1
var find = -1
while (start <= end){
find = (start + end) / 2
if(itemArr[find] > findValue){
end = find - 1
}else if(itemArr[find] < findValue){
start = find + 1
}else{
index = find
break
}
}
return index
}
调用方式
// 初始
helloArray.text = "初始:" + itemArr.asList().toString() +"\n\n"
// 二分法查找
var index = findNumber(20)
helloArray.text = helloArray.text as String + "二分法查找:" + index +"\n\n"
运行结果
完毕。
PS:如果本文对您有帮助,请关注