Skip to content

Projeto para disciplina de Análise de Algoritmos - comparação experimental entre métodos de ordenação

Notifications You must be signed in to change notification settings

MarcosKrul/analise-experimental-ordenacao

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Análise experimental para comparação entre métodos de ordenação

Sobre

Engenharia de Computação, UEPG - 4º período

Projeto realizado para a disciplina de Análise de Algoritmos

Marcos Renan Krul

Métodos de ordenação comparados

  1. Quick sort
  2. Ordenação digital
  3. Bubble sort

Tecnologias

  • Linguagem C Implementação dos algoritmos de ordenação e da execução da comparação entre eles
  • Python 3.9.2 Script para automatização dos testes de comparação entre os métodos e geração de gráficos (pyplot)

Instalação

  • Clonar o projeto
    mkdir teste-ordenacao
    cd teste-ordenacao
    git clone https://github.com/MarcosKrul/analise-experimental-ordenacao.git .
  • Criacão e ativação do ambiente virtual

Windows

    python -m venv venv
    cmd: .\venv\Scripts\activate.bat
    PowerShell: .\venv\Scripts\activate.ps1

Linux

    python3 -m venv venv
    source venv/bin/activate
  • Instalação das bibliotecas necessárias
    pip install -r requirements.txt
  • Execução
    cd src/scripts
    python index.py

Alterações

Caso haja mudanças no código em C, a dll deve ser gerada novamente. Na raíz do projeto, execute:

    gcc -shared -o ./src/lib/execute.dll -fPIC ./src/execute.c

Resultados

  • Interface principal

Interface principal

  • Comparação entre quicksort e ordenação digital para 5 dígitos

Quicksort e ordenação digital para 5 dígitos

  • Comparação entre quicksort e ordenação digital para 10 dígitos

Quicksort e ordenação digital para 10 dígitos

  • Comparação entre quicksort e ordenação digital para 15 dígitos

Quicksort e ordenação digital para 15 dígitos

Para visualizar os mesmos gráficos (para 5, 10 ou 15 dígitos)

Tamanho inicial: 10000

Tamanho final: 500000

Incremento/passo: 10000

About

Projeto para disciplina de Análise de Algoritmos - comparação experimental entre métodos de ordenação

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published