Come scrivere algoritmi per principianti

Lavorare fino a tardi nel suo ufficio

Credito immagine: vgajic/E+/GettyImages

Ideare nuovi algoritmi può sembrare intimidatorio ai nuovi programmatori, ma è un'abilità che può essere praticata come qualsiasi altra. Inizia cercando un libro di problemi di algoritmo per principianti o seguendo un corso di informatica online o offline. Esercitati a padroneggiare le basi della progettazione di algoritmi, inclusa la stima della complessità e del tempo di esecuzione, il controllo per casi limite che potrebbero causare problemi a un algoritmo del computer e suddividere i problemi in più piccoli parti.

Che cos'è un algoritmo informatico

Un algoritmo è una procedura seguita da un computer o da un essere umano per risolvere un problema. La divisione lunga è un algoritmo di esempio che molte persone imparano a fare a scuola. L'algoritmo euclideo, utilizzato per trovare il massimo comun divisore di due numeri, è un altro esempio comune.

Video del giorno

Un algoritmo informatico è in definitiva scritto in un linguaggio di programmazione che il computer può capire, ma quando l'algoritmo è in corso sviluppato, i programmatori e gli informatici spesso lo scrivono prima in modo informale come prosa e poi più formalmente in un formato generico chiamato pseudocodice.

Lo pseudocodice sembra un linguaggio di programmazione, ma poiché è progettato per essere letto dagli umani anziché dai computer, non ha regole sintattiche rigorose.

Semplici esempi di algoritmi per principianti

Esempi famosi di algoritmi vengono spesso insegnati a scienziati informatici e programmatori principianti. Alcuni esempi sono l'algoritmo di Dijkstra, utilizzato nella teoria dei grafi per trovare il percorso più breve tra due punti; Merge Sort, che viene utilizzato per ordinare elenchi di dati; e l'algoritmo RSA utilizzato per crittografare i dati. Molti di questi sono disponibili online in libri di testo, video e materiale didattico gratuiti.

Il sito di apprendimento online Khan Academy ha molti esempi di algoritmi con cui i principianti possono sperimentare. Le principali università come Harvard, Stanford e il Massachusetts Institute of Technology rendono curriculari materiali e video del corso con algoritmi comuni disponibili online per l'introduzione all'informatica classi.

Ci sono anche siti con problemi di concorso di programmazione e spiegazioni su come sono risolti, che possono aiutare le persone interessate a sviluppare le proprie capacità.

Considerazioni sull'algoritmo

Quando stai inventando un nuovo algoritmo, vuoi assicurarti che funzioni in tutti i casi in cui pensi che dovrebbe e cerca di capire quanto sia efficiente. In genere, i programmatori dividono l'algoritmo in parti discrete in modo da poter pensare a come funziona ciascuna parte e quanto tempo impiega. Questo è chiamato design modulare.

È una buona idea testare personalmente un algoritmo con carta e penna su alcuni casi semplici prima di iniziare a scrivere codice. Quando pensi all'efficienza, pensa al caso medio, alle situazioni comuni che il tuo algoritmo potrebbe incontrare e al runtime nel caso peggiore. Il runtime peggiore è spesso rappresentato con la cosiddetta notazione Big-O.