{"id":26014565,"url":"https://github.com/brenonsc/arraysort","last_synced_at":"2026-06-06T15:32:08.231Z","repository":{"id":205791663,"uuid":"714871835","full_name":"brenonsc/ArraySort","owner":"brenonsc","description":"Repositório criado com o objetivo de comparar diferentes algoritmos de ordenação.","archived":false,"fork":false,"pushed_at":"2023-11-22T00:05:56.000Z","size":25,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2023-11-22T01:57:33.486Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brenonsc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-11-06T02:31:45.000Z","updated_at":"2023-11-22T01:57:34.517Z","dependencies_parsed_at":null,"dependency_job_id":"b59f6f8d-3703-44a3-bd18-c91d5a2dd755","html_url":"https://github.com/brenonsc/ArraySort","commit_stats":null,"previous_names":["brenonsc/arraysort"],"tags_count":0,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brenonsc%2FArraySort","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brenonsc%2FArraySort/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brenonsc%2FArraySort/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brenonsc%2FArraySort/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brenonsc","download_url":"https://codeload.github.com/brenonsc/ArraySort/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242136048,"owners_count":20077590,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-06T02:31:51.686Z","updated_at":"2025-03-06T02:34:00.306Z","avatar_url":"https://github.com/brenonsc.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ArraySort :arrows_counterclockwise::chart_with_downwards_trend:\n\nO repositório \"ArraySort\" é um programa destinado a testar diferentes algoritmos de ordenação em arrays de diversos tamanhos e estados iniciais. Os algoritmos de ordenação incluem Bubble Sort, Improved Bubble Sort, Insertion Sort, Selection Sort, Merge Sort, Quick Sort e Shell Sort. Cada algoritmo será avaliado em relação ao tempo de execução, à quantidade de trocas (ou mesclas, no caso do Merge Sort) e à quantidade de comparações envolvidas no processo de ordenação.\n\n\u003cbr\u003e\n\n## Algoritmos de Ordenação :arrows_counterclockwise:\n\n- **Bubble Sort**: Este é um algoritmo de ordenação simples que compara pares de elementos adjacentes e os troca se estiverem fora de ordem, repetindo esse processo até que nenhum elemento precise ser trocado.\n\n- **Improved Bubble Sort**: Uma variação do Bubble Sort que inclui uma otimização para reduzir o número de comparações no melhor caso.\n\n- **Insertion Sort**: Este algoritmo divide o array em uma parte ordenada e uma parte não ordenada. Ele seleciona elementos da parte não ordenada e os insere na parte ordenada na posição correta.\n\n- **Selection Sort**: O Selection Sort encontra o menor elemento no array e o move para a posição inicial, repetindo esse processo para o restante do array até que todo o array esteja ordenado.\n\n- **Merge Sort**: O Merge Sort é um algoritmo de ordenação eficiente que divide o array em duas metades, ordena cada metade e, em seguida, mescla as duas metades ordenadas.\n\n- **Quick Sort**: O Quick Sort divide o array em torno de um elemento chamado \"pivot\", colocando todos os elementos menores que o pivot à esquerda e todos os elementos maiores à direita, repetindo esse processo para as submatrizes resultantes.\n\n- **Shell Sort**: Shell Sort é uma variação do Insertion Sort que compara elementos distantes em vez de elementos adjacentes, usando um intervalo chamado \"gap\".\n\n\u003cbr\u003e\n\n## Testes :man_scientist:\n\nOs testes serão realizados em arrays de três tamanhos diferentes: 1.000, 10.000 e 100.000 elementos. Cada tamanho de array será testado em três cenários distintos:\n\n1. **Array Ordenado**: Os elementos já estão ordenados.\n2. **Array Aleatório**: Os elementos são organizados aleatoriamente.\n3. **Array em Ordem Decrescente**: Os elementos estão em ordem decrescente.\n\n\u003cbr\u003e\n\n## Métricas :bar_chart:\n\nPara avaliar o desempenho de cada algoritmo, serão registradas as seguintes métricas:\n\n- **Tempo de Execução**: O tempo necessário para ordenar o array.\n- **Quantidade de Trocas (ou Mesclas)**: O número de trocas ou mesclas realizadas durante o processo de ordenação.\n- **Quantidade de Comparações**: O número de comparações realizadas para determinar a ordem dos elementos no array.\n\n\u003cbr\u003e\n\n## Como Executar :arrow_forward:\n\nVocê pode executar o programa de ordenação de arrays usando o Visual Studio ou sua IDE preferida, seguindo estas etapas:\n\n1. **Clone o repositório**:\n\n    `git clone https://github.com/brenonsc/ArraySort.git`\n\n2. **Abra a solução `ArraySort.sln` no Visual Studio ou em sua IDE preferida**.\n3. **Compile e execute o programa**.\n\n\u003cbr\u003e\n\nEste repositório visa fornecer uma visão geral do desempenho dos algoritmos de ordenação em diferentes cenários e tamanhos de array, ajudando os desenvolvedores a escolher a abordagem mais apropriada para suas necessidades de ordenação.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrenonsc%2Farraysort","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrenonsc%2Farraysort","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrenonsc%2Farraysort/lists"}