想拿到最左边那个该怎么改
要让二分返回最左边的那个,改法是【0】。
阅读更多 →
有重复元素时普通二分返回哪个
数组里有好几个一样的值,普通二分返回的是【0】。
阅读更多 →
⚠️ 两种找法差多少步
同一个数组、同一个目标(24),把二分的步数和线性的步数拼起来输出(用 / 隔开)。 ——这两个数就是这条路线标题里那句"聪明地找 vs 傻傻地找"。
阅读更多 →
二分比了几次
补全 bsteps:返回二分比较的次数。 这次找 24。
阅读更多 →
找得到和找不到,一次验两种
同一个 bfind。把两个结果拼起来输出:找 24(在)和找 20(不在),中间用 / 隔开。 ⚠️ 范围缩到空(lo > hi)时循环自然结束,这时要返回 -1——但光会返回 -1 是不够的,
阅读更多 →
写一个二分查找
补全 bfind:返回目标的下标,找不到返回 -1。 这次找 24。
阅读更多 →
二分找 24 落在哪个下标
运行下面这段程序: def bfind(a, target): lo = 0 hi = len(a) - 1 while lo <= hi: mid =
阅读更多 →
目标比中点小的时候
要找的值比中点那个小,接下来应该【0】。
阅读更多 →
中点怎么算
二分里的中点下标算法是【0】。
阅读更多 →
二分要哪几个变量
写二分查找,至少要有【0】。
阅读更多 →