Stack representa unacolección de objetos de último en entrar, primero en salir . Se utiliza cuando necesita un acceso de último en entrar, primero en salir a los elementos. Cuando agrega un elemento en la lista, se le llama empujar el elemento y cuando lo elimina, se le llama sacar el elemento. Stack<T>.Peek Method se usa para devolver el objeto en la parte superior de Stack<T> sin eliminarlo. Este método es una operación O(1) .
Propiedades:
- La capacidad de una Pila es el número de elementos que la Pila puede contener. A medida que se agregan elementos a una pila, la capacidad aumenta automáticamente según sea necesario mediante la reasignación.
- Si Count es menor que la capacidad de la pila, Push es una operación O(1) . Si es necesario aumentar la capacidad para acomodar el nuevo elemento, Push se convierte en una operación O(n) , donde n es Count. Pop es una operación O(1) .
- Stack acepta nulo como un valor válido y permite elementos duplicados.
Sintaxis:
object Peek();
Valor devuelto: el método Peek() devuelve el último valor (superior) de Stack<T> de tipo System.Object .
Excepción: Llamar al método Peek() en la pila vacía lanzará InvalidOperationException . Por lo tanto, siempre busque elementos en la pila antes de recuperar elementos usando el método Peek().
A continuación se dan algunos ejemplos para entender la implementación de una mejor manera.
Ejemplo 1:
// C# code to Get object at // the top of the Stack using System; using System.Collections.Generic; class GFG { // Driver code public static void Main() { // Creating a Stack of strings Stack<string> myStack = new Stack<string>(); // Inserting the elements into the Stack myStack.Push("1st Element"); myStack.Push("2nd Element"); myStack.Push("3rd Element"); myStack.Push("4th Element"); myStack.Push("5th Element"); myStack.Push("6th Element"); // Displaying the count of elements // contained in the Stack Console.Write("Total number of elements in the Stack are : "); Console.WriteLine(myStack.Count); // Displaying the top element of Stack // without removing it from the Stack Console.WriteLine("Element at the top is : " + myStack.Peek()); // Displaying the top element of Stack // without removing it from the Stack Console.WriteLine("Element at the top is : " + myStack.Peek()); // Displaying the count of elements // contained in the Stack Console.Write("Total number of elements in the Stack are : "); Console.WriteLine(myStack.Count); } }
Producción:
Total number of elements in the Stack are : 6 Element at the top is : 6th Element Element at the top is : 6th Element Total number of elements in the Stack are : 6
Ejemplo 2:
// C# code to Get object at // the top of the Stack using System; using System.Collections.Generic; class GFG { // Driver code public static void Main() { // Creating a Stack of Integers Stack<int> myStack = new Stack<int>(); // Displaying the top element of Stack // without removing it from the Stack // Calling Peek() method on empty stack // will throw InvalidOperationException. Console.WriteLine("Element at the top is : " + myStack.Peek()); } }
Error de tiempo de ejecución:
Excepción no controlada:
System.InvalidOperationException: Pila vacía.
Referencia:
Publicación traducida automáticamente
Artículo escrito por Sahil_Bansall y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA