# Algoritmi da sapere senza incertezze I seguenti algoritmi sono ritenuti “saperi minimi” per chi vuole studiare informatica e devono essere conosciuti e realizzati senza incertezze. ## Algoritmi numerici - Scomposizione in fattori primi di un numero intero - Fattoriale di un numero (eventualmente anche con versione ricorsiva) - Elevamento a potenza intera di un numero reale - MCD tra due numeri (esistono diverse soluzioni) - Calcolo del mcm tra due numeri (esistono diverse soluzioni) - Primalità di un numero intero (N.B. 1 non è considerato numero primo, si parte da due) - Stampa dei primi N numeri primi - Calcolo dell'n-esimo numero primo - Calcolo dei primi N termini della serie di Fibonacci (versione iterativa e/o ricorsiva) - Tabellina pitagorica - Calcolo della radice quadrata con il metodo dicotomico - Scambio del contenuto di due variabili ## Vettori parzialmente riempiti delle diverse tipologie (sentinella, contatore, valore nullo) - Copia di un vettore su un altro - Ricerca del max/min tra gli elementi - Somma degli elementi di un vettore (accumulazione); calcolo della media - Aggiunta di un elemento - Ricerca di un elemento (sia per vettore ordinato che non ordinato) - Calcolo del numero di occorrenze di un elemento - Ricerca del valore o dei valori più frequenti (moda) - Ordinamento di un vettore (diversi algoritmi) - Inserimento di un elemento in un vettore ordinato - Ricerca di un sottovettore in un vettore (esempio: ricerca sottostringa in una stringa) - Unione di due vettori ordinati - Unione di due vettori non ordinati (aggiunta in fondo) - Eliminazione di un elemento - Eliminazione dei duplicati - Intersezione tra due vettori di elementi distinti (insiemi) - Unione tra due vettori di elementi distinti (insiemi)