Top 150 Interview簡単

二分探索 ---パイセップ--- 「二分探索」問題の詳細なガイドと __PYTERM_0__ 実装。 ---パイセップ--- 昇順にソートされた整数 __PYCODE_0__ の配列と整数 __PYCODE_1__ を指定して、__PYCODE_3__ 内の __PYCODE_2__ を検索する関数を作成します。 __PYCODE_4__ が存在する場合は、そのインデックスを返します。それ以外の場合は、__PYCODE_5__ を返します。 実行時の複雑度が O(log n) のアルゴリズムを作成する必要があります。 関数 __PYCODE_6__ を作成します。 ---パイセップ--- トップ150インタビュー ---パイセップ--- 二分探索 ---パイセップ--- 「二分探索」問題は、二分探索セクションの重要な課題です。 ---パイセップ--- この実装は、__PYTERM_0__ の簡単なレベルのロジックに焦点を当てています。 ---パイセップ--- 当社は、提供するソリューションにおいて技術的な正確さとコードの読みやすさを優先します。 ---パイセップ--- アルゴリズム工学 ---パイセップ--- 競技プログラミング ---パイセップ--- 技術的評価 ---パイセップ--- 二分探索のロジックフローを視覚化します。 ---パイセップ--- 二分探索の問題文を注意深く読んでください。 ---パイセップ--- 単純な反復ソリューションの草案を作成します。 ---パイセップ--- 冗長な計算を探します。 ---パイセップ--- プロセスを高速化するには、ハッシュまたはソートを使用します。 ---パイセップ--- 実稼働標準に合わせてコードをクリーンアップします。 ---パイセップ--- 空の入力構造体 ---パイセップ--- 単一要素入力 ---パイセップ--- 大きな数値限界 ---パイセップ--- 二分探索アプローチのロジックを説明してください。 ---パイセップ--- null または空の入力などの特殊なケースについて説明します。 ---パイセップ--- 標準の二分探索問題のプロパティが適用されます。 ---パイセップ--- セットやヒープなどの二分探索固有のデータ構造の使用を検討してください。 ---パイセップ--- 2D マトリックスの検索 ---パイセップ--- 「2D 行列の検索」問題の詳細なガイドと __PYTERM_0__ 実装。 ---パイセップ--- 次の 2 つのプロパティを持つ __PYCODE_0__ 整数行列 __PYCODE_1__ が与えられます。 - 各行は降順ではない順にソートされます。 - 各行の最初の整数が、前の行の最後の整数より大きい。 整数 __PYCODE_2__ を指定すると、__PYCODE_4__ が __PYCODE_5__ にある場合は __PYCODE_3__ を返し、それ以外の場合は __PYCODE_6__ を返します。 解は O(log(m * n)) の時間計算量で記述する必要があります。 関数 __PYCODE_7__ を作成します。 ---パイセップ--- トップ150インタビュー ---パイセップ--- 二分探索 ---パイセップ--- 「2D 行列の検索」問題は、二分探索セクションの重要な課題です。 ---パイセップ--- この実装は、__PYTERM_0__ の簡単なレベルのロジックに焦点を当てています。 ---パイセップ--- 当社は、提供するソリューションにおいて技術的な正確さとコードの読みやすさを優先します。 ---パイセップ--- アルゴリズム工学 ---パイセップ--- 競技プログラミング ---パイセップ--- 技術的評価 ---パイセップ--- 2D マトリックスの検索のロジック フローを視覚化します。 ---パイセップ--- 2D 行列の検索の問題文を注意深く読んでください。 ---パイセップ--- 単純な反復ソリューションの草案を作成します。 ---パイセップ--- 冗長な計算を探します。 ---パイセップ--- プロセスを高速化するには、ハッシュまたはソートを使用します。

Detailed guide and Python implementation for the 'Binary Search' problem.

問題提起

簡単

Given an array of integers nums which is sorted in ascending order, and an integer target, write a function to search target in nums. If target exists, return its index. Otherwise, return -1.

You must write an algorithm with O(log n) runtime complexity.

Write a function search(nums: List[int], target: int) -> int.

制約
  • 1 <= len(nums) <= 10^4
  • -10^4 < nums[i], target < 10^4
  • All integers in nums are unique
  • nums is sorted in ascending order

Example 1
Input
nums = [-1, 0, 3, 5, 9, 12], target = 9
Output
4
Explanation

9 exists in nums and its index is 4.

Example 2
Input
nums = [-1, 0, 3, 5, 9, 12], target = 2
Output
-1
Explanation

2 does not exist in nums so return -1.

Need a Hint?
Consider using Binary Search-specific data structures like sets or heaps.
Edge Cases to Watch
  • Empty input structures
  • Single element inputs
  • Large numerical bounds

解決する準備はできましたか?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

エディタで開く
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

推奨される Python リソース

関連するインタラクティブなチュートリアル、チートシート、コード比較で知識を深めてください。