编辑代码

function binarySearch(arr, k) {
    let left = 0;
    let right = arr.length - 1;

    while (left <= right) {
        let mid = Math.floor((left + right) / 2);
        
        if (arr[mid] === k) {
            return true;
        } 
        else if (arr[mid] > k) {
            left = mid + 1;  // 注意,这里左边界增加,因为数组是降序的
        } 
        else {
            right = mid - 1;  // 注意,这里右边界减小,因为数组是降序的
        }
    }
    
    return false;
}

// 测试函数
function testBinarySearch() {
    const arr = [85, 63, 52, 34, 25, 17, 6];
    const k = 6;
    
    if (binarySearch(arr, k)) {
        console.log(`元素 ${k} 存在于数组中。`);
    } else {
        console.log(`元素 ${k} 不存在于数组中。`);
    }
}

testBinarySearch();