Executando verificação de segurança...
1

[Dúvida] Eu estou aprendendo ou apenas decorando?

Estrutura de Dados está me deixando maluco e provavelmente irei reprovar nessa cadeira; na teoria eu consigo diferenciar os algoritmos e entender o porque de um ser mais rápido que o outro dependendo da situação, só que eu não consigo aplicar esses conceitos na prática, tenho bastante dificuldade em lembrar dos tais algoritmos (o máximo que eu lembro é um BubbleSort pelo o fato de ter reescrito várias vezes), será que eu apenas estou decorando os algoritmos?

Como eu posso de fato compreender essa matéria? Será que eu deveria entender estrutura de dados usando pseudo-código? Ou apenas aprender em uma linguagem específica?

Carregando publicação patrocinada...
1
1

acho que foi o primeiro passo que acabei realizando (confesso que alguns gifs me deixaram preso por um tempo maior do que eu gostaria tentando entender)

agradeço muito pela dica e prometo olhar direitinho

1

Eu acredito que é muito importante conseguir visualizar o funcionamento dos algoritmos para entender bem o funcionamento deles.

Na época que eu fiz a faculdade, não tinha muitos recursos digitais pra isso, então, basicamente, eu pegava uma folha de papel e desenhava o passo a passo de como o algoritmo se comportaria com uma array aleatório...era trabalhoso, mas funcionava.

Hoje em dia, tem alguns sites que mostram isso já, e fazem comparação de eficiência também:

1

estava pensando que talvez eu devesse olhar mais o código em si; a imagem do funcionamento eu consigo criar, porém quando transcrevo em código nem sempre sai como o imaginado e acaba que fico muito dependende de um código que outra pessoa está fazendo.

obrigado pelos links, irei checar todos

1

Entendi.

Também é importante entender que a prática é fundamental, só por ler um artigo e entender o conceito sobre ele não implica que automáticamente você será capaz de fazer um algoritmo perfeito, você precisa praticar também.

Não se aprende a tocar violão só lendo partitura, você precisa praticar os acordes também, na programação é a mesma coisa.

Além disso, algumas coisas possuem pré-requisitos. Se você quer fazer um algoritmo bem feito, não basta conhecer a linguagem, você precisa conhecer design patterns e um monte de outras coisas para tomar as decisões corretas e escrever um bom código.