El circuito de espera mínimo

03/23/2020
El circuito de espera mínimo

Por favor, un diseño de pila, además del empuje pila convencional y pop funciones soportadas, también es compatible con la función min, la función devuelve el valor mínimo de los elementos de la pila. Realización de empuje, operaciones pop y min de tiempo de complejidad debe ser O (1)

Ejemplo:

Min, gracias mins gracias = new mins Gracias ();

minStack.push (-2);

minStack.push (0);

minStack.push (-3);

minStack.getMin (); -> retornos -3.

minStack.pop ();

minStack.top (); -> 0 se devuelve.

solución:
1 idea: Pila fundación
formato de datos Funcionamiento básico pila
/ * * 
 * Inicializar su estructura de datos aquí. 
 * / 
Var MinStack = función () {
   este .STACK = [];
  este .index = 0 ; 
}; 

/ * * 
 * @Param {número} x 
 * @return {void} 
 * / 
MinStack.prototype.push = función (x) {
   este .STACK [ este .index ++] = x; // 最后一项插入
}; 

/ * * 
 * @Return {void} 
 * / 
MinStack.prototype.pop = función () {
   este= .Stack.length el este .index - 1;. // mediante la reducción de la longitud de eliminar el último 
  el este .index-- ; 
}; 

/ * * 
 * @return {Número} 
 * / 
MinStack.prototype.top = función () { // devuelve el último 
  regreso  al presente .STACK [ la presente .index - 1. ]; 
}; 

/ * * 
 * @return {Número} 
 * / 
MinStack.prototype.getMin = función () { // Obtener el mínimo 
  retorno Math.min (... el presente .STACK); 
}; 

/ * *
 * Su objeto MinStack se creará una instancia y llamó como tal: 
 * var obj = new MinStack () 
 * obj.push (x) 
 * obj.pop () 
 * var = param_3 obj.top () 
 * var = param_4 obj.getMin ( ) 
 * /

 

Supongo que te gusta

Origin www.cnblogs.com/lanpang9661/p/12550169.html
Recomendado
Clasificación