依然爱你ANGLE 2018-11-09 08:09 采纳率: 0%
浏览 402

求大神指教,为什么我用返回值,无法获取到下标,用全局变量就可以?(实现的是二分查找)

$(function() {
var nums = [2, 3, 4, 5, 6, 9, 10, 18, 17];
var idx = half_search_arr(nums, 4);
alert(idx);
});

var index = -1;

function half_search_arr(arr, num) {
var idx = half_search(arr, 0, arr.length - 1, num);
return idx;
}

function half_search(arr, start, end, num) {
if (arr[start] > num || arr[end] < num) {
return -1;
}
var half = (end - start) / 2;
if (arr[half] == num) {
index = half;
return (end - start) / 2;
} else if (arr[half] > num) {
half_search(arr, start, half, num);
} else if (arr[half] < num) {
half_search(arr, half, end, num);
}
}

  • 写回答

3条回答 默认 最新

  • 当作看不见 2018-11-09 08:23
    关注
     //善用插入代码功能,你这儿很难去看呀............我的天
    
    评论

报告相同问题?

悬赏问题

  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题