Tiago Tartari
Fundamentos

Guia das estruturas de dados no C#

publicado em 22 de maio de 2021

Aprender é a única coisa de que a mente nunca se cansa, nunca tem medo e nunca se arrepende

Leonardo da Vinci
Resumo
Desenvolvedores precisam ir além de utilizar lista genérica como se fosse a única estrutura de dados no C#. Ao ler o livro C# Data Structures and Algorithms, notei uma grande oportunidade de criar um guia de referências para, inclusive, ajudar os desenvolvedores a estudar mais sobre o tema.

Conteúdo

Guia das estruturas de dados no C#

Ter um guia das estruturas de dados no C# ajuda desenvolvedores a desenvolver melhores códigos. Após uma leitura do livro C# Data Structures and Algorithms, percebi uma grande oportunidade de estudo sobre o tema. Sem dúvidas, hoje, entender de forma profunda estrutura de dados e algoritmos é uma oportunidade para se diferenciar no mercado.

Quais são as estruturas de dados no C#?

No C# podemos encontrar diversas estruturas de dados. Algumas delas, como a lista genérica, List<T> é a mais conhecida e mais utilizada entre os programadores, mas as estruturas de dados no C# vão além da List<T>.

Desenvolvedores precisam ir além do uso listas genéricas, como List<T>

Sempre entendi que nós desenvolvedores, precisamos ir além do uso de listas genéricas, por exemplo List<T>. Frequentemente, em nossos código percebemos uma utilização demasiada.

Uma boa oportunidade para aprender como o List<T> funciona, sugiro a leitura desse post “Utilize List<T> com capacity e tenha performance no .NET“. Nesse post, falo como garantir a performance de uma aplicação .NET utilizando o List<T> do jeito certo.

Maslow diz que “Para quem só tem o martelo todo problema será um prego”, na prática, quem só conhece o List<T> não irá utilizar nada além do List<T>.

Definindo estrutura de dados

Estrutura de dados, segundo Marcello La Rocca, pode ser definida como – “uma solução específica para organizar coleções tanto de valores quanto de operações“, também como, “uma implementação concreta de um tipo abstrato ou um tipo de dados básico ou primitivo“.

Há uma diferença entre vetor e matriz, entenda

Vetor e matriz, embora sejam coleções que são acessadas por um índice, elas possuem diferenças em sua estrutura. Enquanto o vetor é considerado unidimensional, ou seja, de única dimensão, a matriz é multidimensional, que pode ter várias dimensões. Mesmo com essa diferença elas podem ser utilizadas com tipos de dados primitivos e também objetos.

Arrays

Arrays são utilizados para armazenar dados de diversos tipos, entretanto, sempre da mesma definição. Assim sendo, se a declaração for do tipo int, todo seu array será do tipo int. Também podem ser tratadas como unidimensionais, multidimensionais e denteadas.

Vetor, array unidimensional

Um array unidimensional armazena uma coleção de itens do mesmo tipo, que são acessíveis por um índice.

int[] números = new int[5];

Matriz, array multidimensional

Um array multidimensional armazena possibilita criar arrays bidimensionais ou tridimensionais.

int[,] números = new int[5, 2];
Gostou? Me ajude a impactar outras pessoas compartilhando esse post.
conheça mais sobre: .net, algoritimos, estrutura de dados
Tiago Tartari
Tiago Tartari

Ajudo executivos, times de negócios e especialistas técnicos a resolver problemas complexos utilizando a tecnologia como meio para potencializar resultados.