{"id":21953994,"url":"https://github.com/henriqueotogami/data-structure","last_synced_at":"2025-03-22T18:27:39.562Z","repository":{"id":264982120,"uuid":"894783036","full_name":"henriqueotogami/data-structure","owner":"henriqueotogami","description":"Repositório dedicado aos estudos de estrutura de dados em Java com testes unitários e documentação.","archived":false,"fork":false,"pushed_at":"2025-03-20T02:35:54.000Z","size":1418,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-20T03:34:56.527Z","etag":null,"topics":["data-structures","java","javadoc-documentation","junit5","log4j2"],"latest_commit_sha":null,"homepage":"https://henriqueotogami.github.io/data-structure/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/henriqueotogami.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","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},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":"henriqueotogami","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":null,"thanks_dev":null,"custom":null}},"created_at":"2024-11-27T01:31:16.000Z","updated_at":"2025-03-20T02:35:59.000Z","dependencies_parsed_at":"2025-01-04T05:20:42.613Z","dependency_job_id":"01e83b52-88f6-4037-8712-7f0f56ddc79a","html_url":"https://github.com/henriqueotogami/data-structure","commit_stats":null,"previous_names":["henriqueotogami/data-structure"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henriqueotogami%2Fdata-structure","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henriqueotogami%2Fdata-structure/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henriqueotogami%2Fdata-structure/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/henriqueotogami%2Fdata-structure/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/henriqueotogami","download_url":"https://codeload.github.com/henriqueotogami/data-structure/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245001763,"owners_count":20545309,"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":["data-structures","java","javadoc-documentation","junit5","log4j2"],"created_at":"2024-11-29T07:15:02.087Z","updated_at":"2025-03-22T18:27:39.554Z","avatar_url":"https://github.com/henriqueotogami.png","language":"Java","readme":"\u003cdiv align=\"center\"\u003e\n\n## Estrutura de Dados em Java\n### Henrique Otogami\n#### Início: 26-11-2024\n##### Readme versão 2.3\n\n\u003c/div\u003e\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n\u003cimg width=\"auto\" src=\"https://github.com/henriqueotogami/data-structure/blob/main/resources/cover-data-structures.png?raw=true\"\u003e\n\u003c/div\u003e\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://img.shields.io/github/deployments/henriqueotogami/data-structure/github-pages\"\u003e\n\u003c/div\u003e\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n\u003cimg alt=\"GitHub last commit\" src=\"https://img.shields.io/github/last-commit/henriqueotogami/data-structure\"\u003e\n\u003cimg src=\"https://img.shields.io/github/checks-status/henriqueotogami/data-structure/main\"\u003e\n\u003cimg src=\"https://img.shields.io/github/issues/henriqueotogami/data-structure\"\u003e\n\u003c/div\u003e\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://img.shields.io/github/forks/henriqueotogami/data-structure?style=flat\"\u003e\n\u003cimg src=\"https://img.shields.io/github/stars/henriqueotogami/data-structure?style=flat\"\u003e\n\u003cimg src=\"https://img.shields.io/github/license/henriqueotogami/data-structure\"\u003e\n\u003c/div\u003e\n\u003cbr\u003e\n\u003cdiv align=center\u003e\n\u003ca href=\"https://wakatime.com/badge/user/1e53636e-c916-4d50-9ce1-f3ac75a883e3/project/2c40b207-f4f2-4e1f-977c-e502cadca573\"\u003e\u003cimg src=\"https://wakatime.com/badge/user/1e53636e-c916-4d50-9ce1-f3ac75a883e3/project/2c40b207-f4f2-4e1f-977c-e502cadca573.svg\" alt=\"wakatime\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n### Descrição\n\u003e Repositório dedicado aos estudos de estrutura de dados em Java e sem framework.\n\n\u003chr\u003e\n\n### Sumário\n#### Principal\n- [x] Fila | Queue.java\n- [x] Lista Encadeada | LinkedList.java\n- [x] Nó | Node.java\n\n#### Secundário\n- [x] Valores padrão | DefaultValues.java\n- [x] Mapeamento de tipos de dados | MapTypes.java\n- [x] Utilidades | Utils.java\n\u003chr\u003e\n\n### Resumos\n\n\u003cdetails\u003e\n    \u003csummary\u003e Implementação de Fila | Queue.java \u003c/summary\u003e\n\u003cbr\u003e\n\n\u003e Métodos:\n\u003e - [x] addElement(Object): void\n\u003e - [x] contains(Object): boolean\n\u003e - [x] eraseAllElements(): boolean\n\u003e - [x] getAllElements(): Object[]\n\u003e - [x] getElement(int): Object\n\u003e - [x] getObjectType(Object): String\n\u003e - [x] getSize(): int\n\u003e - [x] isEmpty(): boolean\n\u003e - [x] removeElement(int): boolean\n\u003e - [x] searchElement(Object): int\n\u003e - [x] searchElement(Object[], Object): int\n\u003e - [x] setAllElements(Object[]): void\n\u003e - [x] toString(Object): String\n\n\u003e Testes Unitários:\n\u003e - [x] addElementTest(): void\n\u003e - [x] containsTest(): void\n\u003e - [x] createQueueTest(): void\n\u003e - [x] isEmptyTest(): void\n\u003e - [x] removeElementTest(): void\n\u003e - [x] searchElementTest(): void\n\u003e - [x] toStringTest(): void\n\u003chr\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n    \u003csummary\u003e Implementação de Lista Encadeada | LinkedList.java\u003c/summary\u003e\n\u003cbr\u003e\n\n\u003e Métodos:\n\u003e - [x] append(final Node\u003cT\u003e element): void\n\u003e - [x] append(final T element): void\n\u003e - [x] append(final int position, final T element): void\n\u003e - [x] appendBegin(final T element): void\n\u003e - [x] appendMiddle(final int position, final T element): void\n\u003e - [x] getSize(): int\n\u003e - [x] getLastIndex(): int\n\u003e - [x] isEmpty(): boolean\n\u003e - [x] isInvalidPosition(final int position): boolean\n\u003e - [x] clear(): void\n\u003e - [x] removeFirstElement(): T\n\u003e - [x] removeLastElement(): T\n\u003e - [x] removeElement(final int position): T\n\u003e - [x] searchNode(final int position): Node\u003cT\u003e\n\u003e - [x] searchElementByPosition(final int position): T\n\u003e - [x] searchElement(final T element): int\n\u003e - [x] toString(): String\n\u003e - [x] getClassName(): String\n\n\u003e Testes Unitários:\n\u003e - [x] createEmptyListTest(): void\n\u003e - [x] createFullListTest(): void\n\u003e - [x] appendTest(): void\n\u003e - [x] clearTest(): void\n\u003e - [x] clearEmptyListTest(): void\n\u003e - [x] searchElementTest(): void\n\u003e - [x] searchElementNonExistentTest(): void\n\u003e - [x] appendBeginTest(): void\n\u003e - [x] appendMiddleTest(): void\n\u003e - [x] appendEndTest(): void\n\u003e - [x] appendOutOfBoundsTest(): void\n\u003e - [x] removeFirstElementTest(): void\n\u003e - [x] removeLastElementTest(): void\n\u003e - [x] removeElementTest(): void\n\u003e - [x] removeElementOutOfBoundsTest(): void\n\u003e - [x] removeFirstElementEmptyListTest(): void\n\u003e - [x] removeEndElementEmptyListTest(): void\n\u003e - [x] createFullListTest(): void\n\u003e - [x] createFullListTest(): void\n\u003e - [x] createFullListTest(): void\n\u003chr\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n    \u003csummary\u003e Implementação de Nó | Node.java \u003c/summary\u003e\n\u003cbr\u003e\n\n\u003e Métodos:\n\u003e - [x] getElement(): T\n\u003e - [x] setElement(final T element): void\n\u003e - [x] getNextElement(): Node\u003cT\u003e\n\u003e - [x] setNextElement(final Node\u003cT\u003e nextObject): void\n\u003e - [x] toString(): String\n\u003e - [x] getClassName(): String\n\u003c/details\u003e\n\n\u003cdetails\u003e\n    \u003csummary\u003e Implementação de Mapeamento de tipos de dados | MapTypes.java \u003c/summary\u003e\n\u003cbr\u003e\n\n\u003e Métodos:\n\u003e - [x] getObjectArrayToString(Object element, String elementType): String\n\u003e - [x] getPrimitiveArrayToString(Object element, String elementType): String\n\u003e - [x] getObjectToString(Object element, String elementType): String\n\u003e - [x] getPrimitiveToString(Object element, String elementType): String\n\u003e - [x] getElementContentsToString(final Object[] objectArray): String\n\u003e - [x] getElementContentsToString(Object element): String\n\u003e - [x] getGroup(final String typeElement): String\n\u003e - [x] getObjectType(final Object element): String\n\u003c/details\u003e\n\n\u003chr\u003e\n\n### Documentação\n### Javadoc\n\u003e Documentação técnica gerada a partir das classes e métodos implementados.\n- [x] [Javadoc - Estrutura de Dados](https://henriqueotogami.github.io/data-structure/)\n\n### Wiki\n\u003e Informações gerais sobre o projeto deste repositório de estudos de estruturas de dados.\n- [x] [Wiki - Estrutura de Dados](https://github.com/henriqueotogami/data-structure/wiki)\n\n### Kanban\n\u003e Informações sobre as tarefas que estão sendo desenvolvidas nesse repositório de estrutura de dados.\n- [x] [Kanban - Estrutura de Dados](https://github.com/users/henriqueotogami/projects/4)\n\n\u003chr\u003e\n\n### Dependências\n### Bibliotecas\n\n#### Java\n\u003e Open JDK Oracle Java SE 19\n- [x] [openjdk-19.0.1](https://openjdk.org/projects/jdk/19/)\n- \n#### Log4j\n\u003e API para gerenciamento de logs.\n- [x] [log4j-api-2.3.2.jar](https://logging.apache.org/log4j/2.3.x/download.html)\n- [x] [log4j-core-2.3.2.jar](https://logging.apache.org/log4j/2.3.x/download.html)\n\n#### JUnit 5\n\u003e API para escrita de testes.\n- [x] [junit-jupiter-5.8.1.jar](https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api/5.8.1)\n\n\u003chr\u003e\n\n## 📝 Leia meus artigos\n\n### [Artigos no Medium](https://medium.com/@henriqueotogami)\n### [Artigos no Dev.to](https://dev.to/henriqueotogami)\n\n\u003cbr\u003e\n\n## 💼 Conecte-se comigo\n### [Perfil no LinkedIn](https://www.linkedin.com/in/henrique-matheus-alves-pereira)\n\n\u003cbr\u003e\n\n## 🙏🏻 Apoie meu conteúdo\n### [Compre-me um cafézinho | Buy me a coffee](https://ko-fi.com/henriqueotogami) ☕\n\n\u003chr\u003e\n\n### Créditos\n- [x] [Foto de capa by Clay Banks | Unsplash - Photos for everyone;](https://unsplash.com/photos/oO6Gm16Cqcg)\n- [x] [Shields.io | Badges Info from Github](https://img.shields.io)\n- [x] [Alexandre Sanlim | Badges Tech](https://github.com/alexandresanlim/Badges4-README.md-Profile)\n\n\u003chr\u003e\n\n### Contribuição\n\u003e Caso você queira ajudar a melhorar este repositório, siga as etapas abaixo.\n\u003e Qualquer ajuda é bem-vinda.\n\n- [x] Faça um **fork** deste repositório (https://github.com/henriqueotogami/data-structure/fork);\n- [x] Faça um **clone** no seu computador desse repositório \"forkado\" no seu perfil\n- [x] Crie um **branch** com as suas modificações ` git checkout -b meu-novo-recurso `;\n- [x] Faça um **commit** ` git commit -am 'Adicionando um novo recurso ...'`;\n- [x] Faça um **push** ` git push origin meu-novo-recurso ` ;\n- [x] Crie uma **pull request** do seu repositório no meu repositório.\n\n**Depois que sua solicitação (pull request) for aceita e adicionada (merged) ao ramo principal (branch main), você pode excluir sua branch tranquilamente.**\n\n\u003cbr\u003e\n\u003cdiv align=\"center\"\u003e\n\u003cimg width=\"auto\" src=\"https://github.com/henriqueotogami/data-structure/blob/main/resources/kofi-henrique-otogami.jpg?raw=true\"\u003e\n\u003c/div\u003e\n","funding_links":["https://ko-fi.com/henriqueotogami"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenriqueotogami%2Fdata-structure","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhenriqueotogami%2Fdata-structure","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhenriqueotogami%2Fdata-structure/lists"}