GithubHelp home page GithubHelp logo

data-structure's Introduction

Data Structure 🎲

Segue abaixo as 10 estruturas de dados mais importantes e pelo menos duas referências para cada uma delas:


Uma coleção de elementos do mesmo tipo de dados, organizados em uma sequência indexada. Os elementos podem ser acessados através de um índice numérico. Veja mais.

Referências:

GeeksforGeeks. Arrays in C/C++. Disponível em: https://www.geeksforgeeks.org/arrays-in-c-cpp/. Acesso em: 11 abr. 2023.

WIKIPEDIA. Array data structure. Disponível em: https://en.wikipedia.org/wiki/Array_data_structure. Acesso em: 11 abr. 2023.

TUTORIALSPOINT. C# - Arrays. Disponível em: https://www.tutorialspoint.com/csharp/csharp_arrays.htm. Acesso em: 11 abr. 2023.

DOTNETPERLS. C# Array Examples. Disponível em: https://www.dotnetperls.com/array. Acesso em: 11 abr. 2023.

MICROSOFT. Matrizes denteadas (Guia de Programação em C#). Disponível em: https://learn.microsoft.com/pt-br/dotnet/csharp/programming-guide/arrays/jagged-arrays. Acesso em 05 maio de 2023.


Linked Lists:

Uma sequência de elementos, onde cada elemento contém um ponteiro para o próximo elemento. A inserção e remoção de elementos é mais fácil em listas ligadas do que em arrays.

Referências:

GeeksforGeeks. Linked List Data Structure. Disponível em: https://www.geeksforgeeks.org/data-structures/linked-list/. Acesso em: 11 abr. 2023.

WIKIPEDIA. Linked list. Disponível em: https://en.wikipedia.org/wiki/Linked_list. Acesso em: 11 abr. 2023.

DOTNETPERLS. C# LinkedList Examples. Disponível em: https://www.dotnetperls.com/linkedlist. Acesso em: 13 abr. 2023.


Stacks:

Uma estrutura de dados que segue o princípio LIFO (Last In, First Out), onde o último elemento inserido é o primeiro a ser removido.

Referências:

GeeksforGeeks. Stack Data Structure. Disponível em: https://www.geeksforgeeks.org/stack-data-structure/?ref=gcse. Acesso em: 11 abr. 2023.

WIKIPEDIA. Stack (abstract data type). Disponível em: https://en.wikipedia.org/wiki/Stack_(abstract_data_type). Acesso em: 11 abr. 2023.

Cormen, T. H. et al. Introduction to Algorithms. 3rd ed. The MIT Press, 2009.


Queues:

Uma estrutura de dados que segue o princípio FIFO (First In, First Out), onde o primeiro elemento inserido é o primeiro a ser removido.

Referências:

GeeksforGeeks. Queue Data Structure. Disponível em: https://www.geeksforgeeks.org/queue-data-structure/?ref=gcse. Acesso em: 11 abr. 2023.

WIKIPEDIA. Queue (abstract data type). Disponível em: https://en.wikipedia.org/wiki/Queue_(abstract_data_type). Acesso em: 11 abr. 2023.

Goodrich, M. T.; Tamassia, R. W.; Goldwasser, M. H. Data Structures and Algorithms in Java. 6th ed. Wiley, 2014.


Trees:

Uma estrutura de dados hierárquica que consiste em nós conectados por arestas. As árvores são frequentemente usadas para representar estruturas hierárquicas, como diretórios de arquivos ou a hierarquia de uma organização.

Referências:

GeeksforGeeks. Tree Data Structure. Disponível em: https://www.geeksforgeeks.org/data-structures/tree/. Acesso em: 11 abr. 2023.

WIKIPEDIA. Tree (data structure). Disponível em: https://en.wikipedia.org/wiki/Tree_(data_structure). Acesso em: 11 abr. 2023.

Cormen, T. H. et al. Introduction to Algorithms. 3rd ed. The MIT Press, 2009.


Graphs:

Uma estrutura de dados que consiste em vértices conectados por arestas. Os grafos são frequentemente usados para representar relações entre objetos ou entidades em uma aplicação.

Referências:

GeeksforGeeks. Graph Data Structure and Algorithms. Disponível em: https://www.geeksforgeeks.org/graph-data-structure-and-algorithms/. Acesso em: 11 abr. 2023.

WIKIPEDIA. Graph (abstract data type). Disponível em: https://en.wikipedia.org/wiki/Graph_(abstract_data_type). Acesso em: 11 abr. 2023.

Goodrich, M. T


Hash Tables:

Uma estrutura de dados que usa uma função hash para mapear chaves a valores, permitindo a busca, inserção e remoção de elementos em tempo constante, em média.

Referências:

GeeksforGeeks. Hashing Data Structure. Disponível em: https://www.geeksforgeeks.org/hashing-data-structure/. Acesso em: 11 abr. 2023.

WIKIPEDIA. Hash table. Disponível em: https://en.wikipedia.org/wiki/Hash_table. Acesso em: 11 abr. 2023.

Sedgewick, R.; Wayne, K. Algorithms. 4th ed. Addison-Wesley, 2011.


Sets:

Uma coleção de elementos únicos sem ordem específica. As operações de inserção, remoção e busca são geralmente executadas em tempo constante.

Referências:

GeeksforGeeks. Set in C++ STL. Disponível em: https://www.geeksforgeeks.org/set-in-cpp-stl/. Acesso em: 11 abr. 2023.

WIKIPEDIA. Set (abstract data type). Disponível em: https://en.wikipedia.org/wiki/Set_(abstract_data_type). Acesso em: 11 abr. 2023.

Goodrich, M. T.; Tamassia, R. W.; Goldwasser, M. H. Data Structures and Algorithms in Java. 6th ed. Wiley, 2014.


Heaps:

Uma estrutura de dados que permite a busca, inserção e remoção de elementos com base em sua prioridade. Os heaps podem ser usados para implementar filas de prioridade.

Referências:

GeeksforGeeks. Heap Data Structure. Disponível em: https://www.geeksforgeeks.org/heap-data-structure/. Acesso em: 11 abr. 2023.

WIKIPEDIA. Heap (data structure). Disponível em: https://en.wikipedia.org/wiki/Heap_(data_structure). Acesso em: 11 abr. 2023.

Cormen, T. H. et al. Introduction to Algorithms. 3rd ed. The MIT Press, 2009.


Tries:

Uma estrutura de dados que armazena um conjunto de strings, permitindo a busca de prefixos e outras operações relacionadas a strings de maneira eficiente.

Referências:

GeeksforGeeks. Trie (Keyword Tree) Data Structure. Disponível em: https://www.geeksforgeeks.org/trie-insert-and-search/. Acesso em: 11 abr. 2023.

WIKIPEDIA. Trie. Disponível em: https://en.wikipedia.org/wiki/Trie. Acesso em: 11 abr. 2023.

Sedgewick, R.; Wayne, K. Algorithms. 4th ed. Addison-Wesley, 2011.

data-structure's People

Contributors

romulodeoliveira avatar

Stargazers

Carlos Samuel avatar freedomToCode avatar João Edson Dantas  avatar Louise Gomes avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.