[バイナリ検索]は回転したソート配列に33の検索をleetcode

問題:  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 
    } 
}。

 

おすすめ

転載: www.cnblogs.com/fish1996/p/11333732.html