Exercícios
- Descomprima o ficheiro fornecido abaixo. Analise os ficheiros
ST.h
,STlist.c
eSTtab.c
, que implementam uma tabela de símbolos baseada em listas e em tabelas de dispersão, respectivamente. Considere ainda os ficheirosHASH.h
eHASH.c
que implementam funções de dispersão para vários tipos de dados. - O ficheiro
words.c
implementa um programa que lê um ficheiro de texto, passado como argumento na linha de comandos, e que subsequentemente deverá imprimir no final um relatório com o número de ocorrências de cada palavra. Complete o ficheirowords.c
, preenchendo APENAS a zona indicada em comentário e implemente ainda o ficheiroItem.h
que este inclui. Compile dando o comandomake
. A compilação deverá gerar dois executáveis:wordlist
ewordtab
, que utilizam tabelas de símbolos baseadas em listas e em tabelas de dispersão, respectivamente. - Compare o desempenho das duas versões geradas na alínea anterior para o ficheiro
example.txt
fornecido, utilizando o comandotime
na linha de comandos, colocado antes do nome do programa. - Compare o desempenho entre versões com a tabela de símbolos baseada em tabelas de dispersão de diferentes dimensões.