Skip to content

Implementation of data-structures from basic to advanced in C and testing them all, all the codes are based in this playlist: https://youtu.be/bryesHll0vY?si=W-r62UHfNyX0ryHC

Notifications You must be signed in to change notification settings

welli7ngton/c-data-structures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Estruturas de Dados em C

Bem-vindo ao repositório Estruturas de Dados em C! Este projeto tem como objetivo implementar TADs (Tipos Abstratos de Dados) que representam diversas estruturas de dados, junto com uma suíte de testes para validar seu funcionamento.

Sumário

Estrutura do Projeto

  • src/: Contém os TADs das estruturas de dados implementados.
    • Exemplo atual: sequential_list/ (lista sequencial estática).
  • test/: Código dedicado para testes unitários e validações dos TADs.
  • Makefile: Automatiza a compilação dos testes, facilitando o desenvolvimento e a manutenção.

Funcionalidades Implementadas

1. Lista Sequencial Estática

  • Arquivo fonte: sequential_list.c
  • Cabeçalho: sequential_list.h
  • Testes: test/sequential_list.c
  • Descrição: Uma lista estática que armazena elementos em um array fixo, permitindo operações básicas como inserção no final, inicio, organizada (sorted), remoção por index, remoção por dado, busca por index e busca por dado. Estou usando uma estrutura de dados personalizada simulando o cadastro de um aluno para ter um dado dinâmico para trabalhar.

2. Lista Dinamicamente Encadeada

  • Arquivo fonte: dinamic_list.c
  • Cabeçalho: dinamic_list.h
  • Testes: test/dinamic_list.c
  • Descrição: Uma lista dinamicamente encadeada armazena elementos em nós, onde cada nó contém um valor e um ponteiro para o próximo. Isso permite inserção e remoção eficientes de elementos, sem necessidade de realocar memória. Estou usando essa estrutura para simular o cadastro dinâmico de alunos, facilitando a adição e remoção de registros sem um tamanho fixo de lista.

Como Usar

Pré-requisitos

  • Compilador GCC instalado.
  • Make instalado.

Compilação dos Testes

  1. Escolha o arquivo a ser testado, definindo o parâmetro TEST. Por exemplo:

    make TEST=sequential_list
  2. Execute o programa gerado:

    ./sequential_list.test
  3. Para limpar os executáveis:

    make clean

About

Implementation of data-structures from basic to advanced in C and testing them all, all the codes are based in this playlist: https://youtu.be/bryesHll0vY?si=W-r62UHfNyX0ryHC

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published