Pilha

10 respostas
eliz

Gosstaria de saber qual o conceito de pilha em java.
Alguem pode me ajudar.

10 Respostas

Java_Vinicius_Machin

Bom tenta ser mais especifica, vc tah se referindo a estrutura de dados pilha (se for vc pode usar uma classe chamada Stack para implementar e o conceito é o mesmo, lembra do push e pop, então!) ou a pilha da JVM onde são empilhados os métodos e as variáveis ? :roll: :x

eliz

eh a estrutrura de dados pilha,

Java_Vinicius_Machin

Bom em uma estrutura de dados do tipo pilha os primeiros elementos a entrarem (serem incluidos no conjunto) são os ultimos a sairem, funciona como uma pilha de pratos mesmo, imagine vc empilhando pratos em cima da mesa os primeiros que vc colocar obviamente quando vc for retirar serão os ultimos (obedecendo a regra que somente os elementos do topo devem ser retirados). Eh Eliz eu acho que sucintamente é isso, sabe não é o conceito ao pé da letra mas deve ajudar. Caso ainda não tenha entendido de uma “googlada” (procure no google) que com certeza vc vai encontrar coisas muito interessantes e mais esclarecedoras.

dah uma olhada aqui:
http://www.webinformation.hpg.ig.com.br/prog_pilha.htm

K

Tive que criar uma classe simples de pilha para um trabalho de Estrutura de Dados
Segue a mesma:

public class Pilha
{
	int apontador;
	int[] p ;
	
	//Construtor padrão (caso não receba parametros)
	public Pilha()
	{
		p = new int[50];
	}
	
	//Construtor caso receba um inteiro
	public Pilha(int val)
	{
		p = new int[val];
	}
	
	
	//Metodos
	
		public void init()
		{
			apontador = 0;
		}
	
		public void push(int elem)
		{
			p[apontador]=elem;
			apontador++;
		}
		
		public int top()
		{
			return p[apontador-1];
		}
	
		public int pop()
		{
			if(!(isEmpty()))
			{
				apontador--;
				return p[apontador];
			}else return 0;	
		}
	
		public boolean isEmpty()
		{
			if (apontador==0)
				return true;
			else
				return false;
		}
			
}
Sombriks

zandrinha, colocando dever de casa no fórum da comunidade???
:shock:

R

Tem uma apostia no fim da página:

http://wwwp.fc.unesp.br/~erich/ed.html

eliz

vlw pessoal, :smiley:

K

num tem nada a ver com pilha, mas minha dúvida é a seguinte no VB seria muito mais rápido se eu fizesse o metodo q o Kabald fez da seguinte forma (já em java é claro)

public boolean isEmpty()
{
return apontador==0;
}

Isso se aplica ao Java?

Kabaldf:
Tive que criar uma classe simples de pilha para um trabalho de Estrutura de Dados Segue a mesma:
public class Pilha
{
	int apontador;
	int[] p ;
	
	//Construtor padrão (caso não receba parametros)
	public Pilha()
	{
		p = new int[50];
	}
	
	//Construtor caso receba um inteiro
	public Pilha(int val)
	{
		p = new int[val];
	}
	
	
	//Metodos
	
		public void init()
		{
			apontador = 0;
		}
	
		public void push(int elem)
		{
			p[apontador]=elem;
			apontador++;
		}
		
		public int top()
		{
			return p[apontador-1];
		}
	
		public int pop()
		{
			if(!(isEmpty()))
			{
				apontador--;
				return p[apontador];
			}else return 0;	
		}
	
		public boolean isEmpty()
		{
			if (apontador==0)
				return true;
			else
				return false;
		}
			
}

[]s Josemar

K

kvra:
num tem nada a ver com pilha, mas minha dúvida é a seguinte no VB seria muito mais rápido se eu fizesse o metodo q o Kabald fez da seguinte forma (já em java é claro)

public boolean isEmpty()
{
return apontador==0;
}

Isso se aplica ao Java?

Sim sim, mas como tive que apresentar para a turma achei que com if seria mais facil de explicar. Mas isso pode ser feito assim mesmo.

K

valeu! é q apesar de boa experiencia em VB sou novato total em Java.

Criado 26 de abril de 2005
Ultima resposta 28 de abr. de 2005
Respostas 10
Participantes 6