• 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 Appello straordinario, 4 Novembre 2013

Cognome Nome: N. Matricola: Corso: A B

Esercizio 1. (8 punti) Sia data la seguente funzione

Mistero(n) {

if (n < 1) return 0;

m = Sqrt(n); // m prende la parte intera della radice quadrata di n x = 0;

for (i = 0; i < m; i++) { x = x + 3;

}

return x + Mistero(n/4) * Mistero(n/4);

}

1. Indicare e risolvere l’equazione di ricorrenza che esprime la complessit`a in tempo al caso pessimo della funzione Mistero.

2. Scrivere una semplice alternativa al codice della funzione Mistero che restituisca lo stesso valore, ma abbia un ordine di complessit`a provatamente inferiore. Fornire la relativa analisi di complessit`a.

Esercizio 2. (6 punti)

Partendo da un albero AVL vuoto, mostrare le operazioni di ribilanciamento causate dall’inserimento delle chiavi

23, 41, 34, 26, 75, 83, 59 ,

indicando, prima di ogni rotazione, il nodo critico e il tipo di rotazione eseguita.

Esercizio 3. (8 punti)

Sia dato un albero binario T in cui ciascun nodo `e bianco oppure nero. Un sottoalbero monocolore `e caratte- rizzato dall’avere tutti i nodi dello stesso colore (bianchi oppure neri). Scrivere un algoritmo ricorsivo lineare che, preso in ingresso T , calcoli la dimensione massima di un sottoalbero monocolore in T .

Esercizio 4. (8 punti)

E dato il seguente grafo orientato, rappresentato con liste di adiacenza ordinate alfabeticamente:`

h b

c

d e

g

f a

1. Indicare l’ordine di visita BFS e DFS dei vertici del grafo, partendo dal vertice a.

2. Disegnare gli alberi BFS e DFS ottenuti con le visite.

3. Indicare la classificazione degli archi indotta dalla visita DFS.

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.