Algoritmo de características, para que serve, peças, exemplos

Algoritmo de características, para que serve, peças, exemplos

A algoritmo É um conjunto de instruções projetadas para executar uma tarefa específica. Ou seja, é um procedimento sistemático que em um número finito de etapas produz a resposta para uma pergunta ou a solução de um problema. Um exemplo de algoritmo é o do mecanismo de pesquisa do Google, no qual, inserindo uma palavra, fornece vários resultados na forma de páginas da web.

Pode ser um processo complexo, como reproduzir um arquivo de música ou uma operação simples, como adicionar dois números. Na programação de computadores, os algoritmos são criados como funções. Essas funções são pequenos programas que podem ser referenciados por um grande programa.

Um aplicativo para visualizar imagens pode conter uma biblioteca de funções, cada uma usando um algoritmo específico para representar os diferentes formatos de arquivo de imagem.

Um programa para editar imagens pode conter algoritmos projetados para processar dados de imagens. Alguns exemplos são aparar, trocar tamanho, nitidez, desfoque, reduzir os olhos vermelhos e melhorar a cor.

[TOC]

Características de um algoritmo

Clareza e precisão

O algoritmo deve ser claro e inequívoco. Cada uma de suas etapas ou ações deve ser definida com precisão, seja claramente claro em todos os aspectos e deve ter inequivocamente um único significado.

Bilhetes bem definidos

Um algoritmo é zero ou mais entradas, retirado de um conjunto específico de objetos. Se o algoritmo indicar que os dados de entrada devem ser obtidos, esses dados de entrada devem ser bem definidos.

Saídas bem definidas

O algoritmo sempre tem uma ou mais saídas, que têm um relacionamento com as entradas. O algoritmo deve definir claramente quais informações de saída ocorrerão e também devem ser bem definidas.

Finitude

O algoritmo deve ser finito, ou seja, deve sempre terminar em algum momento, depois de um número finito de etapas, e não ser viciado em laços infinitos ou coisas semelhantes.

Viável

O algoritmo deve ser habilidoso e simples, para que possa ser executado sem problemas com os recursos disponíveis. Portanto, você não deve conter nenhuma tecnologia futura.

Independência da linguagem

O algoritmo projetado deve ser independente da linguagem, ou seja, deve ser formado apenas por instruções simples que podem ser implementadas em qualquer linguagem de programação e, no entanto, o resultado é sempre o mesmo, como esperado, conforme esperado.

Programas eficientes

Sempre existem maneiras diferentes de realizar operação específica em um programa. Portanto, os programadores procuram criar os algoritmos mais eficientes possíveis.

Com o uso de algoritmos muito eficientes, pode -se garantir que os programas sejam executados em velocidade mais alta, usando um mínimo de recursos do sistema.

No entanto, os algoritmos nem sempre produzem a primeira vez. Por esse motivo, os programadores procuram melhorá -los para incluí -los em futuras atualizações de software.

Pode atendê -lo: os 30 físicos mais famosos e importantes da história

Portanto, sempre que você conhece uma nova versão de um aplicativo com um melhor desempenho, isso significa que esta versão contém algoritmos mais eficientes.

O que é um algoritmo para?

O algoritmo é um instrumento extremamente útil, usado para realizar trabalhos. Na ciência da computação, ao escolher o melhor algoritmo, é garantido que o computador faça a tarefa dada da melhor maneira possível.

Portanto, serve para otimizar um programa de computador com os recursos disponíveis. Ou seja, quando um problema é decidido resolver os melhores algoritmos, a melhor combinação de velocidade do programa e o menor consumo de memória é desejado.

Os diferentes algoritmos que podem ser estudados são tão variados quanto os problemas que resolvem. No entanto, é muito provável que o problema de estar tentando seja semelhante a outro problema em alguns aspectos.

Ao entender uma ampla gama de algoritmos, você pode escolher o mais adequado para um problema e aplicá -lo corretamente.

Compactação de arquivo

Esses algoritmos são ajustados e otimizados especificamente para os tipos de arquivos aos quais são direcionados. Por exemplo, cada formato de áudio usa uma maneira diferente de armazenar dados. Quando decodificado pelo codec de áudio, ele gerará um arquivo de som semelhante à forma de onda original.

Dados criptografados

Algoritmos também são usados ​​para proteger dados ou linhas de comunicação. Em vez de armazenar dados comprimidos para usar menos espaço em disco, eles são armazenados para que outros programas não possam detectá -los.  Quando os dados são criptografados, o que é armazenado não se parece com o que é.

Como funciona um algoritmo?

Para fazer com que um computador faça algo, você precisa escrever um programa de computador. Para escrever este programa, você deve dizer ao computador, passo a passo, o que você quer fazer.

Em seguida, o computador executa o programa, executando cada instrução automaticamente, para alcançar o resultado final. Conforme indicado o que fazer com o computador, você também pode escolher como, através do algoritmo, sendo a técnica básica usada para fazer o trabalho.

Exemplo de caso

Digamos que você tenha um amigo que chega ao aeroporto e precisa ir do aeroporto para nossa casa. Estes são quatro algoritmos diferentes que podem ser dados para resolver esta situação:

Algoritmo me ligue

- Quando o avião chegar, ligue para o meu celular.

- Reúna comigo do lado de fora da área de entrega de bagagem.

Algoritmo de táxi

- Vá para a parada de táxi.

Pode servir a você: quadro metodológico: como escrevê -lo, estrutura, exemplos

- Vá para um táxi.

- Dê ao motorista meu endereço.

Algoritmo de ônibus

- Saindo do aeroporto, pegue o ônibus número 70.

