Una definizione formale enfatizza diverse caratteristiche chiave:
* Finitezza: L'algoritmo deve terminare dopo un numero finito di passaggi. Non può funzionare per sempre.
* Definizione: Ogni passaggio deve essere definito con precisione; Le azioni da svolgere devono essere rigorosamente e inequivocabilmente specificate per ciascun caso. Non ci dovrebbe essere spazio per l'interpretazione.
* Input: Un algoritmo non ha zero o più input (quantità che lo vengono fornite inizialmente prima dell'inizio dell'algoritmo).
* Output: Un algoritmo ha una o più output (quantità che hanno una relazione specificata con gli input).
* Efficacia: Ogni passaggio deve essere fattibile, il che significa che deve essere qualcosa che può essere fatto esattamente e in un tempo finito. Le operazioni coinvolte devono essere sufficientemente fondamentali da poter essere eseguite in linea di principio esattamente e in un periodo di tempo finito.
In sostanza, un algoritmo è una ricetta o una serie di istruzioni per risolvere un problema specifico. Non è solo un programma (sebbene possa essere implementato come programma in un linguaggio di programmazione), ma piuttosto la procedura logica sottostante che il programma incarna. Lo stesso algoritmo può essere implementato in molti linguaggi di programmazione diversi.
Ad esempio, una ricetta per cuocere una torta è analoga a un algoritmo. Specifica gli ingredienti (input), i passaggi (istruzioni) e il prodotto finale (output). Un algoritmo di ordinamento, come l'ordinamento della bolla o l'ordinamento di unione, è un set preciso di passaggi per organizzare un elenco di elementi in un ordine specifico.
Domanda © www.354353.com