Estou fazendo um trabalho sobre pilha de arrays abordando os seguintes tópicos:
Histórico e onde pode ser empregada.
Alguém conhece um boa fonte de pesquisa em português que discorra sobrre esses tópicos?
Além disso preciso de um exemplo de código. Sei que existe no java uma classe para implementação de pilha, a classe “Stack”, porém não sei como possa acessar o código dessa classe na íntegra. Alguém pode me dizer como? Essa classe “Stack” do java é uma implementação de pilha de arrays?
Eu sei o que é pilha e o que é array, mas o que seria uma pilha de arrays? Stack<Object[][]> ???
Sobre o código fonte, vem junto do JDK.
victorwss
A interface é java.util.Stack.
Também não entendi o que é “pilha de arrays”. Você quer usar um array como se fosse uma pilha ou quer um Stack<E[]> onde E é o tipo de elemento?
cassius_fpu
Cara, desejo que a classe empilhe elementos do tipo “Object”. Acho que fiz confusão…
Consegui localizar o código da classe Stack dentro de “C:\Arquivos de programas\Java\jdk1.6.0_07\src.zip”
E sobre o histórico das pilhas e os diversos casos que podemos empregá-la, alguém tem um link que me fale sobre esses assuntos?
zirocool
cassius_fpu:
Cara, desejo que a classe empilhe elementos do tipo “Object”. Acho que fiz confusão…
Consegui localizar o código da classe Stack dentro de “C:\Arquivos de programas\Java\jdk1.6.0_07\src.zip”
E sobre o histórico das pilhas e os diversos casos que podemos empregá-la, alguém tem um link que me fale sobre esses assuntos?
Wikipedia?
cassius_fpu
Wikipédia e Google já foram descartados…
zirocool
Aii aii aii… fudeu entao, pq geralmente vem de lá essas partes teóricas… hehee
victorwss
Se wikipédia e google estão descartados, não há muito o que dizer.
Bem, pihas são usadas em vários lugares. Um exemplo típico é na análise sintática de um compilador ou então na chamada de métodos da linguagem java (afinal, o Stack de Stacktrace vem disso).
Um exemplo didático, mas praticamente inútil na vida real é o problema das torres de hanói.
Um exemplo mais aplicável seria uma pilha que guarda estados de uma aplicação. Sempre que usuário edita algo um novo estado é empilhado. Quando ele desfaz alterações (ou seja, dá Undo ou aperta Ctrl+Z) o estado é desempilhado.