Sono presentate alcune nozioni di algoritmica. in particolare, sono definite ed illustrate con esempi le nozioni di problema computazionale, funzione matematica, rappresentazione di dati, progettazione di algoritmi, analisi di efficienza di algoritmi, linguaggi per la descrizione di algoritmi, e modelli di calcolo per l'esecuzione di algoritmi. Sono presentati alcuni problemi fondamentali (moltiplicazione tra interi, ricerca del minimo in un insieme, ordinamento di una sequenza di interi) insieme a semplici algoritmi per la loro risoluzione. Viene illustrata la differenza tra problemi trattabili (che possono essere risolti con algoritmi efficienti), problemi intrattabili (che possono essere risolti, ma non con algoritmi efficienti), e problemi insolubili (che non possono essere sempre risolti). Sono illustrati i costrutti principali dei linguaggi di programmazione ad alto livello (sequenza, iterazione, condizionale) che servono per la descrizione precisa e non ambigua di algoritmi. Sono brevemente descritti anche i principali modelli di calcolo (automi a stati finiti, macchina di Turing, macchina di von Neumann). Sono infine brevemente descritti dei semplici algoritmi per tre importanti applicazioni (ricerca di parole in testi, cifratura di messaggi, ray tracing).

A.A. Bertossi, D. Rossi, G. Zavattaro (2007). Dall’Algoritmo al Programma. BOLOGNA : Zanichelli.

Dall’Algoritmo al Programma

BERTOSSI, ALAN ALBERT;ROSSI, DAVIDE;ZAVATTARO, GIANLUIGI
2007

Abstract

Sono presentate alcune nozioni di algoritmica. in particolare, sono definite ed illustrate con esempi le nozioni di problema computazionale, funzione matematica, rappresentazione di dati, progettazione di algoritmi, analisi di efficienza di algoritmi, linguaggi per la descrizione di algoritmi, e modelli di calcolo per l'esecuzione di algoritmi. Sono presentati alcuni problemi fondamentali (moltiplicazione tra interi, ricerca del minimo in un insieme, ordinamento di una sequenza di interi) insieme a semplici algoritmi per la loro risoluzione. Viene illustrata la differenza tra problemi trattabili (che possono essere risolti con algoritmi efficienti), problemi intrattabili (che possono essere risolti, ma non con algoritmi efficienti), e problemi insolubili (che non possono essere sempre risolti). Sono illustrati i costrutti principali dei linguaggi di programmazione ad alto livello (sequenza, iterazione, condizionale) che servono per la descrizione precisa e non ambigua di algoritmi. Sono brevemente descritti anche i principali modelli di calcolo (automi a stati finiti, macchina di Turing, macchina di von Neumann). Sono infine brevemente descritti dei semplici algoritmi per tre importanti applicazioni (ricerca di parole in testi, cifratura di messaggi, ray tracing).
2007
Fondamenti di Informatica
179
208
A.A. Bertossi, D. Rossi, G. Zavattaro (2007). Dall’Algoritmo al Programma. BOLOGNA : Zanichelli.
A.A. Bertossi; D. Rossi; G. Zavattaro
File in questo prodotto:
Eventuali allegati, non sono esposti

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11585/43977
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus ND
  • ???jsp.display-item.citation.isi??? ND
social impact