Cosa sono gli algoritmi per computer e come funzionano?

Sep 28, 2025
Privacy e sicurezza
CONTENUTO UNCACHED

A meno che tu non sia interessato alla matematica o alla programmazione, la parola "algoritmo" potrebbe essere greca per te, ma è uno degli elementi costitutivi di tutto ciò che utilizzi per leggere questo articolo. Ecco una rapida spiegazione di cosa sono e come funzionano.

Dichiarazione di non responsabilità: non sono un insegnante di matematica o informatica, quindi non tutti i termini che uso sono tecnici. Questo perché sto cercando di spiegare tutto in un inglese semplice per le persone che non sono abbastanza a loro agio con la matematica. Detto questo, c'è un po 'di matematica coinvolta, e questo è inevitabile. Geek di matematica, sentiti libero di correggere o spiegare meglio nei commenti, ma per favore, mantienilo semplice per i matematicamente non inclini tra noi.

Immagine di Ian Ruotsala

Cos'è un algoritmo?

La parola "algoritmo" ha un'etimologia simile a "algebra", tranne per il fatto che si riferisce allo stesso matematico arabo, al-Khwarizmi (solo un interessante bocconcino). Un algoritmo, per i non programmatori tra di noi, è un insieme di istruzioni che prendono un input, A, e forniscono un output, B, che cambia in qualche modo i dati coinvolti. Gli algoritmi hanno un'ampia varietà di applicazioni. In matematica, possono aiutare a calcolare le funzioni da punti in un set di dati, tra cose molto più avanzate. A parte il loro utilizzo nella programmazione stessa, svolgono un ruolo importante in cose come la compressione dei file e la crittografia dei dati.

Una serie di istruzioni di base

Supponiamo che il tuo amico ti incontri in un negozio di alimentari e che tu lo stia guidando verso di te. Dici cose come "entra dalle porte di destra", "passa la sezione del pesce a sinistra" e "se vedi il caseificio, mi hai superato". Gli algoritmi funzionano così. Possiamo utilizzare un diagramma di flusso per illustrare le istruzioni in base a criteri che conosciamo in anticipo o che scopriamo durante il processo.

(immagine intitolata " Routine rompighiaccio "EDIT: cortesia di Grilletto e ruota libera )

Da INIZIO, ti dirigerai lungo il sentiero e, a seconda di cosa succede, segui il "flusso" fino al risultato finale. I diagrammi di flusso sono strumenti visivi che possono rappresentare più comprensibilmente una serie di istruzioni utilizzate dai computer. Allo stesso modo, gli algoritmi aiutano a fare lo stesso con più modelli basati sulla matematica.

Grafici

Usiamo un grafico per illustrare i vari modi in cui possiamo dare indicazioni.

Possiamo esprimere questo grafico come una connessione tra tutti i suoi punti. Per riprodurre questa immagine, possiamo dare una serie di istruzioni a qualcun altro.

Metodo 1

Possiamo rappresentarlo come una serie di punti e le informazioni seguiranno la forma standard del grafico = {(x1, y1), (x2, y2), …, (xn, yn)}.

grafico = {(0,0), (3,0), (3,3), (5,5), (7,10), (8,7), (9,4), (10,1)}

È abbastanza facile tracciare ogni punto, uno dopo l'altro, e collegarli al punto precedente. Tuttavia, immagina un grafico con mille punti o più segmenti che vanno tutti in ogni direzione. Quella lista avrebbe molti dati, giusto? E poi dover collegare ciascuno, uno alla volta, può essere un dolore.

Metodo 2

Un'altra cosa che possiamo fare è dare un punto di partenza, la pendenza della linea tra esso e il punto successivo, e indicare dove aspettarsi il punto successivo utilizzando la forma standard del grafico = {(starting point}, [m1, x1, h1],…, [mn, xn, hn]}. In questo caso, la variabile "m" rappresenta la pendenza della linea, "x" rappresenta la direzione in cui contare (sia x che y) e "h" ti dice quanti contare in detta direzione. Puoi anche ricordarti di tracciare un punto dopo ogni movimento.

grafico = {(0,0), [0,x,3], [0,y,3], [1,x,2], [2.5,x,2], [-3,x,1], [-3,x,1], [-3,x,1]}

