标签:技术 sea javascrip val com function 代码 col pre
最近学习javascript,有一个问题挺奇怪的,先贴出代码:
function binarySearch(){ var arr = [0,1,2,3]; var res = actbinarySearch(0,3,2,arr); document.write("<br/>return is "+ res); } function actbinarySearch(left,right,val,arr){ if(left > right){ document.write("do not find"); return -1; } var midIndex = Math.floor((left+right)/2); var midVal = arr[midIndex]; if(val < midVal){ actbinarySearch(left, midIndex-1,val,arr); }else if(val > midVal){ actbinarySearch(midIndex+1, right, val, arr); }else{ document.write("find it "+midIndex); return midIndex; } }
简单的二分法,但是结果很奇怪,结果如下:
不知道为什么不一致,很费解,向各位请教一下。
关于javascript的一个小问题,请问有人看出啥问题吗?
标签:技术 sea javascrip val com function 代码 col pre
原文地址:https://www.cnblogs.com/phdeblog/p/9278792.html