• Non ci sono risultati.

Scrivere in forma leggibile il proprio nome, cognome e matricola sul testo del compito e su ogni foglio consegnato.

N/A
N/A
Protected

Academic year: 2021

Condividi "Scrivere in forma leggibile il proprio nome, cognome e matricola sul testo del compito e su ogni foglio consegnato."

Copied!
2
0
0

Testo completo

(1)

Esame di Algoritmi e Strutture di Dati 1 Luned`ı 26 Luglio 2004

Nome:

Cognome:

Matricola:

Scrivere in forma leggibile il proprio nome, cognome e matricola sul testo del compito e su ogni foglio consegnato.

Consegnare solo la bella copia e il testo del compito.

Non ` e possibile consultare alcun tipo di materiale didattico.

Non ` e possibile uscire dopo l’inizio dello scritto.

Esercizio (Punti 30)

Dati due numeri reali a e b, l’intervallo [a, b] `e l’insieme {x | a ≤ x ≤ b}. Due intervalli si dicono disgiunti se i corrispondenti insiemi sono disgiunti, cio`e non hanno elementi in comune.

Sia I = {[a

1

, b

1

], [a

2

, b

2

], . . . , [a

n

, b

n

]} un insieme di intervalli. Scrivere una procedura efficiente che, dato in ingresso l’insieme I, determina se gli intervalli contenuti in I sono a due a due disgiunti.

[Suggerimento: Si rappresenti ogni intervallo con un oggetto x dotato di due cambi a[x] e b[x] e l’insieme I come un vettore di puntatori a oggetti di tipo intervallo . . . ]

1

(2)

Soluzione

Algoritmo 1 DisjointIntervals(I) DisjointIntervals(I)

1:

Sort(I)

2:

for j ← 1 to length(I) − 1 do

3:

if b[I[j]] ≥ a[I[j + 1]] then

4:

return false

5:

end if

6:

end for

7:

return true

Algoritmo 2 Sort(I) Sort(I)

1:

for j ← 2 to length(I) do

2:

key ← I[j]

3:

k ← j − 1

4:

while (k > 0) and (a[key] < a[I[k]]) do

5:

I[k + 1] ← I[k]

6:

k ← k − 1

7:

end while

8:

I[k + 1] ← key

9:

end for

2

Riferimenti

Documenti correlati

Modificare opportunamente la struttura di dati tabella ad indirizzamento diretto in modo che possa contenere pi`u oggetti con la medesima chiave (ma con dati satellite

Scrivere in forma leggibile il proprio nome, cognome e matricola sul testo del compito e su ogni foglio consegnato.. Consegnare solo la bella copia e il testo

Scrivere in forma leggibile il proprio nome, cognome e matricola sul testo del compito e su ogni foglio consegnato;.. Consegnare solo la bella copia e il testo

Sia X un insieme dotato di due topologie

Ne segue allora che la funzione ha ordine di infinitesimo

L’a↵ermazione C `e

Accuratezza richiesta Valore dell’ integrale Stima errore assoluto Errore

Quesito F (punti 3) Trovare le radici dell’ equazione e −x 2 sin(2πx) = 0 nell’ intervallo [0, 1] utilizzando degli opportuni comandi Matlab o il metodo delle secanti..