Finirai con lo stesso grafico. Puoi vedere che gli ultimi tre termini in questa espressione sono gli stessi, quindi potremmo essere in grado di ridurli semplicemente dicendo "ripeti tre volte" in qualche modo. Supponiamo che ogni volta che vedi apparire la variabile "R", significhi ripetere l'ultima cosa. Possiamo farlo:

grafico = {(0,0), [0,x,3], [0,y,3], [1,x,2], [2.5,x,2], [-3,x,1], [R=2]}

E se i singoli punti non contano davvero e solo il grafico stesso lo fa? Possiamo consolidare queste ultime tre sezioni in questo modo:

grafico = {(0,0), [0,x,3], [0,y,3], [1,x,2], [2.5,x,2], [-3,x,3]}

Accorcia le cose un po 'da dove erano prima.

Metodo 3

Proviamo a farlo in un altro modo.

y = 0, 0≤x≤3
x=0, 0≤y≤3
y = x, 3≤x≤5
y = 2,5x-7,5, 5≤x≤7
y = -3x + 29, 7≤x≤8
y = -3x + 29, 8≤x≤9
y = -3x + 29,9≤x≤10

Qui lo abbiamo in termini algebrici puri. Ancora una volta, se i punti stessi non contano e solo il grafico lo fa, possiamo consolidare gli ultimi tre elementi.

y = 0, 0≤x≤3
x=0, 0≤y≤3
y = x, 3≤x≤5
y = 2,5x-7,5, 5≤x≤7
y = -3x + 29, 7≤x≤10

Ora, il metodo che scegli dipende dalle tue capacità. Forse sei bravo con la matematica e i grafici, quindi scegli l'ultima opzione. Forse sei bravo a navigare, quindi scegli la seconda opzione. Nel regno dei computer, tuttavia, esegui molti tipi diversi di attività e l'abilità del computer non cambia davvero. Pertanto, gli algoritmi sono ottimizzati per le attività che completano.

Un altro punto importante da notare è che ogni metodo si basa su una chiave. Ogni set di istruzioni è inutile a meno che tu non sappia cosa farne. Se non sai che dovresti tracciare ogni punto e collegare i punti, la prima serie di punti non significa nulla. A meno che tu non sappia cosa significa ogni variabile nel secondo metodo, non saprai come applicarle, proprio come la chiave di un codice. Quella chiave è anche parte integrante dell'utilizzo degli algoritmi e, spesso, quella chiave si trova nella comunità o tramite uno "standard".

File Compression

Quando scarichi un file .zip, ne estrai il contenuto in modo da poter utilizzare tutto ciò che è al suo interno. Al giorno d'oggi, la maggior parte dei sistemi operativi può immergersi nei file .zip come se fossero normali cartelle, facendo tutto in background. Sulla mia macchina Windows 95 oltre un decennio fa, ho dovuto estrarre tutto manualmente prima di poter vedere qualcosa di più dei nomi dei file all'interno. Questo perché ciò che è stato memorizzato sul disco come file .zip non era in una forma utilizzabile. Pensa a un divano letto. Quando vuoi usarlo come letto, devi rimuovere i cuscini e aprirlo, il che occupa più spazio. Quando non ne hai bisogno, o vuoi trasportarlo, puoi ripiegarlo.

Gli algoritmi di compressione vengono regolati e ottimizzati in modo specifico per i tipi di file a cui sono destinati. I formati audio, ad esempio, utilizzano ciascuno un modo diverso per memorizzare i dati che, quando decodificati dal codec audio, forniranno un file audio simile alla forma d'onda originale. Per ulteriori informazioni su queste differenze, consulta il nostro articolo precedente, Quali sono le differenze tra tutti questi formati audio? I formati audio lossless e i file .zip hanno una cosa in comune: entrambi forniscono i dati originali nella loro forma esatta dopo il processo di decompressione. I codec audio con perdita utilizzano altri mezzi per risparmiare spazio su disco, come tagliare le frequenze che non sono in grado di essere ascoltate dall'orecchio umano e uniformare la forma d'onda nelle sezioni per eliminare alcuni dettagli. Alla fine, anche se potremmo non essere in grado di sentire veramente la differenza tra una traccia MP3 e una traccia CD, c'è sicuramente una carenza di informazioni nella prima.

Crittografia dei dati

