p148 Valor mínimo de la matriz ordenada rotada (código 153)

Uno: solución al problema

Este tema es una variante de la búsqueda binaria. Tiempo: log (n), espacio: O (1)

Dos: ejemplos de código completos (versión C ++ y versión Java)

C ++:

Solución de clase {
 public :
     int findMin (vector < int > & nums) 
    { 
        int low = 0 ;
        int high = nums.size () - 1 ;
        while (bajo < alto) 
        { 
            int medio = bajo + (alto-bajo) / 2 ;
            if (nums [mid]> nums [high]) low = mid + 1 ;
            más alto = medio; 
        } 

        return nums [bajo]; 
    } 
};

Java:

Solución de clase {
         public  int findMin ( int [] nums) 
        { 
               int low = 0 ;
               int high = nums.length- 1 ;
               while (bajo < alto) 
               { 
                   int medio = bajo + (alto-bajo) / 2 ;
                   if (nums [mid]> nums [high]) low = mid + 1 ;
                   más alto = medio; 
               } 
               
               return nums [bajo]; 
        } 
    }

 

Supongo que te gusta

Origin www.cnblogs.com/repinkply/p/12737067.html
Recomendado
Clasificación