面试准备:二分查找

刷新这个常用算法的知识

  • 7个视频
  • 0小时26分钟
  • 58快乐的学生

关于课程

描述

快速复习这个常见的编程算法。非常适合面试准备。

在这门课上,我将介绍二分搜索算法。我浏览了一些示例并提供了基本的复杂性分析。除了二分搜索,我还解释了下限和上限搜索。你将了解它们是什么以及它们的目的。

项目

我想让你写一个二分搜索函数。选择一种语言并编写一个函数,该函数接受一个值数组和一个要查找的项。该函数返回一个可选值,即找到项的位置的索引,如果没有找到则返回什么。如果不熟悉可选值,如果找不到该值,则返回' -1 '。

在示例Python实现中,签名看起来像这样:

' ' ' py def binary_search(值:ComparableT,项目:Sequence[ComparableT]) ->可选[int]: ' ' '

您应该假设数组已排序。

上下界

为了获得额外的学分,请写出上下界函数。

“lower_bound”返回列表中项目不小于输入值的第一个索引。

“upper_bound”返回列表中项目大于输入值的第一个索引。

对于所有算法,我提供了示例代码的演练。您可以查看代码。

从古到今代码: https://github.com/mortoray/interview.codes/tree/master/binary-search

  • 7个视频
  • 0小时26分钟
  • 58快乐的学生

课程大纲

第一课:面试准备:二分查找
免费的
简介
0:50
算法的解释
4:28
算法的复杂性
2:58
上下限
5:00
二分搜索码
4:32
下限和上限代码
5:42
交替二分搜索码
2:32
  • 7个视频
  • 0小时26分钟
  • 58快乐的学生
Baidu