· informatica · 1 min read

Cosa é un algoritmo?

La macchina di Turing rappresenta un esempio di modello astratto di una macchina in grado di eseguire programmi.La sua importanza è tale in quanto la Macchina di Turing risulta legata al concetto di complessità e di computazionalità. Vediamone le caratteristiche fondamentali

La macchina di Turing rappresenta un esempio di modello astratto di una macchina in grado di eseguire programmi.La sua importanza è tale in quanto la Macchina di Turing risulta legata al concetto di complessità e di computazionalità. Vediamone le caratteristiche fondamentali

Un algoritmo è la “descrizione” dei passi necessari per risolvere un problema. Affinchè un qualsiasi procedimento risolutivo possa essere considerato e definito come algoritmo abbiamo bisogno di alcune proprietà fondamentali:

  • finitezza: un algoritmo deve avere un numero finito di passi che portano alla soluzione.
  • completezza: deve contemplare tutte le possibili casistiche del problema da risolvere.
  • non ambiguo: non devono esserci elementi ambigui o imprecisi. Non deve esserci spazio all’interpretazione.
  • generale: deve risolvere una intera classe di problemi.
  • eseguibile: deve esistere un agente di calcolo in grado di eseguirlo in un tempo finito.

Esistono due categorie di algoritmi: quelli deterministici e quelli non deterministici. I secondi, a differenza dei primi, presentano almeno un elemento per cui sono possibili più elementi successivi da scegliere secondo un processo probabilistico. Questa categoria di algoritmi è molto importante, pensa che tutte le questioni relative all’intelligenza artificiale e agli algoritmi genetici si basano su questo tipo di algoritmi.

Back to Blog

Related Posts

View All Posts »
Aspetto intensionale ed estensionale dei dati

Aspetto intensionale ed estensionale dei dati

Gli aspetti estensionale e intensionale dei dati sono due concetti fondamentali in informatica. La comprensione della differenza tra questi due concetti è essenziale per comprendere il funzionamento dei sistemi informativi.

Strutture di controllo in Java

Strutture di controllo in Java

Strutture di controllo in Java | istruzioni condizionali, cicli e istruzione switch. Una guida completa alle strutture di controllo in Java.

Dati e Informazioni

Dati e Informazioni

Dati e informazioni sono due concetti fondamentali in informatica. La comprensione della differenza tra questi due concetti è essenziale per comprendere il funzionamento dei sistemi informativi.

La rappresentazione dei dati attraverso la logica binaria

La rappresentazione dei dati attraverso la logica binaria

La rappresentazione dei dati è un concetto fondamentale nell'ambito dell'informatica e delle scienze computazionali. In particolare, l'utilizzo della logica binaria è essenziale per la codifica e l'elaborazione dei dati all'interno dei sistemi informatici moderni. In questo articolo, esploreremo in dettaglio la logica binaria e come viene utilizzata per rappresentare informazioni complesse attraverso l'uso di due soli valori 0 e 1.

La logica binaria: Fondamento dell'era digitale

La logica binaria: Fondamento dell'era digitale

In questo articolo, esploreremo la logica binaria, il suo ruolo cruciale nel funzionamento dei computer e come viene utilizzata per rappresentare informazioni complesse attraverso l'uso di due soli simboli.

Il Pattern DAO (Data Access Object) in Java

Il Pattern DAO (Data Access Object) in Java

Il pattern DAO (Data Access Object) è un pattern architetturale che viene spesso utilizzato nelle applicazioni Java per separare la logica di accesso ai dati dal resto dell'applicazione.

Frammentazione interna ed esterna: Nemici invisibili della memoria del tuo computer

Frammentazione interna ed esterna: Nemici invisibili della memoria del tuo computer

La frammentazione interna ed esterna sono due fenomeni che possono influenzare negativamente le prestazioni del tuo computer. I moderni sistemi operativi utilizzano diverse tecniche per combattere la frammentazione e ottimizzare l'utilizzo della memoria. Tuttavia, è importante essere consapevoli di questi fenomeni e dei loro potenziali impatti per poter mantenere il proprio sistema efficiente e performante.