Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Federal Fluminense - Pólo Universitário de Rio das Ostras Professor: Dalessandro Soares Vianna Data: 26/02/2013 Disciplina: Estrutura de Dados Prova: P2 Nome do Aluno: ....................................................................... Matrícula: ........................ 1a Questão (3,0): Suponha a manipulação de um vetor genérico de carros (chassi e quilometragem) e motos (placa e quilometragem): (1,5) Implemente uma função que retorne o número de veículos (carros e motos) existentes no vetor com quilometragem superior a 50.000km. Pode-se assumir que neste momento o vetor possui elementos inseridos em todas as suas posições. (1,5) Implemente uma função que insira um elemento na posição (pos) do vetor. Essa função deve receber como parâmetros o vetor e a posição pos. Os dados a serem inseridos devem ser lidos no interior da função. 2a Questão (3,5): Suponha a manipulação de uma matriz genérica de imóveis – apartamentos (área, valor do condomínio e custo do imóvel) e casas (área, bairro e custo do imóvel): (0,5) Forneça a estrutura de dados do “tipo genérico”. (1,5) Implemente uma função que insira um elemento na posição (lin, col) da matriz. Essa função deve receber como parâmetros a matriz, a linha lin e a coluna col. Os dados a serem inseridos devem ser lidos no interior da função. (1,5) Implemente uma função que imprima na tela as informações do imóvel de maior custo/m2, ou seja, de maior relação custo do imóvel/área. Pode-se assumir que neste momento a matriz possui elementos inseridos em todas as suas posições. 3a Questão (3,5): A estrutura de dados hash serve para agilizar a busca por uma informação. Ela pode ser implementada usando como base diferentes estruturas: vetor, lista, vetor de listas, lista de listas, etc. Deseja-se desenvolver um tipo abstrato de dados (TAD) para a estrutura hash, o qual deve permitir que informações sejam inseridas e removidas, além de propiciar uma busca eficiente por um elemento da estrutura. O TAD implementado usa como base um vetor de listas. Desta forma, este TAD fará uso de outro TAD para manuseio de uma lista encadeada. O TAD HASH deverá fornecer as seguintes opções de manipulação: Remover um elemento j – o elemento j é removido da lista referente a uma posição i do vetor. Esta posição i é obtida aplicando-se a função hash sobre o valor do elemento j. Inserir um elemento j – o elemento j é inserido na lista referente a uma posição i do vetor. Esta posição i é obtida aplicando-se a função hash sobre o valor do elemento j. Buscar um elemento j – verifica-se a existência do elemento j na lista referente a uma posição i do vetor. Esta posição i é obtida aplicando-se a função hash sobre o valor do elemento j. Deseja-se saber como ficariam os dois TADs solicitados, sabendo que as funções implementadas foram: HASH: Inserir, Remover, Buscar, hash e VerificarPrecisao. Lista: InserirInicio, InserirFim, EstarVazia, Remover e Buscar;
Compartilhar