にぶんたんさく
この探求の核心は
2つの端点(lo,hi)のうちの1つは所定の条件を満たす値であり,もう1つは条件を満たさない値に設定され,loとhiの差がちょうど1になる前に二分探索を継続する.
はい.この方法では、可能な値に境界値を見つけることができます.ここで、境界値は、通常、問題で探している最低価格または最高価格を意味します.
コード実装
私は主に以下のコードを用いて二分探索アルゴリズムを解く.言語はPythonを使用しています.
lo = # 확실하게 주어진 조건을 만족시키는 경우의 값
hi = # 확실하게 주어진 조건을 만족시키지 못하는 경우의 값
while lo + 1 < hi: # lo와 hi의 차이가 정확히 1이 될 때까지 반복
mid = (lo + hi) // 2
if: # 가능했던 경우
lo = mid # lo에 mid를 대입한다
else: # 불가능했던 경우
hi = mid # hi에 mid를 대입한다
print(lo) # 경계값을 대입받은 lo를 출력한다.
可能な場合hiであれば、lo
とhi
のキャラクターを変えることができ、最後のprint
はprint(hi)
です.通常、
最高価格
hi
が必要になる場合があります.最高価格の
lo
が必要になる場合があります.参考になる文章
https://blog.naver.com/kks227/220777333252
Reference
この問題について(にぶんたんさく), 我々は、より多くの情報をここで見つけました https://velog.io/@bcj0114/이분탐색Binary-Searchテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol