Tabela Rash

595 palavras 3 páginas
/*Em duplas Critérios de avaliação: - edentação - documentação - lógica e execução - otimização
- apresentação: domínio e capacidade de explicação (os códigos entregues deverão ser apresentados)
Construir um programa em C que receba números inteiros entre 0 a 99 e os adicione em uma tabela hash (vetor de 10 posições).
Os processos de inserção, busca e remoção deverão ser baseados no cálculo de endereçamento: função( h ) = chave % tamanhoVetor.
O tratamento de colisão deverá ser o ENCADEAMENTO SEPARADO (uso de listas encadeadas em vetores). Finalmente, o programa deverá ter um MENU com a seguinte estrutura: 1 - Inserir 2 - Pesquisar 3 - Remover 4 - Sair Opção: _ Sempre que um dado for inserido é necessário: - mostrar o endereço calculado para o dado; - se houve ou não colisão; Sempre que um dado for pesquisado ou removido é necessário: - mostrar o endereço calculado para o dado; - e se estava ou não em situação de colisão;*/

//Nomes: Rodrigo e Igor

#include
#include
#include
#define TAM 10

typedef struct cel{ int chave; // valor a ser inserido struct cel *prox; //ponteiro para celula proxima
}Celula;

/* Esta funcao insere uma nova celula já ordenado em uma lista encadeada.
* A nova celula eh inserida no final da lista.
* Ao final, a lista modificada eh retornada
*/
Celula *inserir(int valor, Celula *lista){ int aux;
Celula *nova,*p; nova = (Celula *) malloc(sizeof(Celula)); nova->chave = valor;

if(!lista){ printf("o numero %d nao se encontra em colisao\n",valor); nova->prox=NULL; lista=nova;
}
else{//quando entra nesse else, já está em colisão printf("o numero %d se encontra em colisao\n",valor); p=lista; while(p->prox!=NULL) p=p->prox; if(nova->chave < p->chave){//inserir ordenado aux=nova->chave; p->chave=nova->chave; nova->chave=aux; } p->prox=nova; nova->prox=NULL;
}
return lista;
}

/* Esta funcao recebe como parametro o valor a ser
* removido e a lista

Relacionados

  • Tabela Rash - C#
    814 palavras | 4 páginas
  • ARV DRUGS
    1551 palavras | 7 páginas
  • MANUAL DE ADMINISTRAÇÃO DE MEDICAMENTOS INJETÁVEIS
    29879 palavras | 120 páginas
  • Arquivo
    1669 palavras | 7 páginas
  • PSAD
    2558 palavras | 11 páginas
  • doenças exantemáticas
    2181 palavras | 9 páginas
  • 1188 2051 1 SM
    3551 palavras | 15 páginas
  • bula gabapentina
    5983 palavras | 24 páginas
  • Transtornos do aprender
    2763 palavras | 12 páginas
  • Estudo de caso de um bebe recem nascido
    3994 palavras | 16 páginas