Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

C# Stack com exemplos de push e pop

O que é Stack em C#?


A pilha é uma coleção de casos especiais que representa um conceito LIFO (last in first out). Para entender primeiro o LIFO, vamos dar um exemplo. Imagine uma pilha de livros com cada livro mantido um em cima do outro.

O conceito de last in first out no caso de livros significa que apenas o livro mais alto pode ser removido da pilha de livros. Não é possível remover um livro do meio, porque isso atrapalharia a configuração da pilha.

Portanto, em C#, a pilha também funciona da mesma maneira. Os elementos são adicionados à pilha, um em cima do outro. O processo de adicionar um elemento à pilha é chamado de operação push. Para remover um elemento de uma pilha, você também pode remover o elemento mais alto da pilha. Esta operação é conhecida como pop.

Vejamos as operações disponíveis para a coleção Stack com mais detalhes.

Declaração da pilha


Uma pilha é criada com a ajuda do tipo Stack Data. A palavra-chave “new” é usada para criar um objeto de uma Pilha. O objeto é então atribuído à variável st.
Stack st = new Stack()

Adicionando elementos à pilha


O método push é usado para adicionar um elemento à pilha. A sintaxe geral da instrução é fornecida abaixo.
Stack.push(element)

Removendo elementos da pilha


O método pop é usado para remover um elemento da pilha. A operação pop retornará o elemento mais alto da pilha. A sintaxe geral da instrução é fornecida abaixo
 Stack.pop()

Contagem


Esta propriedade é usada para obter o número de itens na Pilha. Abaixo está a sintaxe geral desta instrução.
Stack.Count

Contém


Este método é usado para ver se um elemento está presente na pilha. Abaixo está a sintaxe geral desta instrução. A instrução retornará true se o elemento existir, senão retornará o valor false.
Stack.Contains(element)

Agora vamos ver isso funcionando em um nível de código. Todo o código abaixo mencionado será gravado em nosso aplicativo de console. O código será gravado em nosso arquivo Program.cs.

No programa abaixo, escreveremos o código para ver como podemos usar os métodos mencionados acima.

Exemplo 1:Método Stack.Push()


Neste exemplo, veremos


using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args)
  {
   Stack st = new Stack();
   st.Push(1);
   st.Push(2);
   st.Push(3);

   foreach (Object obj in st)
   {
    Console.WriteLine(obj);
   }
    Console.WriteLine(); Console.WriteLine();
    Console.WriteLine("The number of elements in the stack " +st.Count);
    Console.WriteLine("Does the stack contain the elements 3 "+st.Contains(3));
    Console.ReadKey();
  }
 }
}

Explicação do código:-
  1. A primeira etapa é usada para declarar a pilha. Aqui estamos declarando “st” como uma variável para armazenar os elementos de nossa pilha.
  2. Em seguida, adicionamos 3 elementos à nossa pilha. Cada elemento é adicionado por meio do método Push.
  3. Agora, como os elementos da pilha não podem ser acessados ​​pela posição do índice, como a lista de matrizes, precisamos usar uma abordagem diferente para exibir os elementos da pilha. O Object (obj) é uma variável temporária, que é declarada para conter cada elemento da pilha. Em seguida, usamos a instrução foreach para percorrer cada elemento da pilha. Para cada elemento da pilha, o valor é atribuído à variável obj. Em seguida, usamos o comando Console.Writeline para exibir o valor no console.
  4. Estamos usando a propriedade Count (st.count ) para obter o número de itens na pilha. Esta propriedade retornará um número. Em seguida, exibimos esse valor no console.
  5. Em seguida, usamos o método Contains para ver se o valor de 3 está presente em nossa pilha. Isso retornará um valor verdadeiro ou falso. Em seguida, exibimos esse valor de retorno ao console.

Se o código acima for inserido corretamente e o programa for executado, a seguinte saída será exibida.

Saída:



A partir da saída, podemos ver que os elementos da pilha são exibidos. Além disso, o valor de True é exibido para dizer que o valor de 3 está definido na pilha.

Observação :Você notou que o último elemento colocado na pilha é exibido primeiro. Este é o elemento mais alto da pilha. A contagem de elementos da pilha também é mostrada na saída.

Exemplo 2:Método Stack.Pop()


Agora vamos ver a funcionalidade "remover". Veremos o código necessário para remover o elemento mais alto da pilha.


using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DemoApplication
{
 class Program
 {
  static void Main(string[] args)
  {
   Stack st = new Stack();
   st.Push(1);
   st.Push(2);
   st.Push(3);
   
   st.Pop();

   foreach (Object obj in st)
   {
    Console.WriteLine(obj);
   }
    Console.ReadKey();
  }
 }
}

Explicação do código:-
  1. Aqui nós apenas emitimos o método pop que é usado para remover um elemento da pilha.

Se o código acima for inserido corretamente e o programa for executado, a seguinte saída será exibida.

Saída:



Podemos ver que o elemento 3 foi removido da pilha.

Resumo


Linguagem C

  1. Expressões, instruções e blocos em C# (com exemplos)
  2. C++ do… while loop com exemplos
  3. Ponteiros C++ com exemplos
  4. Tipo de dados C++ Char com exemplos
  5. Sobrecarga do operador C++ com exemplos
  6. Funções C++ com exemplos de programas
  7. Tutorial de coleções de C# com exemplos
  8. Python String count() com EXEMPLOS
  9. Função Python round() com EXEMPLOS
  10. Função Python map() com EXEMPLOS