Veintiún cara preguntas: ajustar el orden de la matriz de modo que la parte delantera del Par Impar

 

Método A: Método doble puntero, dos punteros antes y después de la definición de la matriz, se cumple el número incluso cuando la posición de cambio p1, quicksort similares

1   void f1 ( int [] array) {
 2  
3              Si (Array.length <= 1)   de retorno ;
4  
5              Int BE = 0 ;
6              int final = Array.length-1 ;
7              , mientras que (ser < final) {
 8                  mientras que (ser <extremo && array [BE] y 1 == 1 )
 9                          sea ++ ;
10                   , mientras que (ser <extremo && array [final] y 1 == 0 )
 11                          end-- ;
12                  si (ser < final)
 13                  {
14                      int temp = array [ser];
15                      array [ser] = array [final];
16                      array [final] = temp;
17                  }
 18              }
 19          }

función de desacoplamiento puede aumentar en gran medida la capacidad de reutilización de funciones en los mismos tipos de problemas sólo una pequeña parte de los cambios

void f1 ( int [] array) { 
        
        si (Array.length <= 1)   de retorno ; 
        
        Int ser = 0 ;
        int final = Array.length-1 ;
        mientras que (ser < final) {
             mientras que (ser <extremo && f2 (arrat [ser])!) 
                    ser ++ ;
             mientras que (ser <extremo && f2 (arrat [final)) 
                    final - ;
            si (ser < final) 
            { 
                int temp = array [BE]; 
                array [ser] = array [final];
                array [final] = temp; 
            }           
        }     
    } 
    
    Boolean f2 ( int n) { 
    
    retorno (n & 1) == 0 ; 
    
    }

 

Supongo que te gusta

Origin www.cnblogs.com/niliuxiaocheng/p/12592237.html
Recomendado
Clasificación