Anda di halaman 1dari 1

Trabalho 1 - Pesquisa e Ordenao de Dados - ELC 1068 1) Dada uma tabela contendo as colunas (chave, nome_proprietario, carro), armazenada

inicialmente em um arquivo, copie esta tabela para a memria e implemente um algoritmo para, usando VIO, reordenar a tabela fisicamente. 2) Implemente um algoritmo para a converso da representao VIO para lista encadeada usando a mesma tabela, e implemente um algoritmo para a converso da lista encadeada para VIO. 3) Ainda, usando a mesma tabela, ordene os dados pelos mtodos de seleo direta e insero direta e compare quanto ao nmero de trocas, para uma entrada aleatria. Avalie tambm o tempo de execuo. O que acontece com o nmero de trocas e com o tempo de execuo se a tabela j estiver ordenada? 4) Implementar uma verso do algoritmo quicksort para ordenar palavras com 3 caracteres, como bee, sea, dog, bis, tea, the, fly, cat. As palavras devem ser acessadas atravs de um vetor armazenado em memria. Comparar este algoritmo com uma verso do algoritmo heapsort para ordenar palavras com 3 caracteres. Qual algoritmo realiza mais trocas? 5) (adaptado de Ziviani, 2011) Suponha que voc tenha que ordenar vrios vetores com 100, 10.000, 1.000.0000 nmeros inteiros. Para todos os tamanhos de arquivos necessrio usar a ordenao no menor tempo possvel. (i) Que algoritmo voc usaria para cada tamanho de vetor? (ii) Se for necessrio manter a ordem relativa de itens com chaves iguais (isto , manter a estabilidade), que algoritmo voc usaria para cada tamanho de vetor? Usando implementaes e tempos de execuo dos algoritmos quicksort, heapsort, bolha, insero direta, seleo direta e shellsort, justifique a sua resposta. 6) Compare o desempenho do algoritmo mergesort em relao ao quicksort para ordenar vrios vetores com 100, 10.000, 1.000.0000 nmeros inteiros. 7) Implementar uma verso do algoritmo radixsort para ordenar palavras com 3 caracteres, como bee, sea, dog, bis, tea, the, fly, cat. Compare esta verso quanto ao nmero de trocas com a verso do quicksort que foi implementada no exerccio 4. Para diferentes entradas, qual o mtodo mais eficiente? 8) Implementar uma rvore do tipo SBB para armazenar chaves do tipo bee, sea, dog, bis, tea, the, fly, cat. A rvore deve suportar as operaes de pesquisa (chave), insero (chave), remoo (chave), e listagem de itens da rvore. 9) Implementar uma rvore trie e uma rvore PATRICIA para armazenar a seguinte sequencia de nmeros inteiros: 1900, 1901, 1902, 1903, 1978, 1977, 1965, 1968, 1963, 1989, 2001, 2003, 2006, 2020, 2012, 2013. Qual rvore requer o menor nmero de ns? 10) (adaptado de Ziviani, 2011) Implementar uma funo para pesquisar o k-simo elemento de um dicionrio implementado como uma rvore binria, e como uma funo hash (com encadeamento ou endereamento aberto para tratar colises). Qual estrutura mais eficiente levando em conta o nmero de comparaes e o tempo de busca? ---bom trabalho

Anda mungkin juga menyukai