LeetCode二分查找 swift 面试

 

复制代码
func binarySearch(_ array: [Int], _ target: Int) -> Int? {
    var left = 0
    var right = array.count - 1
    
    while left <= right {
        let mid = (left + right) / 2
        
        if array[mid] == target {
            return mid
        } else if array[mid] < target {
            left = mid + 1
        } else {
            right = mid - 1
        }
    }
    
    return nil // 如果目标值不存在于数组中则返回nil
}
 
let numbers = [1, 3, 5, 7, 9, 11, 13]
if let index = binarySearch(numbers, 7) {
    print("目标值 \(index) 在数组中")
} else {
    print("目标值未找到")
}
复制代码

 

posted @   黄增松  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
历史上的今天:
2021-02-26 TCP-三次握手四次挥手
点击右上角即可分享
微信分享提示