Este projeto demonstra a implementação de uma tabela hash em Python, com o objetivo de organizar os estados brasileiros em 10 posições de uma tabela, utilizando suas siglas e nomes completos. O projeto inclui funcionalidades adicionais, como a inserção personalizada das iniciais e nome do desenvolvedor na tabela hash.
- Listagem das Posições da Tabela Hash: Mostra as 10 posições da tabela hash, mesmo que estejam vazias.
- Inserção Automática de Estados: Insere automaticamente os estados brasileiros com suas respectivas siglas e nomes completos.
- Inserção Personalizada: Adiciona as iniciais e o nome completo do desenvolvedor, "JF - Juan Frois", à tabela hash.
- Combinação de Dados: Exibe uma tabela hash contendo tanto os estados brasileiros quanto o nome personalizado.
- Finalização do Programa: Permite encerrar o programa de forma segura.
- A tabela hash é implementada utilizando listas encadeadas para lidar com colisões.
- Regras específicas:
- A sigla "DF" (Distrito Federal) é sempre armazenada na posição 7 da tabela hash.
- A função hash baseia-se nos valores ASCII das duas primeiras letras da sigla do estado.
- Clone o repositório:
git clone https://github.com/seu-usuario/TabelaHash-Python.git
- Navegue até o diretório do projeto:
cd TabelaHash-Python
- Execute o programa:
python tabela_hash.py
O programa apresenta as seguintes opções no menu:
- Listar as posições da tabela hash.
- Listar a tabela hash com os estados e siglas automaticamente adicionados.
- Adicionar "JF - Juan Frois" à tabela hash.
- Combinar os estados e o nome personalizado na tabela hash.
- Finalizar o programa.
Exibe todas as posições, indicando se estão preenchidas ou não.
Adiciona automaticamente os estados e suas siglas.
Insere "JF - Juan Frois" na tabela.
Lista todos os estados e o nome adicionado.
Encerramento seguro do programa.
- ElementoListaEncadeada: Representa um elemento de uma lista encadeada, contendo a sigla e o nome do estado.
- ListaEncadeada: Implementa uma lista encadeada para armazenar múltiplos elementos.
- TabelaHash: Implementa a tabela hash com uma função hash personalizada para organizar os estados.
hashfuncao(k)
: Calcula a posição na tabela hash com base na sigla do estado.inserirEstados(tabela)
: Insere todos os estados na tabela hash.menu()
: Exibe o menu interativo e processa as opções escolhidas pelo usuário.