Vous êtes sur la page 1sur 3

Lista de Exerccios 2 Bimestre Estruturas de Dados Aplicadas

Entregar no dia da Avaliao Bimestral (19/11/2015)


Individual vale como nota de prtica
1. Alterar a classe Fila, para que ela no fique cheia. A classe deve ter um construtor conforme abaixo:
public Fila(int tam, int aumento)

A Fila deve funcionar de modo que, quando uma insero fizer com que a fila fique cheia, o algoritmo
dever aumentar o tamanho da fila, em aumento elementos, de modo transparente para o usurio.
Deste modo, o mtodo enfileirar no dever nunca dar mensagem de erro ou de fila cheia.

Fazer um main que faa uso da nova fila. O main dever criar uma fila, e apresentar um menu ao
usurio com as opes para Inserir um elemento na fila, Remover um elemento da fila, Mostrar os
elementos da fila.

Exemplo:
Fila f = new Fila(100, 10);
No exemplo acima, o usurio est criando uma fila de 100 posies iniciais, e quando ela ficar cheia, 10 novas
posies sero criadas.

2. Fazer um programa para ler um nmero em hexadecimal, e convert-lo para decimal.


Usar uma Fila na soluo do problema.
3. Implementar uma lista duplamente ligada com todos os mtodos de utilizao de lista.
a. Implementar uma classe Principal que cria uma lista duplamente ligada e mostra um menu com
as opes inserir no incio, inserir no meio, inserir no final, excluir e mostrar a lista.

4. (ENADE) A pilha uma estrutura de dados que permite a insero/remoo de itens dinamicamente
seguindo a norma de ltima a entrar, primeiro a sair. Suponha que para uma estrutura de dados, tipo
pilha, so definidos os comandos:

PUSH (p, n): Empilha um nmero n em uma estrutura de dados do tipo pilha p;

POP (p): Desempilha o elemento no topo da pilha.

Considere que, em uma estrutura de dados tipo pilha p, inicialmente vazia, sejam executados os
seguintes comandos:
PUSH (p, 10)
1

PUSH (p, 5)
PUSH (p, 3)
PUSH (p, 40)
POP (p)
PUSH (p, 11)
PUSH (p, 4)
PUSH (p, 7)
POP (p)
POP (p)
Aps a execuo dos comandos, o elemento no topo da pilha p e a soma dos elementos armazenados
na pilha p so, respectivamente:
(a) 11 e 29
(b) 11 e 80
(c) 4 e 80
(d) 7 e 29
(e) 7 e 40

5. (ENADE) No desenvolvimento de um software que analisa bases de DNA, representadas pelas letras
A, C, G, T, utilizou-se as estruturas de dados: pilha e fila. Considere que, se uma sequncia representa
uma pilha, o topo o elemento mais esquerda; e se uma sequncia representa uma fila, a sua frente
o elemento mais esquerda.
Analise o seguinte cenrio: a sequncia inicial ficou armazenada na primeira estrutura de dados na
seguinte ordem: (A, G, T, C, A, G, T, T). Cada elemento foi retirado da primeira estrutura de dados e
inserido na segunda estrutura de dados, e a sequncia ficou armazenada na seguinte ordem: (T, T, G, A,
C, T, G, A). Finalmente, cada elemento foi retirado da segunda estrutura de dados e inserido na terceira
estrutura de dados e a sequncia ficou armazenada na seguinte ordem: : (T, T, G, A, C, T, G, A).
Qual a nica sequncia de estruturas de dados apresentadas a seguir pode ter sido usada no cenrio
descrito acima?
(a) Fila Pilha Fila.
(b) Fila Fila Pilha
(c) Fila Pilha Pilha
(d) Pilha Fila Pilha
(e) Pilha Pilha - Pilha
2

6. Implementar a classe ListaLigada, que:

Armazene objetos

Implementar um programa principal que armazene objetos de Cadastro na Lista e utilize as opes de
cadastrar, editar, excluir, pesquisar e listar, conforme operao escolhida pelo usurio.
Cadastro: registro que contenha nome, email, endereo, telefone, idade.
7.

Desenvolver um programa em Java para ler n registros (definio abaixo), armazen-los em uma
pilha, calcular e mostrar a mdia de idade das pessoas e o total dos salrios.
O usurio deve informar inicialmente quantos registros ele ir digitar (n).
Cada item acima deve ser processado em um mdulo (funo/procedimento) separado.
O programa principal (main) deve criar uma pilha para armazenar os n registros, e esta pilha deve ser
passada por parmetro para as demais funes/procedimentos.
OBS.: A pilha no deve ser esvaziada.
Registro:
nome

String

idade

inteiro

salrio

float

Vous aimerez peut-être aussi