算法基礎 --- 日常總結

二分查找

function binarySearch(arr,value){
    let left = 0;
    let right = arr.length - 1;
    let middle;
    while(left <= right){
        middle = left + (right - left) / 2;
        if(arr[middle] < value){ // value在右邊
            left = middle + 1;
        } else if(arr[middle] === value){
            return middle;
        } else { // value在左邊
            right = middle-1;
        }
    }
    return -1;
}

數組逆序

function reverse(array) {
    let l = 0;
    let r = array.length-1;
    while(l != r){
        swap(array, l++, r--);
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章