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

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

Sites e vídeos sem propagandas? Sim, é possível através da exploração de uma falha!

Seguramente você já se deparou com sites que bloqueiam o conteúdo da página e te obrigam a assinar determinado serviço para ler o conteúdo, certo? Ou foi tentar assistir aquele vídeo e as propagandas em tela cheia não pararam de surgir. Bem, todos já nos deparamos com isso, no entanto, um bug de...

Ler Notícia Completa

Inteligência Artificial cria antibiótico super potente

Pesquisadores do MIT (EUA) identificaram um novo e poderoso composto antibiótico usando um algoritmo de aprendizado de máquina, uma técnica de inteligência artificial. Em testes de laboratório, a droga matou algumas das bactérias causadoras de doenças mais problemáticas do mundo, incluindo algu...

Ler Notícia Completa

Google lança programa para capacitar profissionais brasileiros e com direito a bolsas

O Google iniciou nesta terça-feira (17) o Certificado Profissional de Suporte em TI para brasileiros. Trata-se de um curso desenvolvido pela gigante de tecnologia em parceria com a Coursera. Inicialmente, o módulo de ensino foi anunciado a um valor de US$ 39 por mês. Entretanto, sofreu uma redu...

Ler Notícia Completa
Você gostará destes vídeos!