编写程序:在包含 N 个数字的有序数组上执行二分搜索(Binary Search)。
Write a program to perform Binary Search on a sorted array of N numbers.
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: easy
分类: Algorithms, Coding, DSA
标签: binary search, iteration
参考答案摘要
答案 二分搜索要求数组 已排序 。用两个指针 l / r 维护搜索区间,每次取中点 mid 比较目标值:相等返回索引;目标更小则收缩右边界,否则收缩左边界,直到区间为空。时间复杂度 O(log N) ,空间复杂度迭代版为 O(1) 。 // Java (iterative) int binarySearch(int[] a, int target){ int l=0, r=a.length-1; ...
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。