Demostrar la oferta de seguridad: 8-11 registros

Una cola se implementa con dos pilas. La siguiente cola de declaración, implementar sus dos funciones appendTail y deleteHead, se completaron en el extremo de la inserción de cola y número entero número entero de eliminación en la cabeza de la función de cola. (Si no hay ningún elemento de la cola, deleteHead operación vuelve -1)

 

Ejemplo 1:

Entrada:
[ "CQueue", "appendTail", "deleteHead", "deleteHead"]
[[], [3], [], [].]
De salida: [null, null, 3, -1]
Ejemplo 2:

输入:
[ "CQueue", "deleteHead", "appendTail", "appendTail", "deleteHead", "deleteHead"]
[[], [], [5], [2], [], []]
输出: [null, -1, null, null, 5,2]
提示:

1 <= valores <= 10.000
serán más appendTail, deleteHead eran 10.000 llamadas

 Ideas: la pila auxiliar, antes de la operación de expulsión, la pila 2 cuando la pila está vacía cuando el elemento 1 se vacía en la pila 2, y luego estallar la pila 2.

class CQueue {
    Stack<Integer> stack1;
    Stack<Integer> stack2;

    public CQueue() {
        stack1 = new Stack<Integer>();
        stack2 = new Stack<Integer>();
    }
    
    public void appendTail(int value) {
        stack1.push(value);
    }
    
    public int deleteHead() {
        if(stack2.empty()){
            while (!stack1.isEmpty()) {
                stack2.push(stack1.pop());
            }
        }
        if(stack2.empty()){
            return -1;
        }
        return stack2.pop();
    }
}

/**
 * Your CQueue object will be instantiated and called as such:
 * CQueue obj = new CQueue();
 * obj.appendTail(value);
 * int param_2 = obj.deleteHead();
 */

Escribir una función, de entrada n, en busca de Fibonacci serie de n elementos (Fibonacci). serie de Fibonacci escritura define como sigue:

F. (0) = 0, F. (1) = 1
F. (N) = F. (N - 1) + F. (N - 2), donde N> 1.
Que de transporte número de Fibonacci columnas 0 y 1 desde el principio, después de número de Fibonacci se deriva de la suma de los dos números antes.

Respuesta necesaria modulo 1E9 + 7 (1000000007), el resultado inicial se calcula como: 1000000008, retorno a 1.

 

Ejemplo 1:

Entrada: n = 2
de salida: 1
Ejemplo 2:

Entrada: n = 5
de salida: 5
 

consejos:

0 <= n <= 100

Ideas: De acuerdo con la fórmula para optimizar el espacio, se pueden utilizar varias variables.

class Solution {
    public int fib(int n) {
        int a = 0, b = 1, sum;
        for(int i = 0; i < n; i++){
            sum = (a + b) % 1000000007;
            a = b;
            b = sum;
        }
        return a;
    }
}

Una rana puede saltar en un nivel de 1 clase, también se puede coger el nivel de nivel 2. La rana saltó en busca de un total de n del nivel de grado el número de saltos.

Respuesta necesaria modulo 1E9 + 7 (1000000007), el resultado inicial se calcula como: 1000000008, retorno a 1.

Ejemplo 1:

Entrada: n = 2
de salida: 2
Ejemplo 2:

Entrada: n = 7
Salida: 21
Nota:

0 <= n <= 100

Expresión y sobre el mismo tema.

class Solution {
    public int numWays(int n) {
        int a = 1, b = 1, sum;
        for(int i = 0; i < n; i++){
            sum = (a + b) % 1000000007;
            a = b;
            b = sum;
        }
        return a;
    }
}

El comienzo de una matriz de varios elementos se trasladó a la final de la matriz, la matriz que llamamos rotación. Ingrese una matriz ordenada una rotación incremental del elemento más pequeño de salida giratorio de la matriz. Por ejemplo, una matriz de [3,4,5,1,2] es una rotación de [1,2,3,4,5], el valor mínimo de la matriz es 1.  

Ejemplo 1:

Entrada: [3,4,5,1,2]
de salida: 1
Ejemplo 2:

Entrada: [2,2,2,0,1]
de salida: 0

Idea: dos puntos, y la atención que el punto correcto, no el punto izquierdo.

¿Cómo es el alma condiciones operativas iguales.

class Solution {
    public int minArray(int[] numbers) {
        int i = 0, j = numbers.length - 1;
        while (i < j) {
            int mid = (i + j) / 2;
            if (numbers[mid] > numbers[j]) i = mid + 1;
            else if (numbers[mid] < numbers[j]) j = mid;
            //这一句是细节灵魂所在
            else j--;
        }
        return numbers[i];
    }
}


 

发布了619 篇原创文章 · 获赞 1万+ · 访问量 154万+

Supongo que te gusta

Origin blog.csdn.net/hebtu666/article/details/104751223
Recomendado
Clasificación