Com o Sorting, é possível visualizar passo a passo a execução dos algorítmos de HeapSort, Insertion Sort, MergeSort e QuickSort, permitindo ao usuário alterar o tamanho da lista e o delay entre operações.
Abaixo, o fluxo de utilização:
Na primeira imagem, temos a vista inicial do aplicativo, com uma lista desordenada na vertical e um botão flutuante no canto inferior direito. Ao clicar no botão flutuante, outros botões são apresentados. Com o primeiro, parâmetros podem ser configurados, pelo menu apresentado na terceira imagem. Após configurar como desejar, ao pressionar 'Run', o algorítmo começa a ser executado, como mostrado na quarta imagem. As duas barras destacadas são as que trocam de lugar no passo em questão. O processo pode ser pausado por meio do botão flutuante, ou finalizará quando a lista estiver ordenada. Ao fim, na quinta imagem, temos a lista ordenada. Para recomeçar, basta abrir o menu principal e selecionar 'New random list', voltando ao estado da primeira imagem.
Este é um projeto desenvolvido com o objetivo de estudar algorítmos de ordenação, bem como o desenvolvimento de aplicativos híbridos. O app foi construido utilizando o React Native, e os testes são realizados com o Jest. O processo de build é realizado pela plataforma Expo.
Após instalar, basta abrir o aplicativo para iniciar seu uso. As interações são feitas através do botão flutuante no canto inferior direito.
Escolha o algorítmo de ordenação usado, o tamanho da lista e o delay, em milissegundos, entre cada passo.
Cria uma nova lista aleatória para ser ordenada.
Executa a simulação com a lista atual e os parâmetros selecionados. Em cada passo, os elementos realizando troca de posição são destacados em verde, enquanto os outros permanecem azuis. Durante a simulação, o botão flutuante se torna um botão de 'Pause', que interrompe a execução. Caso o pressione, pode-se dar continuidade à execução clicando em 'Run' novamente.
- Dispositivo Android.
- Método de transferência de arquivos do computador para o dispositivo.
- Na aba de Releases, baixar o arquivo APK e transferí-lo para o dispositivo.
- No dispositivo, selecionar o arquivo e permitir a instalação.
- Após a instalação, basta utilizá-lo como um app normal.
- Emulador de dispositivo móvel (Android ou iOS) ou dispositivo Android conectado via USB.
- Node.js na versão 13.13.0. Recomendado o uso do nvm (Node Version Manager).
- Clonar o repositório.
- Abrir o emulador de dispositivo móvel.
- Acessar a pasta-raíz do projeto.
- Instalar as dependências com
npm install
. - Executar o projeto com
expo start
. Um servidor local será aberto. - Acessar o servidor pelo navegador e selecionar run on Android device/emulator ou run on iOS simulator, na barra lateral.
- Conta do Expo já conectada no terminal.
- Iniciar o processo de build com
expo build:<plataforma_desejada>
. Por exemplo,expo build:android
. - Selecionar o formato de build desejado, como APK.
- Aguardar o processo de inicialização do build. Um link será gerado para acompanhar o processo (no formato
https://expo.io/dashboard/<usuário_expo>/builds/<build_id>
). - No site, ao fim do processo, um botão de download estará disponível.