- Ao chegar à rua principal, pegue o ônibus 14.

- Saia na rua Elmo.

- Ande dois quarteirões ao norte, até minha casa.

Algoritmo Alugue um veículo

- Leve um serviço de transporte para o local onde os carros alugam.

- Alugar um veículo.

- Siga as instruções do GPS para chegar à minha casa.

Os quatro algoritmos atingem exatamente o mesmo objetivo, mas cada um faz de maneira diferente. Cada algoritmo também tem um custo diferente e tempo de viagem. Portanto, o algoritmo é escolhido de acordo com as circunstâncias.

Partes de um algoritmo

Aquisição de dados de entrada

O algoritmo deve ter certos recursos para ler os valores de uma fonte externa. A maioria dos algoritmos requer alguns valores de dados para definir um problema específico. Por exemplo, os coeficientes de um polinômio.

Cálculo

O algoritmo deve ter certos recursos para poder realizar cálculos aritméticos, comparações, condições lógicas etc.

Seleção

O algoritmo deve ter certos meios para poder escolher entre dois ou mais cursos de ação possíveis, com base nos dados iniciais, nas entradas do usuário e/ou em resultados calculados.

Iteração

O algoritmo deve ter certos meios para poder repetir um conjunto de instruções, por um número fixo de vezes ou até que alguma condição lógica seja atendida.

Resultados ou relatório de saída

O algoritmo deve ter certos recursos para informar ao usuário os resultados que foram calculados ou para poder solicitar dados adicionais do usuário.

Tipos de algoritmos

Algoritmo recursivo

Esse algoritmo é muito interessante, porque é chamado com um valor diferente como um parâmetro de entrada, que obteve após ter resolvido o parâmetro de entrada anterior. Isto é, ele se chama repetidamente até que o problema seja resolvido.

Problemas como a Torre Hanói ou a busca profunda por um gráfico podem ser facilmente resolvidos usando esse tipo de algoritmos.

Algoritmo Divida e conquista

Nesses algoritmos, é dividido em duas partes. Na primeira parte, o problema em questão é dividido em subproblemas menores do mesmo tipo. Da mesma forma, na segunda parte, seus subproblemas são resolvidos, combinando ambas as partes para produzir a solução final do problema.

Por exemplo, com esses algoritmos, você pode realizar ordenações para combinação e ordenações rápidas.

Algoritmo de programação dinâmica

Esses algoritmos trabalham lembrando os resultados da execução anterior e usá -los para encontrar novos resultados. Ou seja, eles resolvem problemas complexos que os dividem em vários subproblemas simples e depois resolvendo cada um deles, depois armazenando-os para usá-los mais tarde.

Pode atendê -lo: método quantitativo

Algoritmo de força bruta

Este algoritmo busca cegamente todas as soluções possíveis para encontrar uma ou mais soluções que possam resolver uma função. Você pode pensar em força bruta como se todas as combinações possíveis de números fossem usadas para abrir um seguro.

Algoritmo para trás

Este algoritmo resolve problemas recursivamente e tenta resolver um problema resolvendo cada parte dele. Se a solução falhar, ela é eliminada e voltará para encontrar outra solução.

Ou seja, esse algoritmo resolve um subproblema, mas se isso não resolver o problema total, ele desfaz a última etapa e começa novamente a encontrar a solução para o problema.

Exemplos de algoritmos

Algoritmo recursivo

Este pseudocódigo encontra o fatorial de um número não -negativo "N", usando um algoritmo recursivo:

Algoritmo de programação dinâmica

A sequência de Fibonacci é um bom exemplo de algoritmo de programação dinâmica. Pode ser visto neste pseudocódigo:

- Sim (n = 0 ou n = 1), fibonacci (n) = 0

- Caso contrário, fibonacci (n) = fibonacci (n-1) + fibonacci (n-2)

Algoritmo para trás

O problema do xadrez das 8 rainhas é um bom exemplo. Esse problema estabelece que em um tabuleiro de xadrez existem 8 rainhas e deve ser colocado de tal maneira que nenhuma das rainhas esteja em posição de atacar qualquer outra depois de organizar.

Vários exemplos

- Algoritmo de diagnóstico do HIV.

Algoritmo de diagnóstico do HIV. Fonte: imunopedia/cc by-s (https: // criativeCommons.Org/licenças/BY-SA/4.0)

- Os mecanismos de pesquisa da Internet usam algoritmos patenteados para mostrar os resultados mais relevantes de seu índice de pesquisa para consultas específicas.

- Receitas, como equações matemáticas, são algoritmos.

- O email sabe para onde enviar graças a algoritmos.

- O conteúdo visto nas redes sociais vem através de algoritmos. De fato, tudo o que é feito na web é o produto de algoritmos.

- Videogames são narrativas algorítmicas.

- Aplicativos de telefone inteligentes são simplesmente algoritmos.

- A maioria das transações financeiras é feita através de algoritmos.

- Toda vez que uma coluna é ordenada em uma planilha, os algoritmos intervêm.

Referências

  1. Lee Rainie (2017). Dependente do código: Prós e contras da idade do algoritmo. Pew Research Center. Retirado de: Pewrarch.org.
  2. Termo técnico (2020). Algoritmo. Retirado de: Techterms.com.
  3. Britannica (2020). Algoritmo. Retirado de: Britannica.com.
  4. Educba (2020). Tipos de algoritmos. Retirado de: Educba.com.
  5. Como até Geek (2016). O que são algoritmos de computador e como eles funcionam? Retirado de: Howtogek.com.
  6. Como funciona as coisas (2020). O que é um algoritmo de computador? Retirado de: computador.Howstuffwork.com.