Minicursos - C#

Pilhas


Se você entendeu o conceito de filas, não terá qualquer dificuldade para entender as pilhas. Aqui vamos imaginar uma pilha de cartas de baralho, ok? Se formos adicionando cartas uma em cima da outra, teremos uma pilha. No entanto, se em determinado momento quisermos começar a retirar as cartas, uma a uma, a última carta colocada será a primeira a ser retirada. Este é o conceito de pilha! Enquanto nas filas o primeiro elemento a chegar era o primeiro a sair, nas pilhas o primeiro elemento a chegar é o último a sair, pois todos os outros estarão em cima dele e precisarão ser retirados primeiro.

Para criarmos essa estrutura em C#, utilizamos o comando Stack, vejam:

Pilhas - C#

O foreach, no final do código, é para realizar a impressão da pilha. Vejamos como ela está:

Pilhas - C#

Percebam que o último elemento a ser adicionado é o primeiro a aparecer, ou seja, o primeiro que sairá da pilha caso retiremos algum elemento. Essa é a grande diferença entre fila e pilha.

Exibindo o primeiro elemento da pilha

Para exibir o primeiro elemento de uma pilha o método a ser chamado é o mesmo do utilizado nas filas, o Peek.

Pilhas - C#

Executando, teremos:

Pilhas - C#

Removendo um elemento da pilha

O comando que remove elementos de uma pilha é o Pop. Vejam um exemplo de sua utilização abaixo:

Pilhas - C#

Inseri dois foreach, um antes da remoção e outro logo em seguida, para demonstrar, no Console, a alteração na pilha. Vejamos como ficou:

Pilhas - C#

Notem que a primeira carta, que foi a última a ser inserida, foi removida.

Contando elementos de uma pilha

Assim como numa fila, aqui também temos o método Count, que nos retorna um inteiro com o número de elementos presentes na pilha.

Pilhas - C#

Executando o código, teremos:

Pilhas - C#

Aí está nossa variável contendo o número de elementos presentes na pilha.

Excluindo todos os elementos da pilha

Para limparmos toda a pilha, deixando-a sem qualquer elemento, devemos utilizar o método Clear(), exatamente como fizemos na fila.

Pilhas - C#

Com o foreach do final do código, vamos tentar exibir a pilha:

Pilhas - C#

Está vazia, ou seja, os elemento foram corretamente removidos.

Bem, estas foram as funções que separei sobre pilhas. Assim como as filas, são muito utilizadas em jogos, mas seu uso é totalmente genérico. Seguramente você as usará em breve!

Com pilhas eu encerrei essa parte básica sobre C#. Alguns dos tópicos explicados até poderiam ter sido feitos utilizando a interface gráfica no lugar do Console, mas isso poderia dispersar sua atenção. A partir do próximo tópico já utilizarei a interface gráfica, ou seja, os famosos Windows Forms, com botões, menus, radiobuttons, checkbox, imagens, enfim, não mais teremos esta tela preta do Console nos exemplos! Teremos um minicurso mais bonito e interessante, pois teremos a aparência de uma aplicação real. Se você acompanhou tudo até aqui e absorveu boa parte do que foi explicado, ótimo! Saiba que a parte mais entediante já passou!



Algumas notícias

Xiaomi vende 52,9 milhões de celulares no segundo trimestre de 2021 e faturamento dispara

A gigante chinesa Xiaomi registrou um aumento de quase 85% no seu faturamento no segundo trimestre de 2021 em comparação ao mesmo período do ano passado. A receita divulgada pela empresa foi de 13,5 bilhões de dólares (algo em torno de 70 bilhões de reais) nos meses de abril a junho deste ano...

Ler Notícia Completa

Galaxy S9 e Galaxy S9 Plus receberão atualização de segurança este mês

A Samsung começou a liberar esta semana, para proprietários dos modelos Galaxy S9 e Galaxy S9 Plus, uma nova atualização de segurança. Por enquanto somente alguns países da Europa receberam o pacote, que deve ser dis...

Ler Notícia Completa

Novas câmeras 'debaixo da tela' da Oppo surpreendem

Para muitos, colocar uma câmera embaixo da tela de um celular era uma tarefa impensável, por conta de diversos problemas técnicos. Os primeiros testes da Oppo que se propuseram a isso geravam imagens de qualidade bastante insatisfatória, já que a captação da luz era prejudicada pela tela. A prim...

Ler Notícia Completa

As memórias DDR5 estão chegando e trarão muitas melhorias

A próxima geração de memórias RAM já possui especificações definidas e promete grande melhoria em relação às atuais DDR4. E o mais importante: mesmo com desempenho bastante superior, elas consumirão menos energia. A tensão de trabalho das memórias DDR5 será de apenas 1.1V contra os 1.2V das atu...

Ler Notícia Completa

Google Chrome consumirá menos memória RAM em breve

O navegador da gigante de buscas da Internet é, sem dúvida, um dos melhores disponíveis, mas é inegável que o consumo de memória RAM por parte dele é exagerado. Este problema já se estende por anos, mas parece que em breve ele terá uma solução. Um novo recurso do Windows 10, chamado SegmentHeap...

Ler Notícia Completa
Ajude o Contém Bits com um cafezinho!

Se você gostou do artigo, se ele lhe foi útil de alguma maneira e você quiser ajudar o Contém Bits, saiba que é simples, fácil e rápido. Basta clicar na imagem do PayPal (ou no cafezinho) e seguir as instruções, em ambiente seguro e com o respaldo do Paypal. Eu agradeço muito! :)


Você gostará destes vídeos!