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

Visão geral de algoritmos - Tudo o que eu entendi - CoderCursos Java, Aula: 1

introdução

Opa! Esse post é mais um dos compartilhamentos de algumas das coisas que estou aprendendo sobre programação e Java. Algumas das informações contidas nessa publicação, além de se basearem no "senso-comum da programação", fundamentam-se nos assuntos abordados por este curso.

Então aqui vamos nós, a adentrar mais uma peça dos amontoados de anotações que compilam meus aprendizados.

Mão na massa

Algoritmo é uma sequência de passos podendo ser aplicados tanto em softwares quanto em outros lugares. Alguns exemplos de algoritmos são atividades diárias que possuem passos que devem ser concluídas para que as mesmas estejam completas, alguns desses processos possuem repetição podendo repetir uma determinada quantidade de vezes ou até determinado evento ocorrer, isso não se limita ao algoritmo como um todo mas pode acontecer em passos ou em momentos específicos de um algoritmo. Além da repetição há também a existência de tomadas de decisões dentro de um algoritmo, podendo ter a possibilidade de escolher entre A e B ou mais opções.
A estrutura de passos muitas vezes precisa ser otimizada ou realizada de forma correta, por exemplo: caso algum algoritmo conclua um processo de forma duvidosa ou ineficiente porém chegue no resultado esperado, temos um algoritmo funcional, porém não otimizado; mas quando um algoritmo realiza algo de forma incorreta e chega num resultado incorreto temo uma falha, geralmente chamada de bug; portanto a ordem dos passos é realmente importante, influenciando diretamente no resultado de um algoritmo.
Algo realmente importante quando relacionado ao algoritmo é sua relação com manuseio de dados, o algoritmo em outras palavras trata-se de uma ação ou até mesmo um processamento, e os dados podem ser considerados como entradas, como algo que alimenta o algoritmo.
Seguindo um exemplo prático: os dados seriam como ingredientes de um bolo, como açúcar, fermento, farinha, leite, ovos e etc, e o algoritmo por sua vez seria os passos a serem seguidos para se preparar o produto final: O Bolo. Alguns algoritmos apenas armazenam dados, recebendo os dados mas não tendo um resultado. Existem também algoritmos que não recebem dados e resultam em algo. Além desses dois percebe-se os algoritmos que nem recebem dados e nem entregam informação/resultados.
Um algoritmo pode ter várias representações sendo elas:
fluxograma
linguagem natural
possui diversos contextos e pode ter vários sentidos sendo assim muito ambígua, pois pode ter vários tipo de interpretação
linguagem artificial
não possuem ambiguidade, são mais “diretas” possuindo apenas um tipo de interpretação, geralmente possuindo apenas uma saída ou resultado
pseudo-linguagem
é um intermédio entre a linguagem artificial e a linguagem natural
Existem linguagens de programação que possuem uma grande relação com computadores e sua parte física, geralmente nomeadas de linguagem de baixo nível por estarem diretamente ligadas ao hardware do computador, Já as linguagens de alto nível são cada vez mais próximas de uma linguagem humana, tendo maior relação com softwares - parte não física dos dispositivos, e sendo mais próximas a algo humano por esses motivos a escolha da linguagem influencia diretamente na execução de um algoritmo

Conclusão

Enfim, é isso! Essa aula foi bem teórica, por isso o paredão de texto que esse post é. Estou estudando e treinando bastante, e além desses escritos, eu também compartilho o meu material de estudo pelo meu github onde o repositório atrelado ao curso explorado nessa postagem é esse aqui.

Espero que esse conteúdo tenha sido útil para você de alguma forma. Se você possui alguma sugestão de aprendizado, sinta-se à vontade para compartilhar suas experiencias nos comentários abaixo.

É isso, e até logo!

Carregando publicação patrocinada...