示例代码
代码语言:javascript
复制 /**
* 二分法查找
* @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
}
调用方式
代码语言:javascript
复制 // 初始
helloArray.text = "初始:" itemArr.asList().toString() "nn"
// 二分法查找
var index = findNumber(20)
helloArray.text = helloArray.text as String "二分法查找:" index "nn"
运行结果
完毕。