• Non ci sono risultati.

Algoritmi e Programmazione Avanzata Compito di teoria – 14 Maggio 2007

N/A
N/A
Protected

Academic year: 2021

Condividi "Algoritmi e Programmazione Avanzata Compito di teoria – 14 Maggio 2007"

Copied!
1
0
0

Testo completo

(1)

Algoritmi e Programmazione Avanzata

Compito di teoria – 14 Maggio 2007

Tempo: 30 minuti, NON è possibile consultare libri o appunti.

Esercizio 1

(6 punti)

Sia data la sequenza di interi, supposta memorizzata in un vettore:

11, 31, 24, 9, 98, 90, 5, 13, 88, 77, 34, 65

la si trasformi in un heap, ipotizzando di usare un vettore come struttura dati. Si riportino graficamente i diversi passi della costruzione dell'heap ed il risultato finale. Si ipotizzi che, alla fine, nella radice dell'heap sia memorizzato il valore MINIMO;

si eseguano su tale heap i primi 2 passi dell'algoritmo di heapsort per ottenere un ordinamento DECRESCENTE.

Esercizio 2

(5 punti)

Sia dato il grafo orientato e pesato definito in figura

Si determinino tramite l'algoritmo di Dijkstra i valori di tutti i cammini minimi che collegano il vertice A con ogni altro vertice. Si assuma, qualora necessario, un ordine alfabetico per i vertici visitati.

Esercizio 3

(4 punti)

Discutere la complessità dell'algoritmo di ordinamento quicksort in funzione del partizionamento ad ogni passo di ricorsione ed in funzione della scelta del pivot. Quali sono le scelte possibili per il valore del pivot? Come si può comportare l'algoritmo se il vettore è già ordinato?

I voti saranno comunicati tramite la segreteria didattica, contestualmente alla data e luogo per la registrazione.

4

G

F E

D

C B

A

3

5

6 6 4

1

1

4

3 1

Riferimenti

Documenti correlati

Il grafo che rappresenta le connessioni della rete wireless ha come vertici i nodi della rete e come archi, le connessioni tra i nodi che si trovano ad una distanza inferiore ad L

Si mostri il contenuto della tabella di hash al termine della sequenza di inserimenti, assumendo che la sua dimensione sia pari a M=9 e che la funzione di hash utilizzata

Dato un asterisco, un secondo asterisco è ad esso adiacente se si trova in una delle 8 posizioni contigue (stessa riga subito a sinistra o a destra, stessa colonna in alto o in

Supponendo che ad ogni pasto il paziente debba mangiare esattamente M pietanze, si scriva una procedura in linguaggio C in grado di calcolare l’elenco delle M pietanze, compatibili

Istituzioni di Analisi Matematica, 2017-2018 Paola Mannucci, Annalisa Cesaroni, Alvise Sommariva.. Esercizi per il compito Studi

BubbleSort (letteralmente: ordinamento a bolla) è un semplice algoritmo di ordinamento basato sullo scambio di elementi adiacenti. Ogni coppia di elementi adiacenti viene comparata

L’insertion Sort è uno algoritmo di ordinamento molto efficiente per ordinare un piccolo numero di elementi. L’idea di ordinamento è simile al modo che un giocatore di bridge

L’insertion Sort è uno algoritmo di ordinamento molto efficiente per ordinare un piccolo numero di elementi.. L’idea di ordinamento è simile al modo che un giocatore di bridge