Gli algoritmi vengono utilizzati anche per proteggere i dati o le linee di comunicazione. Invece di archiviare i dati in modo che utilizzi meno spazio su disco, vengono archiviati in un modo non rilevabile da altri programmi. Se qualcuno ruba il tuo disco rigido e inizia a scansionarlo, può raccogliere i dati anche quando elimini i file perché i dati stessi sono ancora lì, anche se la posizione di inoltro è scomparsa. Quando i dati vengono crittografati, tutto ciò che viene archiviato non ha l'aspetto di ciò che è. Di solito sembra casuale, come se la frammentazione si fosse accumulata nel tempo. Puoi anche memorizzare i dati e farli apparire come un altro tipo di file. File di immagine e file musicali sono utili per questo, in quanto possono essere abbastanza grandi senza destare sospetti, ad esempio. Tutto questo viene fatto utilizzando algoritmi matematici, che prendono un qualche tipo di input e lo convertono in un altro tipo di output molto specifico. Per ulteriori informazioni su come funziona la crittografia, controlla HTG spiega: cos'è la crittografia e come funziona?


Gli algoritmi sono strumenti matematici che forniscono una varietà di usi nell'informatica. Lavorano per fornire un percorso tra un punto iniziale e un punto finale in modo coerente e forniscono le istruzioni per seguirlo. Sapere di più di quello che abbiamo evidenziato? Condividi le tue spiegazioni nei commenti!

What Are Computer Algorithms?

How Do Algorithms Work?

How Do Algorithms Work?

What Is Computer Science? (Part 2: Algorithms, Computation, And More)

What Is An Algorithm And Why Should You Care? | Algorithms | Computer Science | Khan Academy

Computer Science Basics: Algorithms

What Exactly Is An Algorithm? Algorithms Explained | BBC Ideas

What Is An Algorithm?

COMPUTER PROGRAMMING

Computer Science Basics: Sequences, Selections, And Loops

Intro To Algorithms: Crash Course Computer Science #13


Privacy e sicurezza - Articoli più popolari

Come funziona la nuova modalità riservata in Gmail

Privacy e sicurezza May 14, 2025

Dopo aver inviato un'email, è praticamente fuori dal tuo controllo. La nuova modalità riservata di Gmail cerca di darti un po 'di controllo offrendo date di scadenza dei messaggi ..


Come disattivare gli annunci personalizzati da Google

Privacy e sicurezza Jan 2, 2026

Gli annunci sono una sfortunata necessità su Internet: sono il modo in cui siti come questo sono in grado di funzionare. Ma se trovi gli annunci personalizzati un po 'troppo inquie..


Perché una password di Windows non è sufficiente per proteggere i tuoi dati

Privacy e sicurezza Sep 22, 2025

Quindi hai impostato una password sul tuo laptop o desktop Windows e ti disconnetti sempre o blocchi lo schermo quando lo lasci da solo. Questo non proteggerà ancora i tuoi dati se..


Come giocare a giochi SteamVR (e altre app non Oculus) su Oculus Rift

Privacy e sicurezza Jun 22, 2025

CONTENUTO UNCACHED Oculus Rift è bloccato per impostazione predefinita e eseguirà solo giochi e app dal negozio di Oculus. Vedrai un messaggio "Fonte sconosciuta" su..


Come aggiungere ulteriori impronte digitali Touch ID su iPhone o iPad

Privacy e sicurezza Jan 30, 2026

CONTENUTO UNCACHED Gli scanner di impronte digitali sono stati un'opzione su alcuni modelli di laptop per circa il tempo in cui il concetto esisteva, ma di solito sono se..


Come trasformare un vecchio telefono Android in una telecamera di sicurezza di rete

Privacy e sicurezza Jul 11, 2025

CONTENUTO UNCACHED Se l'idea di una telecamera di sicurezza in rete che puoi visualizzare in remoto e ricevere avvisi da appelli a te (ma i $$$ di un modello commerciale no), cont..


Geek principiante: ricorda tutto ciò che vedi online con Evernote per Chrome

Privacy e sicurezza Jul 8, 2025

CONTENUTO UNCACHED Hai mai scoperto un ottimo articolo, un'immagine o un download su un sito Web, solo per dimenticare dove si trovava in seguito? Ecco come puoi utilizzare Evernote per sta..


Recensioni geek: primo sguardo a Internet Explorer 8 Beta 2

Privacy e sicurezza Aug 29, 2025

CONTENUTO UNCACHED È passato molto tempo da quando Microsoft ha rilasciato la prima beta di Internet Explorer 8, il che mi ha fatto pensare a cosa avessero in serbo. Dopo aver letto che ha..


Categorie