アルゴリズム図 1.2 二項対立型ルックアップ TypeError: リストのインデックスは整数またはスライスでなければならず、float ではありません 解答
2022-02-18 11:04:43
def binary_search(list, item):
low = 0
high = len(list) - 1
while low <= high:
mid = (low + high) / 2
guess = list[mid]
if guess == item:
return guess
if guess > item:
high = mid - 1
else:
low = mid + 1
return None
my_list = [1, 3, 5, 7, 9]
print(binary_search(my_list, 3))
print(binary_search(my_list, -1))
次の行を入れます。
mid = (low + high) / 2
に変更する。
mid = int((low + high) / 2)
強く整数に変換する。
リストのインデックスは整数かスライスでなければならないので
もう一つの方法
は
mid = low + (high - low) / 2
関連
-
Abort trap: 6エラーに対するPythonの解決策
-
[Python] error could not broadcast input array from shape (26) into shape (26,1)
-
ModuleNotFoundError: numpy.testing.decorators'という名前のモジュールがありません。
-
ModuleNotFoundError: _pywrap_tensorflow_internal'という名前のモジュールはありません。
-
メール送信を自動化するPython - Blog内のメッセージのメールアドレスを自動で取得して送信
-
Pythonのタイトル。学生情報管理システム - アドバンス版 (GUI + MySQLデータベース)
-
TypeError: バイトライクオブジェクトで文字列パターンを使用できない
-
jupyter notebookのアンインストールで "The jupyter" distribution was not found 問題が発生する。
-
Python2.7のエンコード問題:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position... 解決方法
-
AttributeError:partially initialized module ''has no attribute'' (most likely dueto a circular import)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PythonでクロールするときにAttributeError: 'NoneType' オブジェクトに 'find_all' 属性がないのを解決する
-
undefinedImportError: 必要な依存関係['Numpy']がありません。
-
undefinedAttributeError: 'dict_values' オブジェクトに 'translate' 属性がない エラーは解決されました。
-
問題解決しました。Pythonを起動しても「ImportError: No module named site" というエラーでPythonを起動する。
-
PyQt5演習:matplotlibでプロットする
-
python-OverflowError: Python の int が大きすぎるため C の long に変換できない
-
エラーの原因の1つ: 'encoding'はこの関数の無効なキーワード引数です。
-
Python djangoプログラミングエラーのコツ、自作プログラミングで遭遇したエラーのまとめ 2018年11月8日更新
-
エンコード問題:UnicodeDecodeError: 'utf-8' コーデックは、位置のバイト 0xb3 をデコードできません。
-
Mac環境でのbrewコマンドが見つからないエラーの解決方法