• Non ci sono risultati.

Algoritmi e Strutture Dati II 18 luglio 2007

N/A
N/A
Protected

Academic year: 2021

Condividi "Algoritmi e Strutture Dati II 18 luglio 2007"

Copied!
2
0
0

Testo completo

(1)

Algoritmi e Strutture Dati II

18 luglio 2007

Svolgere esattamente 3 dei seguenti esercizi:

1) Si consideri il seguente grafo orientato e pesato:

in cui un arco non orientato di peso x sta ad indicare due archi orientati aventi lo stesso peso x.

Si supponga che sia stato preventivamente calcolato il vettore d[] delle distanze dal nodo 1 ad ogni altro nodo, ottenendo:

d[1]=0, d[2]= 2, d[3]= 8, d[4]=6, d[5]= 3, d[6]=9, d[7]=4, d[8]= 12,

d[9]=4, d[10]=13, d[11]=10, d[12]= 8, d[13]=11 Calcolare il cammino minimo dal nodo 1 al nodo 10.

2) Sia dato l'alfabeto ={Σ 0, 1, 2, 4}. Simulare l'esecuzione dell'algoritmo di Rabin-Karp (senza utilizzare la riduzione mod p, al fine di facilitare lo svolgimento dell'esercizio) per cercare tutte le occorrenze della stringa 131 all'interno della stringa 01312131.

3) Siano date le matrici M1, M2, M3, M4 di dimensione rispettivamente 10x4, 4x8, 8x5, 5x5.

Trovare la disposizione ottimale delle parentesi che minimizza il costo del calcolo del prodotto M1 M2 M3 M4 ed il numero di moltiplicazioni elementari richieste utilizzando tale disposizione.

(2)

4) Si consideri il seguente grafo non orientato, connesso e pesato:

Trovare il minimo albero ricoprente del grafo simulando l’esecuzione dell’algoritmo di Kruskal

Rispondere ad esattamente 3 delle seguenti domande:

1) Illustrare e discutere la rappresentazione di insiemi disgiunti tramite liste concatenate.

2) Enunciare e dimostrare il Teorema Fondamentale utilizzato per calcolare la più lunga sottosequenza comune (Sottostruttura ottima di una LCS).

3) Illustrare e discutere l'algoritmo (basato sulla programmazione dinamica) utilizzato per ottenere la disposizione delle parentesi che minimizza il numero di moltiplicazioni elementari nel prodotto di n matrici assegnate.

4) Enunciare il problema del “minimo off-line” e discutere la soluzione algoritmica che utilizza le strutture dati per la rappresentazione di insiemi disgiunti.

5) Enunciare e dimostrare il Teorema Fondamentale utilizzato dagli algoritmi noti per la costruzione del Minimo Albero Ricoprente.

Riferimenti

Documenti correlati

Illustrare e discutere l'algoritmo (basato sulla programmazione dinamica) utilizzato per ottenere la disposizione delle parentesi che minimizza il

Illustrare e discutere l'algoritmo (basato sulla programmazione dinamica) utilizzato per ottenere la disposizione delle parentesi che minimizza il

Le tessere devono essere riposizionate su una seconda scacchiera in modo che risultino affiancate in base alla concordanza dei numeri sui lati, cioè

Si scriva una funzione Pascal di complessità ottima per determinare il peso di T assumendo che l’albero sia realizzato con puntatori.. Un dizionario è realizzato mediante una

Si scriva la procedura Pascal I NSERTION S ORT vista a lezione per ordinare gli n elementi A[1],...,A[n] di un vettore e se ne dimostri la complessità.. Scrivere

Per raggiungere la sufficienza occorrono almeno 3 esercizi risolti senza alcun errore.. Le soluzioni degli

Per raggiungere la sufficienza occorrono almeno 3 esercizi risolti senza alcun errore.. Le soluzioni degli

L’algoritmo ABC, essendo ricorsivo, prende in input gli interi n e k, il vettore SOL in cui viene mem- orizzata la stringa da stampare, il numero i di elementi della stringa creati