{"id":19321398,"url":"https://github.com/andre2l2/data-structures","last_synced_at":"2025-11-15T02:25:03.136Z","repository":{"id":50423769,"uuid":"457167474","full_name":"andre2l2/data-structures","owner":"andre2l2","description":"Anotações de algoritmos e estrutura de dados ","archived":false,"fork":false,"pushed_at":"2022-10-16T19:44:04.000Z","size":1667,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-06T05:28:51.404Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/andre2l2.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}},"created_at":"2022-02-09T01:38:00.000Z","updated_at":"2022-02-09T01:38:19.000Z","dependencies_parsed_at":"2023-01-20T03:03:32.837Z","dependency_job_id":null,"html_url":"https://github.com/andre2l2/data-structures","commit_stats":null,"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andre2l2%2Fdata-structures","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andre2l2%2Fdata-structures/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andre2l2%2Fdata-structures/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andre2l2%2Fdata-structures/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andre2l2","download_url":"https://codeload.github.com/andre2l2/data-structures/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240422529,"owners_count":19798776,"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":"2024-11-10T01:36:59.581Z","updated_at":"2025-11-15T02:24:58.110Z","avatar_url":"https://github.com/andre2l2.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Estrutura de dados e algoritimos\n\n## Temas\n\n- [Filas](#filas)\n  - [Stack](#stack)\n  - [Queue](#queue)\n  - [Deque](#deque)\n- [Listas Ligadas](#listas-ligadas)\n  - [Lista Ligada Simples](#lista-ligada-simples)\n  - [Lista Duplamente ligada](#lista-duplamente-ligada)\n- [Conjuntos](#conjuntos)\n  - [O que é um conjunto?](#o-que-é-um-conjunto)\n  - [União](#união-aub)\n  - [Intersecção](#intersecção-anb)\n  - [Diferença](#diferença-a-b)\n  - [Subconjunto](#subconjunto-acb)\n- [Mapas/Dicionarios](#mapasdicionarios)\n  - [Dicionarios](#dicionarios)\n\n## Filas\n\n### Stack\n\nUma stack (pilha) usa o principio **LIFO** (last in first out) ou sejá o ultimo a entrar será o ultimo a sair. Um bom exemplo é uma pilha de livros, onde só podemos retirar o ultimo livro que foi colocado.\n\n### Queue\n\nO Queue (fila) é semelhante a Stack mas com algumas particulariedades, pois no Queue usamos o principio **FIFO** (first in first out) ou seja, o primeiro a entrar é o primeiro a sair. Um exemplo bacana seria a propira fila de um banco, onde o primeiro a chegar é atendido e logo depois sai da fila.\n\n### Deque\n\nO Deque é o pricipio de **LIFO** e **FIFO** tudo junto e misturado. Onde pode se remover tanto o primerio da fila quanto o ultimo da fila. Com Deque podemos fazer também uma fila _circular_.\n\n## Listas Ligadas\n\n### Lista Ligada Simples\n\nUma lista ligada tipo de estutura de arrays dinamico, o nome _ligada_ quer dizer que o ultimo elemento da lista aponta para proximo como no exemplo abaixo.\nSe você reparar vai ver que na imagem tem um head, pois é onde guardamos a posição do primeiro elemento, para assim possamos comecar a fazer uma iteração.\n\n![linked_list](./docs/img/linked_list.png)\n\n## Conjuntos\n\n### O que é um conjunto?\n\nOs Conjuntos ou Set é um tipo de estrutura de dados para salvar dados que\nnão podem se repetir, bem semelahnte ao proprio Set nativo do Javascript.\n\n### União (**AuB**)\n\nRetorna um novo conjunto de dados que pertença aos dois conjuntos, como no exemplo abaixo onde AuB.\n\n\u003cimg src=\"https://i.ytimg.com/vi/-d_Lb0UfZfE/maxresdefault.jpg\" width=\"400px\"/\u003e\n\n### Intersecção (**AnB**)\n\nRetorna a um novo conjunto com os elementos de ambos os elementos, como no exemplo abaixo AnB.\n\n\u003cimg src=\"https://external-content.duckduckgo.com/iu/?u=http%3A%2F%2F2.bp.blogspot.com%2F_PPcv9MRb26c%2FTUinpWfgBYI%2FAAAAAAAAAL4%2FIuZlSd1mgTk%2Fs1600%2Fimage042.gif\u0026f=1\u0026nofb=1\" width=\"400px\"/\u003e\n\n### Diferença (**A-B**)\n\nRetorna um novo conjunto com todos os elementos apenas do primeiro conjunto.\n\n\u003cimg src=\"https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fs2.static.brasilescola.uol.com.br%2Fbe%2F2020%2F02%2Foperacoes-representacao-grafica-diferenca.jpg\u0026f=1\u0026nofb=1\" width=\"400px\"/\u003e\n\n### Subconjunto (**AcB**)\n\nConfirma de um conjunto é um subconjunto de outro\n\n\u003cimg src=\"https://static.todamateria.com.br/upload/su/bc/subconjunto.jpg\" width=\"400px\"/\u003e\n\n## Mapas/Dicionarios\n\n### Dicionarios\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandre2l2%2Fdata-structures","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandre2l2%2Fdata-structures","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandre2l2%2Fdata-structures/lists"}