Os algoritmos estão presentes no nosso dia-a-dia com a tecnologia. O termo, que tem origem na matemática, caracteriza um conjunto de etapas que um software qualquer precisa realizar para chegar a um resultado. O conceito é muito importante para programadores, que usam a estratégia como uma forma de dividir problemas em passos que podem ser aplicados por computadores na realização de alguma tarefa específica. A seguir, explicamos o que é um algoritmo e daremos exemplos da aplicação desse conceito na rotina do usuário.
Quer comprar celular, TV e outros produtos com desconto? Conheça o Compare TechTudo
O que é algoritmo?
Algoritmos são a base do processo de desenvolvimento de software e fazem parte das ferramentas pelas quais programadores criam estratégias para fracionar problemas em etapas e processos que podem ser traduzidos computacionalmente. Na tecnologia, há exemplos de todos os níveis de complexidade.
Uma aplicação mais simples de algoritmo é o processo de inicialização do computador: há um software – basicamente a tradução computacional de um algoritmo – encarregado de testar todos os componentes do seu computador para saber se está tudo em ordem e, depois disso, procurar o sistema operacional no disco para carregá-lo.
Em um exemplo como esse, o algoritmo precisa abordar estratégias em casos de exceção ou, basicamente, quando nem tudo funciona como o esperado: programadores precisam prever situações que fogem do padrão, como quando o algoritmo de inicialização não encontra um sistema operacional para carregar. Se essa possibilidade não for prevista, o seu computador não carrega o sistema operacional porque não o encontrou e também não avisa você, travando num estado sem nenhuma informação que possa orientar o usuário a respeito do que saiu errado.
De uma forma geral, quando se aborda a ideia de um algoritmo no âmbito que envolve desde o seu computador, videogame e celular aos sistemas do seu automóvel a grandes ferramentas de processamento na nuvem, algoritmos de busca poderosos e recursos de inteligência artificial cada vez mais sofisticados, estamos falando de um modelo lógico de passos que propõe estruturar uma cadeia de etapas para que dados sejam processados e devolvidos por computadores de todos os tipos aos seus usuários.
Exemplos do que algoritmos fazem
Pode parecer exagero, mas tudo que seu computador faz pode ser traduzido em algoritmos. Há diferentes tipos de algoritmos e alguns deles são bem mais complexos do que os outros, mas no geral, todo software é uma interpretação computacional de um algoritmo.
Outro exemplo é a compactação. Compactar dados significa gerar versões que aceitam algum nível de perda de informação, ou qualidade para gerar arquivos menores: o MP3, por exemplo, é um tipo de compressão usada em áudio que admite sacrificar uma quantidade X de informação para gerar um arquivo muito menor. O mesmo raciocínio vale para o JPEG das imagens ou o MP4 dos vídeos.
Um algoritmo de compressão para MP3 funciona da seguinte forma: trata-se de um tipo de software que lê toda a informação bruta de uma amostra de som de alta qualidade, para convertê-la no MP3. Nessa análise, o algoritmo mapeia o som e identifica frequências de som que são inaudíveis pelo ouvido humano, as separa, e cria um arquivo de som que, sem essas frequências que nós não escutamos, acaba bem menor para guardar no disco do seu computador. O problema é a perda de qualidade. Embora tecnicamente inaudível, há quem garanta que o som MP3 soa diferente do som de qualidade bruta.
O mesmo raciocínio se aplica para usos mais atuais: quando você decide baixar um MP3 de um vídeo no YouTube, você está aplicando um tipo de algoritmo de compressão que converte a informação original em um arquivo MP3 no seu computador.
Outros exemplos de uso recorrente de algoritmos no seu dia a dia são a criptografia, que torna os dados que você troca com a Internet protegidos da ação de invasores; de mapas, em que suas rotas em apps de localização são calculadas da forma mais eficiente possível; de rotas de Internet, em que sua comunicação com sites e apps é definida pelos percursos ideais entre servidores espalhados mundo afora.
Algoritmo e programação
Para um programador, ter noções a respeito de algoritmos é essencial, pois antecede o domínio de uma linguagem de programação. Saber usar algoritmos é saber criar estratégias para fracionar problemas reais em instruções mais abstratas que um computador consegue seguir na solução de um problema.
Para aprender programação, muito mais importante do que escolher uma linguagem ou projeto é dominar a lógica determinística de um passo de cada vez que está por trás dos algoritmos. Ela é a base que torna a ação dos programadores mais efetiva e eficiente, já que uma vez que você consegue dividir um problema em etapas e convertê-lo numa sequência de passos que o computador pode interpretar, a tarefa de traduzir essas, cadeia de etapas em uma linguagem de programação torna-se mais simples.
Como os algoritmos são usados na Internet?
Algoritmos estão em todas as partes quando falamos de computadores e tecnologia, mas o termo é bastante associado e aparece com frequência quando o assunto é a Internet. Existe o algoritmo de buscas do Google, o algoritmo da timeline do Facebook, algoritmo do Spotify que combina as músicas e artistas que você ouve para sugerir novas faixas desconhecidas e assim por diante.
O famoso “algoritmo do Google” é uma ferramenta de buscas que vasculha a Internet atrás de resultados que atendam os parâmetros de uma busca. A tecnologia do Google revolucionou o mercado porque apareceu com a capacidade de dar mais peso a páginas com informações mais relevantes. Quando surgiu, em 1999, o Google era o único a fazer isso, enquanto outros buscadores davam resultados genéricos que muitas vezes nem passavam perto do que o usuário buscava.
No caso do Facebook, há um algoritmo por trás da organização, relevância e frequência de conteúdos que aparecem na sua timeline. Chamado de “EdgeRank” pelo Facebook, o algoritmo decide o que você visualiza na sua página a partir de uma série de fatores que vão das referências cruzadas entre o que seus amigos curtem e compartilham e passam também pelo cálculo daquilo que você tende a achar mais interessante a partir dos seus próprios hábitos.
No exemplo do Spotify, existe um algoritmo que analisa as músicas e artistas que você curte, estabelecendo um padrão de comportamento, que é usado para sugerir canções e músicos parecidos, mas que o usuário desconhece. Mais do que um simples exercício de associação entre gêneros, o software do Spotify analisa a assinatura de áudio de cada música para buscar sons parecidos que o usuário não buscaria. Esse mesmo tipo de combinação e sugestões precisas de conteúdo são usados pela Netflix, Amazon Prime e YouTube.
Não consegue instalar o Chrome? Descubra como resolver no Fórum do TechTudo
>>> Veja o artigo completo no TechTudo
Mais Artigos...
- Especificações do Nokia 9 vazam nos Estados Unidos
- YouTube ganha efeito blur que desfoca parte do vídeo; veja como fazer
- Spotify passa a mostrar letra de música em reprodução
- Facebook trabalha em ferramenta de censura para voltar à China, diz NYT
- Final Fantasy 15 e Arquivo X são os destaques mobile da semana
- Signal ou Telegram? Compare os mensageiros rivais do WhatsApp
- Excel não abre? Veja o que fazer para resolver e editar planilhas
- PUBG, Cuphead e mais: confira os melhores jogos para PC de 2017
- Live x Zenfone Go: qual é o melhor novo baratinho da Asus?
- Como usar coordenadas no Google Earth
- Android 6 se torna o mais popular, mas sistema móvel ainda é fragmentado
- Instagram em inglês e foto do ovo: 6 fatos que marcaram o app em Janeiro
- Rio de Janeiro vai receber DreamHack Open, torneio de CS:GO, em 2019
- Kaomojis: 10 apps para você usar emojis japoneses
- CS:GO: MIBR vence complexity Gaming em jogo do IEM Katowice Major 2019
- Melhores placas de vídeo para jogar em Full HD: veja preços no Brasil
- Como defender bem em FIFA 20? Veja melhores dicas de defesa no game
- Nintendo Direct Mini anuncia Shin Megami Tensei 5 e mais jogos do Switch
- Street Fighter V: Champion Edition chega com correção após polêmica
- Asus lança placas com AMD e Nvidia ideais para minerar bitcoin; entenda