DEV Community

Phyllipe Bezerra
Phyllipe Bezerra

Posted on • Edited on

3

Entendendo e aplicando estruturas de dados com Typescript

Estrutura do que?

Algoritmos e estrutura de dados são dois termos que a gente escuta bastante ao longo da carreira como desenvolvedor, geralmente a maioria dos desenvolvedores sabem que esses dois pontos são bem importantes, porém devido ao nível de abstração que as linguagens de programação já se encontram, dificilmente o programador vai precisar implementar alguma estrutura de dados a partir do zero e com certeza já vai ter uma função já da linguagem ou até mesmo uma biblioteca que faça o serviço necessário. Mas parando para pensar, se estruturas de dados e algoritmos são usados por detrás dos panos já pra deixar tudo mais eficiente e rápido, por que não aprender sobre pra deixar o nosso código mais eficiente por exemplo?

Mas afinal, o que são estruturas de dados? Resumindo, a gente pode pensar que é uma maneira específica de organizar os dados na memória do computador de uma forma que certas operações fiquem mais fáceis e mais eficientes. Você já convive com estruturas de dados diariamente no seu código, variáveis comuns já são estruturas de dados primitivas, ou seja, quando você digita aquele:

const variável = 10;
Enter fullscreen mode Exit fullscreen mode

Você acabou de definir uma estrutura de dados, ela está organizando os bits na memória do computador de forma que contenha o valor 10. Mas o que vamos falar é sobre estruturas de dados mais complexas.

Quais estruturas vamos aprender?

Atenção! Os artigos escritos tendem a focar na galera que está começando a aprender sobre as estruturas de dados, nenhum ou pouco código complexo será utilizado (caso tenha tentarei deixar o mais explicado possível).

Outro ponto é de que o conteúdo pode ser dinâmico, qualquer sugestão ou correção sintam-se a vontade para comentar!

Ao longo do tempo estarei escrevendo os artigos específicos para cada uma das estruturas abaixo, tentei manter de uma maneira em que o nível de complexidade seja crescente e que possamos utilizar conceitos reaproveitados de uma nas outras.

  1. Pilhas (Stacks)
  2. Filas (Queues)
  3. Hash Maps
  4. (Em Andamento) Hash Sets
  5. (Em Andamento) Listas Encadeadas
  6. (Em Andamento) Hash Tables
  7. (Em Andamento) Árvores
  8. (Em Andamento) Grafos

Qodo Takeover

Introducing Qodo Gen 1.0: Transform Your Workflow with Agentic AI

Rather than just generating snippets, our agents understand your entire project context, can make decisions, use tools, and carry out tasks autonomously.

Read full post

Top comments (0)

nextjs tutorial video

Youtube Tutorial Series 📺

So you built a Next.js app, but you need a clear view of the entire operation flow to be able to identify performance bottlenecks before you launch. But how do you get started? Get the essentials on tracing for Next.js from @nikolovlazar in this video series 👀

Watch the Youtube series

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay