• Non ci sono risultati.

008AA – ALGORITMICA E LABORATORIO

N/A
N/A
Protected

Academic year: 2021

Condividi "008AA – ALGORITMICA E LABORATORIO"

Copied!
1
0
0

Testo completo

(1)

008AA – ALGORITMICA E LABORATORIO Appelllo dell’11 gennaio 2016

Cognome Nome: N. Matricola: Corso: A B

Esercizio 1. (10 punti)

Progettare un algoritmo efficiente che stampi le chiavi memorizzate nei nodi di un albero binario per livelli, ovvero in ordine di distanza crescente dalla radice. Ad esempio, le visita per livelli eseguita sull’albero in figura deve restituire le chiavi nel seguente ordine: 50, 20, 70, 10, 40, 90, 30, 80, 100, 35.

Esercizio 2. (10 punti)

Si consideri il problema dell’allineamento ottimo (Edit Distance) tra le due stringhe P = axabcs e T = axbacs, considerando il peso di un errore di mismatch = 2, e quello di una inserzione o cancellazione = 1. Simulare l’algoritmo di programmazione dinamica per il calcolo dell’allineamento ottimo mostrando

1. il contenuto della tabella che l’algoritmo riempie dinamicamente;

2. un allineamento ottimo ricostruibile dalla tabella.

Esercizio 3. (10 punti)

Progettare un algoritmo che, dato un array di interi in ingresso, verifichi efficientemente che tale array soddisfi la propriet`a di heap.

1. Dare un programma in pseudocodice per l’algoritmo proposto.

2. Discutere la complessit`a dell’algoritmo proposto.

Esercizio 4. (2 punti)

Quanto costa la ricerca di una chiave k in uno heap di n elementi nel caso pessimo?

Riferimenti

Documenti correlati

Calcolare la visita DFS su G e si mostri l’albero DFS specificando anche il tipo di archi individuati dalla visita (ossia dell’albero, indietro, in avanti, attraversamento – o

(4+3+3 punti) Si progetti un algoritmo ricorsivo basato sulla tecnica Divide et Impera che calcola il secondo elemento pi` u grande di un vettore A di n interi, senza modificarlo..

(4+4) Si definisca la relazione che consente di calcolare mediante Programmazione Dinamica la Edit Distance di due stringhe S1 e S2, nell’ipotesi che l’errore di mismatch abbia costo

• Si diano le regole per navigare sull’heap ternario, cio` e le regole per cui, dato il nodo i, si possa accedere direttamente ai 3 figli o al padre.. • Si fornisca l’algoritmo

Dato un albero binario T in cui ogni nodo contiene un intero positivo, diciamo che la media di un sottoalbero non vuoto ` e la somma degli interi contenuti nei suoi nodi diviso

In caso di risposta affermativa al punto 2, disegnare l’albero di decisione corrispondente all’algoritmo trovato che risolve il problema con due

Un grafo non orientato ` e detto 2-colorabile se ` e possibile attribuire a ogni vertice uno tra due colori in modo che vertici adiacenti siano colorati con colori distinti..

Progettare e descrivere in pseudocodice un algoritmo di tipo divide et impera per calcolare la somma di n interi positivi, ciascuno di valore Θ(1), memorizzati in un array1.