bool型を返します:
1つのテンプレート< クラス T> 静的 BOOL binarySearch(T * S、TのCONST&E、int型、LOをint型のHi)を{ 2 ながら(LO < ハイ){ 3。 INT miザ=(LO +ハイ)>> 1 ; 4 E <S [miザ] = MIこんにちは:?= MI LO + 1 ; 5。 } 6。 リターン Sの[ - LO] == E; // この方法は、ランクを見つけるために失敗を返すがEより大きくない、 7 }
マスターズコードはシンプルでありながらも、美しいだけではありません!
戻り値は、要素を見つけるのランクの値以上です。
1つのテンプレート< クラス T> 静的 INT binarySearch(T * S、TのCONST&Eは、int型、LOをint型のHi)を{ 2 ながら(LO < ハイ){ 3。 INT miザ=(LO +ハイ)>> 1 ; 4 E <S [miザ] = MIこんにちは:?= MI LO + 1 ; 5 } 6。 復帰 --lo; // この方法は、ルックアップEはのランクより大きくない失敗を返し 7 }