gpt4 book ai didi

javascript - 确定插入索引

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:43:38 26 4
gpt4 key购买 nike

使用二分查找决定在何处插入元素的关键点是什么?

当元素存在时使用二分查找返回它的索引。

function arr() {
this.arr = [5, 6, 8];
this.insert = function(element) {
var low = 0;
var high = this.arr.length - 1;
while (low <= high) {

var mid = parseInt((low + high) / 2);
if (element == this.arr[mid]) {
return mid;
} else if (element > this.arr[mid]) {
low = mid + 1;
} else {
high = mid - 1
}
}
return -1
}
}
var vector = new arr();
var x = vector.insert(6); // return 1
alert(x)

这里我可以使用 splice 在索引 1 上插入元素,但是如果这样做呢

var x = vector.insert(7);

7 不在数组中,但应插入第 2 个索引。

我怎么能确定呢?

最佳答案

尝试这样的事情:

function arr() {
this.arr = [5, 6, 8];
this.insert = function(element) {
var low = 0;
var high = this.arr.length - 1;
while (low <= high) {

var mid = parseInt((low + high) / 2);
if (element == this.arr[mid]) {
return mid;
} else if (element > this.arr[mid]) {
low = mid + 1;
} else {
high = mid - 1
}
}
return mid;
}
}

关于javascript - 确定插入索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36911770/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com