問題: https://leetcode.com/problems/search-in-rotated-sorted-array/
バイナリ検索トピック。半分は後でチェック-半分を増やすの条件を満たしている、私たちは、会って、データがこの範囲内にある場合は、このセクションで見つける、または別の間隔を探すこと。
クラスのソリューション{ パブリック: int型の検索(ベクトル< int型 >&NUMS、int型のターゲット){ 場合(!nums.size())のリターン - 1 。 int型の低= 0 ; INTハイ= nums.size() - 1 ; 一方(低< 高) { int型ミッド=(ハイロー+)/ 2 。 もし(NUMS [中期] ==ターゲット)リターン中旬。 もし(NUMS [低] <= NUMS [中間]) { もし(ターゲット> = NUMS [低] &&ターゲット<NUMS [中間]) // それが上昇い { ハイ =ミッド- 1 。 } 他{ 低い =ミッド+ 1 。 } } 他 { 場合(目標> NUMS [中間] &&ターゲット<= NUMS [高]) // それが上昇い { 低い =ミッド+ 1 。 } 他 { ハイ =ミッド-1 ; } } } 戻り NUMS [低] ==ターゲット?低: - 1 。 } }。