0
点赞
收藏
分享

微信扫一扫

Javascript斐波那契求数组n项目的值和二分查找

闲云困兽 2022-01-06 阅读 1

var arr = [1, 5, 7, 10, 18, 45, 50, 55, 75, 400];
           var binarysearch=function(find, arr, low, high){
                         if (low <= high) {
                             if (arr[low] == find) {
                                 return low;
                             }
                             if (arr[high] == find) {
                                 return high;
                             }
                             var mid = Math.ceil((low + high) / 2);
                             if (arr[mid] == find) {
                                 return mid;
                             } else if (arr[mid] > find) {
                                return binarysearch(find, arr, low, mid - 1);
                             } else if(arr[mid]<find){
                                return binarysearch(find, arr, mid + 1, high);
                             }
                         }
                         return -1;
 }

function binary_search(arr, find) {
               var low = 0;
               var high = arr.length - 1;
               while (low <= high) {
                   var mid = parseInt((low + high) / 2);
                   if (find == arr[mid]) {
                       return mid;
                   } else if (find > arr[mid]) {
                       low = mid + 1;
                   } else if (find < arr[mid]) {
                       high = mid - 1;
                   } else {
                       return false;
                   }
               }
           }

const fibonacci = n=>{
              if(n==1||n==2)return 1;
              return n>=3?fibonacci(n-1)+fibonacci(n-2):null;
          }
          console.log(fibonacci(3))

举报

相关推荐

0 条评论