• Non ci sono risultati.

ESERCIZIO DI ASD DEL 13 OTTOBRE 2008

N/A
N/A
Protected

Academic year: 2021

Condividi "ESERCIZIO DI ASD DEL 13 OTTOBRE 2008"

Copied!
1
0
0

Testo completo

(1)

ESERCIZIO DI ASD DEL 13 OTTOBRE 2008

Ricerca per Bisezione

Sia A un vettore contenente n numeri interi ordinati in ordine crescente. Sia k un numero intero. Si consideri il problema di determinare se il numero k occorre in A ed in caso affermativo restituire una delle posizioni in cui occorre k (in caso negativo si restituisca −1).

a.1 Si scriva lo pseudo-codice di un algoritmo ricorsivo per risolvere il problema sopra proposto.

Suggerimento: Si divida il vettore in due parti e si confronti k con l’e- lemento centrale. Se k `e minore dell’elemento centrale si proceda con la ricerca nella met`a di sinistra, altrimenti si proceda con la ricerca nella met`a di destra.

a.2 Si dimostri la correttezza dell’algoritmo descritto.

Suggerimento: Si proceda per induzione sulla dimensione del vettore.

a.3 Si determini la complessit`a dell’algoritmo descritto.

Suggerimento: Si determini l’equazione ricorsiva di complessit`a e la si risolva con l’albero delle chiamate ricorsive.

a.4 Si scriva lo pseudo-codice di un algoritmo non ricorsivo per risolvere lo stesso problema. L’algoritmo deve avere la stessa complessit`a della versione ricorsiva.

Suggerimento: Si cerchi di mimare con un ciclo while il comportamento dell’algoritmo ricorsivo.

Date: 13 Ottobre 2008.

1

Riferimenti

Documenti correlati

Fabio GAVARINI Appello del 2

PROVA SCRITTA DI GEOMETRIA DEL 17/02/2017 SOLUZIONE DEGLI ESERCIZI PROPOSTI.

Siano L 1 ed L 2 due liste concatenate ordinate le cui chiavi sono numeri interi.. Si consideri il problema di fondere le due liste ottenendo un’unica

Evitare di scrivere un’unica procedura, ma scrivere separatamente le procedure per l’inserimento e la cancellazione nelle liste.. Se necessario utilizzare anche il

[r]

[r]

Sia k il numero di eccedenze strette di 0 (peraltro uguale al numero di eccedenze strette di ). Proseguendo, dopo esattamente k passaggi di mano tutti hanno il loro diploma.

Notiamo che vi è un solo bit di ridondanza x n =x 1 +x 2 +…..+x n-1 : ricordando che la somma di (n-1) bits 0,1 in Z 2 è 0 se il numero di bits=1 è pari, ed è 1 se il numero di