示例代码
/**
* 二分法查找
* @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"
运行结果
![9791228-70d245a2904eced6.png](https://i-blog.csdnimg.cn/blog_migrate/132b54d796da06cf0a4c0f0b43c5a9c3.png)
完毕。
PS:如果本文对您有帮助,请关注微信公众号码袋。
存放有更多技术干货、技术知识,且可一网打尽最新技术动态!
![9791228-0c18d21f3700a958](https://i-blog.csdnimg.cn/blog_migrate/5aac38b153c6999713bd093189c2d8e4.jpeg)
推荐一款超好玩的微信小程序,无数俊男靓女为之疯狂!(真的好玩!×3)
![9791228-4b681780f8cbce6b.jpg](https://i-blog.csdnimg.cn/blog_migrate/b06e5b76e24798b23dd669c3b06bdc5e.jpeg)