Appunti VERIFICATO

bioinformatica

Università degli Studi di Napoli - Federico II Biotecnologie per la Salute 2019
203 visualizzazioni
7 download
Nessun voto ancora
Condividi: WhatsApp Telegram

Di cosa parla

Riassunto AI · si legge in un minuto

Questo documento esplora i concetti fondamentali di programmi, linguaggi di programmazione e algoritmi, essenziali per la bioinformatica. Vengono definite le differenze tra interpreti e compilatori, e le classificazioni dei linguaggi. Un focus chiave è sulla programmazione dinamica, illustrata con la sequenza di Fibonacci per mostrare come la risoluzione di sottoproblemi e il riutilizzo dei risultati intermedi ottimizzino l'efficienza. L'algoritmo di Needleman-Wunsch è presentato come un'applicazione diretta della programmazione dinamica per l'allineamento di sequenze, cruciale per l'analisi bioinformatica e la gestione di problemi di ottimizzazione complessi.
Leggi il riassunto completo
  • Cos'è un programma: Un software eseguito da un elaboratore per risolvere problemi, costituito da una lista di istruzioni. Richiede traduzione dal linguaggio assembly o di alto livello in linguaggio macchina. Componenti hardware come la CPU e il suo Instruction Set sono fondamentali per l'esecuzione.
  • Cos'è un linguaggio di programmazione: Un linguaggio formale che specifica istruzioni per produrre dati in output, controllando il comportamento di una macchina. È definito da lessico, sintassi e semantica, includendo variabili, espressioni, istruzioni e strutture di controllo del flusso.
  • Interprete vs. Compilatore: Un interprete esegue il codice sorgente traducendo le istruzioni in tempo reale. Un compilatore traduce il codice sorgente in linguaggio macchina una sola volta, producendo un eseguibile (es. file .exe). Entrambi sono concetti di implementazione.
  • Classificazione dei linguaggi: I linguaggi si dividono in "high-level" e "low-level". I linguaggi di basso livello (es. assembler) sono più vicini all'hardware e spesso più veloci, mentre quelli di alto livello (es. PHP, Java, C++) sono più astratti e complessi da tradurre.
  • Cos'è un algoritmo: Un procedimento per risolvere un problema attraverso un numero finito di passi elementari, chiari e non ambigui, in un tempo ragionevole. È un concetto cardine della programmazione, rappresentando la logica di elaborazione prima della sua codifica in un linguaggio specifico.
  • Programmazione Dinamica: Un approccio che ottimizza la risoluzione di problemi complessi suddividendoli in sottoproblemi sovrapposti e riutilizzando i risultati intermedi. È illustrata dalla successione di Fibonacci, mostrando la maggiore efficienza di un approccio "bottom-up" (O(n)) rispetto a uno ricorsivo "top-down" (O(2^n)).
  • Applicazioni e vantaggi: L'approccio iterativo della programmazione dinamica rivela sottoproblemi identici, ordina le operazioni per il riutilizzo, e costruisce una tabella di risultati intermedi. Questo è cruciale per problemi di ottimizzazione in bioinformatica, come l'algoritmo di Needleman-Wunsch, che calcola tutti i percorsi possibili per l'allineamento di sequenze una sola volta, conservando i risultati intermedi per trovare il "percorso migliore" in modo efficiente.

Riassunto generato con l'intelligenza artificiale a partire dagli appunti. Come lo facciamo

Anteprima pagina 1 — bioinformatica

Stai vedendo l'anteprima delle prime pagine. Il file completo è gratis: registrati per leggerlo tutto.

Studia questi appunti con l'AI

Riassunto e domande d'esame sono gratis: chiedili e ti mandiamo un'email quando sono pronti.

Questo appunto è gratis. Registrati in 30 secondi per leggere tutte le pagine e scaricarlo.

Simula l'esame con domande costruite su questi appunti.

Altri appunti di BIOTECNOLOGIE MOLECOLARI E BIOINFORMATICHE

Condividi questi appunti

WhatsApp Telegram