{"id":21881671,"url":"https://github.com/gust4vosales/algorithms-and-data-structures-2","last_synced_at":"2025-03-22T00:44:58.780Z","repository":{"id":108130288,"uuid":"290019782","full_name":"Gust4voSales/Algorithms-and-Data-Structures-2","owner":"Gust4voSales","description":"Code from the activities developed during the Algorithms and Data Structures II course in 2020.3 - UFAPE","archived":false,"fork":false,"pushed_at":"2020-11-18T13:46:15.000Z","size":117,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-26T19:11:18.899Z","etag":null,"topics":["algorithms","algorithms-and-data-structures","algoritmos","arvore-avl","avl-tree","bst-tree","grafos","graph","kruskal-algorithm","rb-tree"],"latest_commit_sha":null,"homepage":"","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/Gust4voSales.png","metadata":{"files":{"readme":"README-pt.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-08-24T19:22:02.000Z","updated_at":"2020-11-18T13:46:18.000Z","dependencies_parsed_at":"2023-05-12T15:45:52.512Z","dependency_job_id":null,"html_url":"https://github.com/Gust4voSales/Algorithms-and-Data-Structures-2","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gust4voSales%2FAlgorithms-and-Data-Structures-2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gust4voSales%2FAlgorithms-and-Data-Structures-2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gust4voSales%2FAlgorithms-and-Data-Structures-2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Gust4voSales%2FAlgorithms-and-Data-Structures-2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Gust4voSales","download_url":"https://codeload.github.com/Gust4voSales/Algorithms-and-Data-Structures-2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244890089,"owners_count":20527031,"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":["algorithms","algorithms-and-data-structures","algoritmos","arvore-avl","avl-tree","bst-tree","grafos","graph","kruskal-algorithm","rb-tree"],"created_at":"2024-11-28T09:19:55.981Z","updated_at":"2025-03-22T00:44:58.762Z","avatar_url":"https://github.com/Gust4voSales.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"## 🌴 Árvores Binárias \n- [x] Árvore Binária de Busca \n- [x] Árvore AVL\n- [x] Árvore Vermelho-Preta\n\n#### 🛠 Como rodar\n  1. Entre em alguma pasta dentro do diretório \"Arvores\", exemplo: ```cd Arvores/BST```\n  2. Compile para um executável com ```gcc *.c  -o nome_do_executavel```, exemplo: ```gcc *.c  -o resultado```\n  3. Rode o programa com ```./resultado```\n#### 🚧 Teste\n  1. Rode o executável passando o arquivo de entrada (teste.in) e redirecione o resultado para um arquivo de saída(resultado.out) com\n  ```./resultado \u003c teste.in \u003e resultado.out```\n  2. Compare o arquivo de sáida com o arquivo de gabarito (teste_esperado.out) que contém o resultado esperado para o arquivo de entrada usado antes, rode ```diff teste_esperado.out resultado.out```\n  \n## 🧩 Grafos \n- [x] Algorítmo de Kruskal (implementado com a representação Matriz de Adjacência) \n- [x] Algorítmo de Prim (implementado com a representação Lista de Adjacência)\n- [x] Busca em Largura (implementado com a representação Matriz de Adjacência)\n- [x] Busca em Profundidade (implementado com a representação Lista de Adjacência)\n#### 🛠 Como rodar\n  1. Entre em alguma pasta dentro do diretório \"Grafos\", exemplo: ```cd Grafos/AlgoritmoDeKruskal```\n  2. Compile para um executável com ```g++ *.cpp  -o nome_do_executavel```, exemplo: ```g++ *.cpp  -o resultado```\n  3. Rode o programa com ```./resultado```\n\n## 📂 Arquivos\nEsse demo salva livros no disco e também é capaz de lê-los ao implementar uma lógica de indexação onde não é necessário salvar todo o arquivo dos livros na memória, \ninvés disso, nós usamos uma estrutura de indexação. Nesse caso, uma Árvore AVL.\n\nCada nó da árvore armazena apenas o código do livro e seu índice do arquivo dos livros salvos, então estamos economizando muita memória ao armazenar apenas dois inteiros\n(o código e o índice do livro) como conteúdo da estrutura da árvore, no lugar de salvar toda as informações dos livros, o que se tornaria um problema, se tivéssemos, por exemplo,\n1.000.000 de livros.\n\nQuando precisamos ler um livro específico, apenas fazemos uma pesquisa na estrutura de indexação (Árvore AVL) pelo seu código, este nó também contém o índice daquele livro\ndo arquivo de dados, quando o abrimos, já temos a exata posição do livro que queremos, então apenas carregamos ele na memória, não o arquivo de dados inteiro.\nÉ uma implementação eficiente de uso de memória. \n\n#### 🛠 Como rodar\n  1. Entre no diretório \"Arquivos\" com ```cd Arquivos```\n  2. Compile para um executável com ```gcc *.c  -o nome_do_executavel```, exemplo: ```gcc *.c  -o resultado```\n  3. Rode o programa com ```./resultado```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgust4vosales%2Falgorithms-and-data-structures-2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgust4vosales%2Falgorithms-and-data-structures-2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgust4vosales%2Falgorithms-and-data-structures-2/lists"}