Estrutura de dados Questões

2 respostas
Z

Olá pessoal!

Sou novato nessa coisa de programação. Não estou conseguindo desenvolver 3 questões. Se alguem puder me ajudar.

1 ) Solicita ao usuário que discute uma formula matematica e você deverá dizer se ela é valido ou não quando a sua “parentização”.
Ex: ((4+3)*7) - parentrização correta
(4+3)*7) - parentrização incorreta

2 ) Imprementar uma fila com controle de prioridade.
Ex: Imaginem uma fila de banco, devemos priorizar os idoso. Se acionar 1 o idoso sai da fila.

  1. Questão de Arvore Binaria: Implemente um código que mostra todos os nós que estiverem em um determinado nível informado pelo usuário.

Por favor galera me ajude senão vou reprovar nessa materia.

Deste já agradeço ajuda.

2 Respostas

Marlon_Meneses

o que você já tem feito e quais as suas dúvidas?

Z
package PilhaeFila;

public class elemento
{
	
		int valor;
		elemento prox;
		
		
		public elemento(int v, elemento p)
		{
			valor = v;
			prox = p;
		}
		public elemento(elemento p)
		{
			
			prox = p;
		}
		
}
package PilhaeFila;

public class fila
{
	public elemento prim;

	public fila()
	{
		prim = new elemento(null);
	}
	public boolean estavazio()
	{
		if(prim.prox == null)
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	public void entrarnafila(int valor)
	{
		elemento novo = new elemento(valor, null);
		elemento aux = new elemento(prim.prox);

		if(estavazio())
		{
			prim.prox = novo;

		}
		else
		{

			while(aux.prox.prox != null)
			{
				aux.prox = aux.prox.prox;
			}
			aux.prox.prox = novo;

		}

	}
	public void saidadafila(int valor)
	{
		elemento aux = new elemento(prim.prox);
		if(estavazio())
		{
			System.out.println("nao ha elementos");
		}
		else
		{
			prim.prox = aux.prox.prox;
			aux.prox.prox = null;
			aux.prox = null;
	
		}
	}
	public void verificarprimeiro()
	{
		if(estavazio())
		{
			System.out.println("Esta Vazia");
		
		}
		else
		{
			System.out.println("--> "+ prim.prox.valor);
			
		}
	}
	public static void main(String args [])
	{
		fila fi = new fila();

		fi.entrarnafila(5);
		fi.entrarnafila(6);
		fi.entrarnafila(8);
		fi.saidadafila(5);
		fi.saidadafila(6);
		fi.saidadafila(8);

		fi.entrarnafila(6);
		fi.entrarnafila(8);
		fi.saidadafila(6);
		fi.saidadafila(8);
		fi.entrarnafila(20);
		
		
	
		
		fi.verificarprimeiro();
		
	}
}
package PilhaeFila;

public class pilha 
{
	//CRIANDO OBJETO PUBLICO TOPO DO TIPO ELEMENTO 
	public elemento topo;
	public elemento novo;
	
	public pilha()
	{
		//INSTANCIANDO O ELEMENTO TOPO QUE INICIA A LISTA 
		topo = new elemento(null);
		
	}
	public boolean estavazio()
	{
		if(topo.prox == null)
		{
			return true;
		}
		else
		{
			return false;
		}
	}
	public void empilhar(int valor)
	{
		
		novo = new elemento(valor, null);
		if(estavazio())
		{
			topo.prox = novo;
		}
		else
		{
			novo.prox = topo.prox;
			topo.prox = novo;
		}
		
	}
	public void desempilhar()
	{
		elemento aux = new elemento(topo.prox);
		if(estavazio())
		{
			System.out.println("Sem elemento");
		}
		else
		{
			topo.prox = topo.prox.prox;
			aux.prox.prox = null;
			aux.prox = null;
		}
	}
	public void verificartopo()
	{
		if(estavazio())
		{
			System.out.println("Esta vazia");
		
		}
		else
		{
			System.out.println("-------------------");
			System.out.println("[ "+topo.prox.valor+" ]");
		
		}
	}
	
	public static void main(String args[])
	{
		pilha pi = new pilha();
		
		pi.empilhar(2);
		pi.empilhar(1);
		pi.empilhar(10);
		pi.empilhar(12);
		pi.desempilhar();
		pi.desempilhar();
		pi.desempilhar();
		pi.verificartopo();
	}
	
}

Só fiz isso …

Criado 16 de novembro de 2011
Ultima resposta 16 de nov. de 2011
Respostas 2
Participantes 2