Fondamenti di Programmazione - Prof.ssa Gargano Anno Acc Esercitazioni 2009
|
|
- Nicola Ferrante
- 4 anni fa
- Visualizzazioni
Transcript
1 Fondamenti di Programmazione - Prof.ssa Gargano Anno Acc Esercitazioni Mostrare per induzione che per ogni intero positivo n 0, la seguente affermazione S(n) é vera: S(n): n i=0 2i = 2 n Mostrare per induzione che per ogni intero positivo n 1, la seguente affermazione S(n) é vera: S(n) : 2 n k=1 k = (n + 1)2 (n + 1). 3. Mostrare per induzione che la seguente affermazione S(n) é vera per ogni intero n 1: S(n) : n! n n n. Mostrare il Passo Induttivo: 4. Mostrare per induzione che la seguente affermazione S(n) è vera per ogni intero positivo n 1: S(n) : log(n!) nlog n. (Si ricorda che log(ab) = log a + log b.) Mostrare il Passo Induttivo (indicando chiaramente lipotesi induttiva fatta: 5. Si consideri il seguente frammento di programma con A e B array con elementi indicizzati da 0 a n 1. r=1; for(i=0, i<n, i++) if (B[i]>A[i]) r=0; Si vuole mostrare per induzione che al termine del ciclo di for la variabile r ha valore 1 se e solo se B[i] A[i] per ogni i = 0,...,n 1. A tale scopo definiamo l invariante di Ciclo S(k): Se si raggiunge il test i< n con valore di i pari a k, con k compreso tra 0 ed n, allora r ha valore 1 se e solo se B[i] A[i] per ogni i = 0,...,k 1. Quale è il valore k per la Base induttiva? Mostre il Passo Induttivo: Mostrare la Correttezza al termine del ciclo: 6. Si consideri il seguente frammento di programma dove A è un array con elementi indicizzati da 0 a n 1. p=a[0]; for(i=1, i<n, i++) p=p*a[i]; Si vuole mostrare per induzione che al termine del ciclo di for la variabile p restituisce il prodotto di tutti gli elementi dell array A. A tale scopo definiamo l invariante di Ciclo S(k): Se si raggiunge il test i < n con valore di i pari a k, per k compreso tra 1 ed n, allora la variabile p ha valore pari al prodotto dei primi k elementi dell array, cioé A[0]... A[k 1].
2 2 7. Si consideri il seguente ciclo di for in cui A[0..n 1] è un vettore di interi non negativi, C[0..m 1] è un vettore di dimensione m, dove m 1 è il massimo degli elementi di A e, prima dell esecuzione del ciclo di for, gli elementi di C sono tutti uguali a zero. for (i= 0, i< n, i++) C[A[i]] = C[A[i]] + 1 Si vuole mostrare che al termine del ciclo for, C è un vettore tale che C[j] contiene il numero degli elementi di A uguali a j. A tale scopo definiamo la seguente invariante relativa al ciclo for nel frammento S(k): Se si raggiunge il controllo i < n con k uguale al valore dell indice i del ciclo, allora C[j] contiene il numero degli elementi di A[0..k 1] uguali a j, per ogni j = 0,...,m 1. Si dimostri per induzione che S(k) è vera per ogni k con k 0. Mostrare il Passo Induttivo (indicando chiaramente l ipotesi induttiva fatta): 8. Si consideri il seguente frammento di programma con A[0..n 1] array di n interi. i=0; r=1; while (i < n) if (A[i]!= 0) i++ else { i=n; r=0 } Si vuole mostrare che al termine del ciclo while risulta r = 1 se e solo se ogni elemento A[j] di A risulta diverso da 0. A tale scopo definiamo la seguente invariante relativa al ciclo while nel frammento S(k): Se si raggiunge il controllo i n con k pari al valore dell indice i del ciclo, k 0, allora risulta r = 1 se e solo se ogni elemento A[j] risulta diverso da 0. Si dimostri per induzione che S(k) è vera per ogni k, k Si consideri il seguente frammento di programma in cui L e una lista di interi positivi, rappresentata mediante array (usando una struttura di tipo LIST). somma = 0; i = 0; while (i < *pl->length) { if (*pl->a[i] > 8) then somma = somma + *pl->a[i]; i = i + 1 } Si vuole mostrare che al termine del ciclo while, la variabile somma contiene la somma degli elementi di L maggiori di 8. A tale scopo definiamo la seguente invariante relativa al ciclo while nel frammento S(k): Se si raggiunge il controllo del ciclo while con k = i, k 0, allora somma contiene la somma degli elementi di L indicizzati 0,..., k - 1 e maggiori di 8. Si dimostri per induzione che S(k) è vera per ogni k 0. Base (indicando il valore base di k): Passo Induttivo (descrivere dettagliatamente lipotesi Induttiva ed il ragionamento fatto): Mostrare che al termine del ciclo while, la variabile somma contiene il numero degli elementi di L maggiori di 8:
3 3 10. Si consideri il seguente frammento di programma con A[0..n - 1] e B[0..n - 1] array di n interi. i=0; r=1; while (i < n) if (A[i]!= B[i]) i ++ else { i=n; r=0 } Si vuole mostrare che al termine del ciclo while risulta r = 1 se e solo se ogni elemento A[j] di A risulta diverso dal corrispondente elemento B[j] di B. A tale scopo definiamo la seguente invariante relativa al ciclo while nel frammento S(k): Se si raggiunge il controllo i n con k pari al valore dellindice i del ciclo, k 0, allora risulta r = 1 se e solo se ogni elemento A[j] risulta diverso dellelemento B[j] per j = 0,...,k 1. Si dimostri per induzione che S(k) e vera per ogni k, k 0. Mostrare il Passo Induttivo (indicando chiaramente lipotesi induttiva): Mostrare che al termine del ciclo while risulta r = 1 se e solo se ogni elemento A[j] di A risulta diverso dallelemento B[j] di B: 11. Simulare l esecuzione del SelectionSort iterativo sull array A = [15; 13; 23; 10] mostrando i confronti fatti ad ogni iterazione ed il contenuto dell array dopo ogni modifica dell array stesso. 12. Si considerino le seguenti funzioni: f(n) = n(n+1) 2, g(n) = max{n 3,9n}, h(n) = nlog n Per ognuna delle seguenti affermazioni dire se essa è vera o falsa. Per ogni affermazione vera si devono fornire i valori c ed n 0 che provano che la relazione O-grande è valida. a) f(n) è O(n 2 ) b) f(n) è O(g(n)) c) g(n) è O(h(n)) d) g(n) è O(n 3 ). 13. Si considerino le seguenti funzioni: f(n) = 2n 2 10, g(n) = 3n, { 2n se n è dispari h(n) = n 2 se n è pari. Per ognuna delle seguenti affermazioni dire se essa è vera o falsa. Per ogni affermazione vera si deveono fornire i valori c ed n 0 che provano che la relazione O-grande è valida. a) f(n) è O(g(n)) b) g(n) è O(h(n)) c) h(n) è O(f(n)). 14. Si considerino le seguenti funzioni: f(n) = { n i=1 i, g(n) n 3 se n è pari 4n se n altrimenti, h(n) = 2n /n. Per ognuna delle seguenti affermazioni dire se essa é vera o falsa. Per ogni affermazione vera si devono fornire i valori c ed n 0 che provano che la relazione O-grande é valida e occorre giustificare la risposta. a) f(n) è O(g(n)) b) f(n) è O(h(n)) c) g(n) è O(f(n)) d) g(n) è O(h(n)) e) h(n) è O(f(n)) f) h(n) è O(g(n)).
4 4 { { 15. Si considerino le seguenti funzioni: f(n) = n 4 n 3 se n < log n, g(n) = n 5 se n 100, h(n) = n 3 7 se n é pari n 5 altrimenti. Per ognuna delle seguenti affermazioni dire se essa è vera o falsa. Per ogni affermazione vera si deveono fornire i valori c ed n 0 che provano che la relazione O-grande è valida. a) g(n) è O(f(n)) a) f(n) è O(g(n)) b) g(n) è O(h(n)) c) h(n) è O(f(n)) c) h(n) è O(g(n)) c) 2 log 2 n è O(f(n)). 16. Si consideri la seguente relazione di ricorrenza BASE: T(1) = 1 PASSO Induttivo: T(n) = 2T(n 1) + n 2, per n n > 1. Si vuole determinare il valore esatto di T(n) per ogni n > 1. a) Determinare i valori iniziali di T(n): T(1) =, T(2) =, T(3) = b) Espandere la regola induttiva ed esprimere T(n) in termini di T(n 2). c) Esprimere T(n) in termini di T(n 3). d) Determinare la regola generale per esprimere T(n) in termini di T(n i). e) Per quale valore di i si può eliminare T(n i) dall espressione? f) Utilizzare la risposta ai punti d) ed e) per esprimere T(n) in termini solo di n (cioè non in funzione di altri valori della funzione T). 17. Si consideri la seguente relazione di ricorrenza BASE: T(0) = 1 PASSO Induttivo: T(n) = 2T(n 1) + 2 n, per n > 0. Si vuole determinare il valore esatto di T(n) per ogni n > 1. a) Determinare i valori iniziali di T(n): T(0) =, T(1) =, T(2) = b) Espandere la regola induttiva ed esprimere T(n) in termini di T(n 2). c) Esprimere T(n) in termini di T(n 3). d) Determinare la regola generale per esprimere T(n) in termini di T(n i). e) Per quale valore di i si può eliminare T(n i) dall espressione? f) Utilizzare la risposta ai punti d) ed e) per esprimere T(n) in termini solo di n (cioè non in funzione di altri valori della funzione T).
5 5 18. Si consideri la seguente relazione di ricorrenza BASE: T(1) = 1 PASSO Induttivo: T(n) = 2T(n 2) + 3n, per n multiplo di 2 ed n > 1. Si vuole determinare il valore esatto di T(n) per ogni n > 1. a) Determinare i valori iniziali di T(n): T(1) =, T(2) =, T(4) = b) Espandere la regola induttiva ed esprimere T(n) in termini di T(n 4). c) Esprimere T(n) in termini di T(n 6). d) Determinare la regola generale per esprimere T(n) in termini di T(n 2i). e) Per quale valore di i si può eliminare T(n 2i) dall espressione? f) Utilizzare la risposta ai punti d) ed e) per esprimere T(n) in termini solo di n (cioè non in funzione di altri valori della funzione T), 19. Si consideri la seguente relazione di ricorrenza BASE: T(1) = 1 PASSO Induttivo: T(n) = 2T(n/2) + 3n, per n potenza di 2 ed n > 1. Si vuole determinare il valore esatto di T(n) per ogni n > 1. a) Determinare i valori iniziali di T(n): T(1) =, T(2) =, T(4) = b) Espandere la regola induttiva ed esprimere T(n) in termini di T(n/2 2 ). c) Esprimere T(n) in termini di T(n/2 3 ). d) Determinare la regola generale per esprimere T(n) in termini di T(n/2 i ). e) Per quale valore di i si può eliminare T(n/2 i ) dall espressione? f) Utilizzare la risposta ai punti d) ed e) per esprimere T(n) in termini solo di n (cioè non in funzione di altri valori della funzione T). 20. Scrivere una relazione di ricorrenza per T(n), il tempo di esecuzione della seguente procedura f oo quando ha come argomento L una lista di lunghezza n; P2 e P1 richiedono tempo O(n) ciascuna. void foo(list L) {if (L == NULL) M = 4 else {P1(L); foo(l->next); P2(L)} } 21. Risolvere la relazione di ricorrenza trovata nell esercizio precedente. 22. Si analizzi il tempo di esecuzione della seguente funzione ALTER(L,M) in termini della somma n delle lunghezze delle due liste input. Giustificare la risposta. LIST ALTER ( LIST L, LIST M) { LIST S; if (L ==NULL) return NULL; else {S: = L->next; L->next = M; M->next = ALTER(S, M->next); return L; end; end
6 6 23. Sia X(n) definita ricorsivamente come segue BASE X(0) = 1, X(1) = 1 PASSO X(n) = 2X(n 2) + 1, per ogni n 2 Scrivere una funzione ricorsiva POT(n) che avendo in input un intero n restituisce X(n) (cio POT(n)=X(n), per ogni n 0). La procedura deve chiamare ricorsivamente se stessa con parametro < n. 24. Sia X(n) la funzione definita all esercizio precedente. Mostrare per induzione su m che per ogni m > 0 vale la seguente affermazione S(m) : X(2m) = 2 m+1 1. Mostrare la Base Induttiva : Mostrare il Passo Induttivo (Indicando chiaramente l Ipotesi Induttiva usata): 25. Sia A[1..n] un array di n interi. Si analizzi il tempo di esecuzione del seguente frammento di programma. Giustificare la risposta. Risposte non giustificate saranno valutate 0. void Funz(int A[]; int n); int x; { if (n > 1) { for (i= 1, i< n, i++) { if (A[i] > A[i+1]) {x=a[i]; A[i]=A[i+1]; A[i+1]=x} Funz(A,n-1) } } 26. Data la lista L = ( ), esegire lo split di L nelle due liste L 1 ed L 2 L 1 = L 2 = Siano L 1 ed L 2 le liste ordinate contenenti gli stessi elementi di L 1 ed L 2 rispettivamente, determinare la lista M che si ottiene dal merge di L 1 ed L 2 L 1 = L 2 = M = 27. Simulare lesecuzione del MergeSort sulla lista L = {9, 7, 5, 3} mostrando tutte le funzioni chiamate (mergesort, split, merge) con i rispettivi input e le liste intermedie prodotte durante lesecuzione della procedura (nellordine in cui esse sono chiamate e prodotte). 28. Scrivere una funzione ricorsiva in C che avendo in input una lista (a 1,...,a n ), rappresentata mediante una lista a puntatori L, dia in output tutti gli elementi a k della lista la cui posizione k è un multiplo di Scrivere una funzione in C che avendo in input una lista a puntatori L = (a 1,...,a n ) restituisce la lista (a 2,...,a n,a 1 ). Giustificare la risposta. 30. Utilizzando per le liste la rappresentazione mediante liste a puntatori, scrivere una funzione ricorsiva in C che, avendo in input una lista di interi L e un intero x, restituisca TRUE se esistono due elementi consecutivi in L la cui somma sia x, FALSE altrimenti. 31. Scrivere una funzione ricorsiva in C che, avendo in input una lista di interi positivi, rappresentata mediante una lista a puntatori restituisce la somma degli elementi nella lista. 32. Scrivere una procedura ricorsiva che, avendo in input una lista di interi positivi L, rappresentata mediante lista a puntatori cancella da L i suoi elementi maggiori di 7.
7 7 33. Si analizzi il tempo di esecuzione della seguente funzione ALTER(L,M) in termini della somma n delle lunghezze delle due liste input. Giustificare la risposta. LIST ALTER ( LIST L, LIST M) { LIST S; if (L ==NULL) return NULL; else {S: = L->next; L->next = M; M->next = ALTER(S, M->next); return L; } } 34. Utilizzando per le code la struttura dati lista a puntatori, mostrare la coda risultante e l output di ognuna delle seguenti operazioni applicate a una coda Q inizialmente vuota: enqueue(3,q), enqueue(4,q), dequeue(q), dequeue(q), dequeue(q), enqueue(1,q), enqueue(3,q), enqueue(1,q), dequeue(q). 35. Utilizzando per le code la rappresentazione mediante liste a puntatori, illustrare il risultato e la coda risultante dopo ognuna delle seguenti operazioni applicate a una coda Q inizialmente vuota: enqueue(7,q), enqueue(5,q), dequeue(q), enqueue(3,q), enqueue(7,q), dequeue(q), dequeue(q), dequeue(q), enqueue(6,q), dequeue(q). 36. Illustrare il risultato di ognuna delle seguenti operazioni applicate a uno stack S rappresentato mediante lista a puntatori ed inizialmente vuoto. push(3,s): push(2,s): pop(s): push(2,s): push(7,s): pop(s): pop(s): pop(s): push(15,s): 37. Utilizzare una pila per la valutazione dellespressione aritmetica in notazione postfissa Simulare lesecuzione della procedura per la ricerca binaria per lintero 38 in un array che contiene gli elementi 13, 15, 19, 21, 27, 30, 31, 35, 44 mostrando a ogni iterazione: i confronti fatti ed il contenuto della parte di array su cui si effettua la ricerca. 39. Ricerca binaria di 5 su array A[0..9]=[0,1,2,3,4,5,6,7,8,9]: simulazione usando stack per i record di attivazione. Sia assuma (record di attivazione)=(parte di array su cui si effettua la ricerca). 40. Si consieri la rappresentazione leftmostchild rightsibling di un albero T e siano i nodi di T: (10,5,NULL), (5,NULL,7), (7,2,4), (4,NULL,NULL), (2,NULL,8), (8,NULL,NULL) Simulare la procedura ricorsiva per la visita in preorder sull albero T, elencando in ordine le chiamate ricorsive e la lista dei nodi in output. 41. Dimostrare la seguente affermazione S(T) mediante induzione strutturale: Se T un albero in cui ogni nodo ha un numero pari di figli allora T ha un numero dispari di nodi. 42. Un albero T si dice ordinato se T ha un solo nodo oppure se ogni suo nodo interno ha etichetta minore delle etichette di ognuno dei suoi figli. Utilizzando per gli alberi la rappresentazione leftmostchild rightsibling, scrivere una funzione ricorsiva in C che avendo in input un albero T restituisce TRUE se T é ordinato, FALSE altrimenti. Soluzioni non ricorsive sono valutate 0.
8 8 43. Utilizzando per gli alberi la rappresentazione sinistradestra, scrivere una procedura ricorsiva in C che dia in output TRUE se T é un albero in cui ogni foglia ha etichetta 2 e ogni nodo interno ha etichetta pari alla somma delle etichette dei suoi figli, FALSE altrimenti. Giustificare la risposta. 44. Utilizzando per gli alberi la rappresentazione leftmostchild rigthsibling, scrivere una funzione ricorsiva che dato un albero T e un intero x, stampa le label di tutti i nodi di T aventi label minore o uguale a x. 45. Utilizzando per gli alberi la rappresentazione sinistradestra, scrivere una funzione ricorsiva in C che avendo in input un albero T, assegna a ogni nodo interno una label pari alla somma delle label dei suoi figli ed assegna label 1 a tutte le foglie. Giustificare la risposta, risposte non giustificate saranno valutate Un albero T si dice di valore L se ogni nodo interno ha esattamente due figli e tutte le foglie hanno lo stesso livello. Il livello di un nodo n in un albero T e la lunghezza del cammino dalla radice di T al nodo n. Sia D(T) la somma dei livelli dei nodi di T e sia V il numero dei nodi di T. Dimostrare la seguente affermazione S(T) mediante induzione strutturale: Se T e un albero di valore L, D(T) = (L 1)( V + 1) a) Disegnare il diagramma delle transizioni di un automa finito deterministico A il cui linguaggio L(A) sia L(A) = {010, 001}. b) Disegnare il diagramma delle transizioni di un automa finito deterministico A il cui linguaggio L(A ) sia L(A ) = {(01) n n 0}. 48. Disegnare il diagramma delle transizioni dell automa finito deterministico A la cui tavola delle transizioni è riportata di seguito. Lo stato iniziale di A è indicato da una freccia, gli stati finali da un asterisco. 0 1 q 0 q 1 q 2 q 1 q 3 q 0 q 2 q 2 q 1 q 3 q 2 q 3 Per ciascuna delle seguenti parole, indicare se essa è accettata o meno dall automa. Giustificare la risposta w {10 n 10 n 0} w {10 n 110 n 0} Disegnare il diagramma delle transizioni dell automa finito deterministico A la cui tavola delle transizioni è riportata di seguito. Lo stato iniziale di A è indicato da una freccia, gli stati finali da un asterisco. Determinare il linguaggio L(A) dell automa A; giustificare la risposta. 0 1 q 0 q 1 q 2 q 1 q 3 q 2 q 2 q 3 q 3 q 3 q 2 q Disegnare il diagramma delle transizioni dell automa finito deterministico A la cui tavola delle transizioni è riportata di seguito. Lo stato iniziale di A è indicato da una freccia, gli stati finali da un asterisco. Determinare il linguaggio L(A) dell automa A. Giustificare la risposta. a b q 0 q 1 q 3 q 1 q 2 q 1 q 2 q 4 q 4 q 3 q 4 q 4 q 4 q 4 q 4
Esercizi per il corso di Algoritmi, anno accademico 2011/12
Esercizi per il corso di Algoritmi, anno accademico 2011/12 Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, nè in C++, etc. ). Di tutti gli
DettagliEsercizi per il corso di Algoritmi
1 Esercizi per il corso di Algoritmi Esercizi sulle Notazioni Asintotiche 1. Esercizio: In ciascuno dei seguenti casi, indicare se f(n) = O(g(n)), o se f(n) = Ω(g(n)), oppure entrambi (nel cui caso occorre
DettagliMoltiplicazione veloce di interi
Moltiplicazione veloce di interi Ogni numero intero w di n cifre può essere scritto come 10 n/2 w s + w d w s indica il numero formato dalle n/2 cifre più significative di w w d denota il numero formato
DettagliNozioni di base (II Parte)
Nozioni di base (II Parte) 1 Ricorsione [GTG14, Par. 5.1-5.4 and 13.1] Algoritmo Ricorsivo: algoritmo che invoca se stesso (su istanze sempre più piccole) sfruttando la nozione di induzione. La soluzione
DettagliEsercizi di Algoritmi e Strutture Dati
Esercizi di Algoritmi e Strutture Dati Moreno Marzolla marzolla@cs.unibo.it Ultimo aggiornamento: 3 novembre 2010 1 Trova la somma/1 Scrivere un algoritmo che dati in input un array A[1... n] di n interi
Dettaglid. Cancellazione del valore 5 e. Inserimento del valore 1
Esercizio1 Si consideri un albero binario non vuoto in cui a ciascun nodo v è associato un numero reale v.val. Scrivere un algoritmo che, dato in input l'albero T e un numero reale x, restituisce true
DettagliDati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base
Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1. Sia T una stringa arbitraria di lunghezza n 1 su un alfabeto Σ. È sempre possibile
DettagliAlgoritmi di ordinamento
Capitolo 7 Algoritmi di ordinamento 7.1 Selection sort L algoritmo di ordinamento per selezione opera nel modo seguente: supponiamo che i primi k elementi siano ordinati; l algoritmo sceglie il minimo
DettagliUn algoritmo realizza una relazione funzionale tra i valori di input e quelli di output
Un algoritmo realizza una relazione funzionale tra i valori di input e quelli di output F = { (s, s ) } per ogni s esiste una e una sola coppia (s, s ). Esempio: un algoritmo che calcola il quadrato di
DettagliAlgoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione
Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione Appello del 24 Gennaio 2007 Esercizio 1 (ASD) 1. Sia T (n) = T (n/6) + T (n/3) + Θ(n). Considerare ciascuna delle seguenti affermazioni
DettagliDati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base
Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1. Sia T una stringa arbitraria di lunghezza n 1 su un alfabeto Σ. È sempre possibile
DettagliEspressioni aritmetiche
Espressioni aritmetiche Consideriamo espressioni costruite a partire da variabili e costanti intere mediante applicazione delle operazioni di somma, sottrazione, prodotto e divisione (intera). Ad esempio:
DettagliEsercitazione. Ricorsione. May 31, Esercizi presi dal libro di Rosen
Esercitazione Ricorsione May 31, 2016 Esercizi presi dal libro di Rosen Problema 2 a) sezione 5.3 Data la seguente funzione definita ricorsivamente come: f(n+1) = 2f(n) f(0) = 3 Determinare il valore di
DettagliUniversità degli Studi di Camerino Laurea in Informatica Prima Prova Parziale del corso di Algoritmi e Strutture Dati
Università degli Studi di Camerino Laurea in Informatica Prima Prova Parziale del corso di Algoritmi e Strutture Dati Docente: Maria Rita Di Berardini 19 dicembre 2007 Nome: Cognome: N.Matricola: Note:
DettagliLezione 4 Ugo Vaccaro
Progettazione di Algoritmi Anno Accademico 2017 2018 Lezione 4 Ugo Vaccaro Introduciamo ora la notazione Ω, che ci sarà utile quando vorremo valutare limitazioni inferiori al tempo di esecuzione di algoritmi
DettagliComplementi di Algoritmi e Strutture Dati. Soluzioni prova scritta 7 giugno 2017
Complementi di Algoritmi e Strutture Dati (III anno Laurea Triennale - a.a. 2016/17) Soluzioni prova scritta 7 giugno 2017 Esercizio Union find (punti 6) Considerare la foresta union-find sottostante e
DettagliAlgoritmi e Strutture Dati
Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino A.A. 2006/07 Il concetto di dato Il concetto di tipo di dato Insertion Sort for j 2 to lenght[a]
DettagliAlgoritmi e Strutture di Dati I 1. Algoritmi e Strutture di Dati I Massimo Franceschet francesc
Algoritmi e Strutture di Dati I 1 Algoritmi e Strutture di Dati I Massimo Franceschet http://www.sci.unich.it/ francesc m.franceschet@unich.it Algoritmi e Strutture di Dati I 2 Problema dell ordinamento
DettagliAlgoritmi e Strutture Dati
Strutture Elementari Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino 29 ottobre 2008 Strutture Dati Astratte Il concetto di dato Il concetto
DettagliAlgoritmi e Strutture Dati
Maria Rita Di Berardini 2, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino 2 Polo di Scienze Università di Camerino ad Ascoli Piceno Il concetto di dato Il concetto
DettagliINFORMATICA 3 Prof.ssa Sara Comai
INFORMATICA 3 Prof.ssa Sara Comai ESERCIZI SESSIONE LIVE 3 Complessità, liste e alberi Ing. Paola Spoletini, Sara Comai. Complessità Si determini l ordine di grandezza Q della complessità temporale di
DettagliAlgoritmi 25 Febbraio Rispondere alle domande usando lo spazio designato. NON USARE ALTRI FOGLI.
Algoritmi 25 Febbraio 2011 Prof.ssa M. Anselmo Università di Salerno Cognome: Nome: Matricola: Rispondere alle domande usando lo spazio designato. NON USARE ALTRI FOGLI. Spazio riservato alla correzione
DettagliEsercitazione 8. Corso di Tecniche di programmazione. Laurea in Ingegneria Informatica
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 8 Corso di Tecniche di programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti
DettagliLo sviluppo di un semplice programma e la dimostrazione della sua correttezza
Il principio di induzione Consideriamo inizialmente solo il principio di induzione per i numeri non-negativi, detti anche numeri naturali. Sia P una proprietà (espressa da una frase o una formula che contiene
DettagliPROGRAMMAZIONE II canale A-D luglio 2008 TRACCIA DI SOLUZIONE
PROGRAMMAZIONE II canale A-D 2007-2008 14 luglio 2008 TRACCIA DI SOLUZIONE 1. Si vogliono realizzare mediante puntatori delle liste circolari, cioè delle liste tali che l ultimo elemento della lista punta
DettagliIntroduzione agli algoritmi Prova di esame del 19/9/2016 Prof.sse E. Fachini - R. Petreschi. Parte prima
Introduzione agli algoritmi Prova di esame del 19/9/2016 Prof.sse E. Fachini - R. Petreschi Parte prima 1) Si dimostri il teorema sulla limitazione inferiore per il tempo asintotico di esecuzione nel caso
Dettagliliste ogni nodo ha un successore, tranne l ultimo della lista che ne ha zero; alberi binari ogni nodo ha zero, uno oppure due figli
Alberi generali Gli alberi visti fino a questo momento erano insiemi di nodi collegati fra di loro, in cui ogni nodo poteva avere al massimo due figli. Negli alberi generali, ogni nodo può avere un numero
DettagliAppunti senza pretese di P2+Lab: Pensare ricorsivamente, programmare iterativamente, parte II: Implementazione iterativa di Mergesort
Appunti senza pretese di P2+Lab: Pensare ricorsivamente, programmare iterativamente, parte II: Implementazione iterativa di Mergesort Alessandro Panconesi DSI, La Sapienza via Salaria 113, piano terzo
DettagliEsercizi riassuntivi (Fondamenti di Informatica 2 Walter Didimo) Soluzioni
Esercizi riassuntivi (Fondamenti di Informatica 2 Walter Didimo) Soluzioni Esercizio 1 Dire quale è la complessità temporale del seguente metodo, espressa con notazione asintotica O(.) (con la migliore
DettagliDi cosa parliamo oggi?
Di cosa parliamo oggi? Oggi parliamo di Analisi di Algoritmi Analisi di Algoritmi = valutazione delle risorse usate da algoritmi per risolvere un dato problema Risorse = Tempo impiegato dall algoritmo
DettagliInformatica/ Ing. Meccanica e Ing. Edile/ Prof. Verdicchio/ 16/07/2013 / Foglio delle domande / VERSIONE 1
Informatica/ Ing. Meccanica e Ing. Edile/ Prof. Verdicchio/ 16/07/2013 / Foglio delle domande / VERSIONE 1 1) In un diagramma di flusso, la rappresentazione di un ciclo WHILE include sicuramente almeno:
DettagliProblemi di ordinamento
Problemi di ordinamento Input: una sequenza di n numeri a 1, a 2,..., a n ; Output: una permutazione a 1, a 2,..., a n di a 1, a 2,..., a n tale che a 1 a 2... a n. Generalmente, la sequenza è rappresentata
DettagliLezione di Laboratorio di Prgrammazione: /05/2019 a.a. 2018/2019 R.Prevete
Lezione di Laboratorio di Prgrammazione: 19 13/05/2019 a.a. 2018/2019 R.Prevete Ricorsione La struttura di una funzione ricorsiva per un problema P di dimensione n (n è la dimensione dei dati input, ad
DettagliNote per la Lezione 4 Ugo Vaccaro
Progettazione di Algoritmi Anno Accademico 2016 2017 Note per la Lezione 4 Ugo Vaccaro Ripasso di nozioni su Alberi Ricordiamo che gli alberi rappresentano una generalizzazione delle liste, nel senso che
DettagliIn questa lezione Strutture dati elementari: Pila Coda Loro uso nella costruzione di algoritmi.
In questa lezione Strutture dati elementari: Pila Coda Loro uso nella costruzione di algoritmi. 1 strutture dati (astratte) Una struttura dati astratti consiste di uno o più insiemi con delle operazioni
DettagliProva di Algoritmi e s.d. (1o anno) 7 Febbraio TESTO e RISPOSTE
Prova di Algoritmi e s.d. (1o anno) 7 Febbraio 2003 TESTO e RISPOSTE Esercizio 1 (punti 5 in prima approssimazione) Consideriamo alberi binari con insieme dei nodi NODI = N (l'insieme dei naturali). Riportiamo
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Capitolo 4 Ordinamento Ordinamento Dato un insieme S di n oggetti presi da un dominio totalmente ordinato, ordinare S Esempi: ordinare una lista di nomi alfabeticamente, o un
DettagliRappresentazione degli algoritmi
Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti
Dettagli2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di
DettagliAlgoritmi e Strutture Dati 1
Esonero del 31/03/2009 Compito n 1 Dimostrare che non tutte le funzioni f: ℵ 0,1 sono calcolabili. Dire se, giustificando la risposta applicando la definizione delle notazioni asintotiche, a) n log n =
DettagliEsercizi Capitolo 10 - Code con priorità e insiemi disgiunti
Esercizi Capitolo 10 - Code con priorità e insiemi disgiunti Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente,
DettagliAlcuni Soluzioni. Fornire la specifica di un algoritmo risolutivo utilizzando lo pseudocodice visto a lezione.
Alcuni Soluzioni ESERCIZIO 1 Data una sequenza di interi di dimensione dim, determinare se esistono esattamente cont occorrenze del valore val, utilizzando per questo una variabile booleana check. Stato
DettagliIn questa lezione: correttezza del mergesort Analisi del mergesort: relazioni di ricorrenza e alberi della ricorsione
In questa lezione: correttezza del mergesort Analisi del mergesort: relazioni di ricorrenza e alberi della ricorsione Prof E Fachini - Intr Alg 1 MergeSort: correttezza MergeSort (A,p,r) if p < r then
DettagliAlberi ed Alberi Binari di Ricerca
Alberi ed Alberi Binari di Ricerca Il tipo di dato Albero Un albero è una struttura di data organizzata gerarchicamente. È costituito da un insieme di nodi collegati tra di loro: ogni nodo contiene dell
DettagliEsercizi su alberi binari
Esercizi su alberi binari Esercizi svolti: Determinazione nodi contenti verifica completezza verifica quasi completezza lunghezza del cammino interno determinazione ultima foglia in un quasi completo verifica
DettagliEsercizi su ABR. Prof. E. Fachini - Intr. Alg.!1
Esercizi su ABR Confronto proprietà ABR e Max-Heap. Proprietà del cammino radice-foglia individuato da una ricerca. Fusione di due ABR. Il successivo calcolato dalla radice Costruzione di un ABR bilanciato
DettagliLE STRUTTURE DATI DINAMICHE: GLI ALBERI. Cosimo Laneve
LE STRUTTURE DATI DINAMICHE: GLI ALBERI Cosimo Laneve 1 argomenti 1. definizione di alberi e nozioni relative 2. implementazione degli alberi, creazione, visita 3. algoritmo di visita iterativa e sua implementazione
DettagliCamil Demetrescu, Irene Finocchi, Giuseppe F. Italiano. Usa la tecnica del divide et impera:
MergeSort Usa la tecnica del divide et impera: 1 Divide: dividi l array a metà 2 Risolvi i due sottoproblemi ricorsivamente 3 Impera: fondi le due sottosequenze ordinate 1 Esempio di esecuzione 7 2 4 5
DettagliAlberi ed Alberi Binari
Alberi ed Alberi Binari Il tipo di dato Albero Un albero è una struttura di data organizzata gerarchicamente. È costituito da un insieme di nodi collegati tra di loro: ogni nodo contiene dell informazione,
DettagliCorso di Programmazione
II Accertamento del 15 Marzo 2002 / A Risolvi i seguenti esercizi, riporta le soluzioni in modo chiaro negli appositi riquadri e giustifica sinteticamente le risposte utilizzando i fogli protocollo. Cosa
DettagliFondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 1 Obiettivi di questa esercitazione 1. Array e funzioni 2. Array e funzioni ricorsive 3. Array e confronto di array 2 Esercizio 1 Creare un programma che legga da
DettagliPROGRAMMAZIONE III Appello del 7/03/2003
PROGRAMMAZIONE III Appello del 7/03/2003 Scrivere in stampatello COGNOME, NOME e NUMERO DI MATRICOLA (se conosciuto) su ogni foglio consegnato e sul testo, che va consegnato insieme al compito. ESERCIZIO
DettagliIl vettore e la lista concatenate (o catena) sono due esempi di strutture interne.
Strutture dati PILA e CODA Le strutture dati si dividono in interne e astratte. Quelle astratte sono rappresentazioni dei dati di un problema che rispecchiano le proprietà dei dati e le relazioni usate
DettagliAlgoritmi e Strutture Dati
Algoritmi e Strutture Dati Modelli di calcolo e metodologie di analisi Domenico Fabio Savo 1 Notazione asintotica f(n) = tempo di esecuzione / occupazione di memoria di un algoritmo su input di dimensione
DettagliEsercizi di programmazione ricorsiva. Appunti per gli studenti di Programmazione I e Laboratorio (corsi A-B)
Esercizi di programmazione ricorsiva Appunti per gli studenti di Programmazione I e Laboratorio (corsi A-B) Corso di Laurea in Informatica Università di Pisa A.A. 2008/09 1. Dare il tipo delle funzione
DettagliTecniche di analisi degli algoritmi
Tecniche di analisi degli algoritmi Moreno Marzolla marzolla@cs.unibo.it Dipartimento di Scienze dell Informazione, Università di Bologna 19 ottobre 2010 Copyright c 2009, 2010 Moreno Marzolla, Università
DettagliAnalisi asintotica. Astrazione: come il tempo di esecuzione cresce in funzione della taglia dell input asintoticamente.
Analisi asintotica Vittorio Maniezzo University of Bologna Analisi asintotica Obiettivo: semplificare l analisi del consumo di risorse di un algoritmo prescindendo dai dettagli implementativi o di altro
DettagliEsercizi Capitolo 10 - Code con priorità e insiemi disgiunti
Esercizi Capitolo 10 - Code con priorità e insiemi disgiunti Alberto Montresor 27 marzo 2012 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente,
DettagliLogica per la Programmazione
Logica per la Programmazione Lezione 11 Linguaggio di Programmazione Imperativo: Sintassi e Semantica Concetto di Tripla di Hoare Soddisfatta pag. 1 Introduzione Dall inizio del corso ad ora abbiamo introdotto,
DettagliEsercizio. 2 i=i*2) j=j*2)
Esercizio 1 Esercizio 2 i=i*2) j=j*2) Soluzione Il frammento è composto da due parti quasi identiche. L unica differenza è il modo in cui crescono i contatori. Nella prima parte la crescita è lineare mentre
Dettagli2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di
DettagliLogica per la Programmazione
Logica per la Programmazione Lezione 12 Linguaggio di Programmazione Imperativo: Sintassi e Semantica Concetto di Tripla di Hoare Soddisfatta pag. 1 Introduzione Dall inizio del corso ad ora abbiamo introdotto,
DettagliTecniche di analisi degli algoritmi
Tecniche di analisi degli algoritmi Moreno Marzolla, Lorenzo Donatiello Dipartimento di Infromatica, Università di Bologna 29 ottobre 2017 Copyright c 2009, 2010 Moreno Marzolla, Università di Bologna
DettagliIn questa lezione. Alberi binari: [CLRS09] cap. 12 per la visita inorder. visite e esercizi su alberi binari. Prof. E. Fachini - Intr. Alg.
In questa lezione Alberi binari: visite e esercizi su alberi binari [CLRS09] cap. 12 per la visita inorder!1 Visita inordine di un albero binario visita inordine(x) se l albero x non è nullo allora visita
DettagliAlberi e alberi binari I Un albero è un caso particolare di grafo
Alberi e alberi binari I Un albero è un caso particolare di grafo I I I I È costituito da un insieme di nodi collegati tra di loro mediante archi Gli archi sono orientati (ogni arco esce da un nodo origine
DettagliInformatica A aa Seconda prova in itinere. Esempi di esercizi possibili
Informatica A aa 2002-03 Seconda prova in itinere Esempi di esercizi possibili Struttura della prova-parte 1 Fortran: comprensione di un programma dato (semplice) Reti: domanda teorica (per verificare
DettagliProgettazione di Algoritmi (9 CFU) Classe 3 (matricole congrue 2 modulo 3) Prof.ssa Anselmo. Appello del 27 Giugno 2018.
COGNOME: Nome: Progettazione di Algoritmi (9 CFU) Classe 3 (matricole congrue 2 modulo 3) Prof.ssa Anselmo Appello del 27 Giugno 2018 Attenzione: Inserire i propri dati nell apposito spazio soprastante
DettagliNotazione asintotica. notazione Ω. notazione O. notazione o notazione ω. Marina Zanella Algoritmi e strutture dati Richiami matematici 1
Notazione asintotica Sebbene si possa talvolta determinare il tempo esatto di esecuzione di un algoritmo, l estrema precisione non giustifica lo sforzo del calcolo; infatti, per input sufficientemente
DettagliLABORATORIO DI PROGRAMMAZIONE 2 Corso di laurea in matematica. Algoritmi ricorsivi
LABORATORIO DI PROGRAMMAZIONE 2 Corso di laurea in matematica Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna Partiamo da un
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica 2
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa E14 F. Gasparetti, C. Limongelli Maggio 2012 1 Verifica presenza di elementi comuni V1 - Date due liste di stringhe scrivere
DettagliProva di Algoritmi e s.d. (1o anno) 17 Settembre TESTO e RISPOSTE
Prova di Algoritmi e s.d. (1o anno) 17 Settembre 2002 TESTO e RISPOSTE Esercizio 1 (punti 7 in prima approssimazione) Consideriamo alberi binari con insieme dei nodi NODI = N (l'insieme dei naturali).
DettagliSoluzioni della settima esercitazione di Algoritmi 1
Soluzioni della settima esercitazione di Algoritmi 1 Beniamino Accattoli 19 dicembre 2007 1 Grafi Un grafo è non orientato se descrivendo un arco come una coppia di vertici (i,j) l ordine è ininfluente
DettagliGLI ALBERI BINARI DI RICERCA. Cosimo Laneve
GLI ALBERI BINARI DI RICERCA Cosimo Laneve argomenti 1. alberi binari di ricerca 2. la ricerca di elementi e la complessità computazionale 3. operazione di cancellazione di elementi 4. esempi/esercizi
DettagliALGORITMI DI ORDINAMENTO E RICERCA BINARIA. Docente: Giorgio Giacinto AA 2008/2009. problema dell ordinamento in modi diversi
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
DettagliCorso di Programmazione
II Accertamento del 27 Marzo 2001 / A Risolvi i seguenti esercizi, riporta le soluzioni in modo chiaro negli appositi riquadri e giustifica sinteticamente le risposte utilizzando i fogli protocollo. Cosa
DettagliAlgoritmi e Principi dell Informatica
Algoritmi e Principi dell Informatica Appello del 21 Febbraio 2013 Chi deve sostenere l esame integrato (API) deve svolgere tutti gli esercizi in 3 ore. Chi deve sostenere solo il modulo di Informatica
DettagliIn questa lezione. Il Mergesort: primo esempio di applicazione della tecnica divide et impera analisi tempo di esecuzione del Mergesort
In questa lezione Il Mergesort: primo esempio di applicazione della tecnica divide et impera analisi tempo di esecuzione del Mergesort [CLRS] par. 2.3. Prof. E. Fachini - Intr. Alg.!1 Progettazione di
DettagliARRAY E STRINGHE. ESERCIZIO 2 Scrivere un programma che calcola il numero di doppie e di dittonghi (2 vocali vicine) presenti in una stringa.
3 ITI - a.s. 2007-2008 Compiti di Informatica ESTATE 2008 ARRAY E STRINGHE Scrivere una funzione che carica da tastiera un array di n elementi e lo stampa invertendo il primo elemento con l'ultimo, il
DettagliLISTE CONCATENATE. In Pascal un tipo primitivo "lista concatenata" non esiste. Esso può essere definito utilizzando un tipo puntatore.
LISTE CONCATENATE In Pascal un tipo primitivo "lista concatenata" non esiste. Esso può essere definito utilizzando un tipo puntatore. REALIZZAZIONE RICORSIVA ELEMENTARE unit lists; interface type elemtype
DettagliAlberi. Alberi: definizioni. Alberi Binari. Esercizi su alberi binari: metodi ricorsivi. Struttura dati per alberi generici. ASD-L - Luca Tesei
Alberi Alberi: definizioni Alberi Binari Esercizi su alberi binari: metodi ricorsivi Struttura dati per alberi generici 1 Alberi Gli alberi sono strutture dati naturalmente ricorsive Un albero è un particolare
DettagliCognome e Nome: Numero di Matricola: Spazio riservato alla correzione totale /5 /6 /4 /25 /15 /20 /25 /100
Cognome e Nome: Numero di Matricola: Spazio riservato alla correzione 1 2 3 4 5 6 7 totale 1. Indicare quali delle seguenti affermazioni sono vere e quali sono false. a. n 3 +n 2 +4 = Θ (n 3 ) b. n! =
DettagliEsame di Algoritmi e Strutture Dati Corso di Laurea in Ingegneria Informatica Canali A-L, M-Z
Esame di Algoritmi e Strutture Dati Corso di Laurea in Ingegneria Informatica Canali A-L, M-Z Anno Accademico 2002-2003 9 luglio 2002-03 Domanda 1, punti 6 Si consideri la seguente classe Java, in cui,
DettagliStrutture dati. Le liste
Strutture dati Le liste Introduzione Una lista è una successione finita di valori di un tipo (insieme di valori e ordine). Come tipo di dato è qualificata dalle operazioni che ci si possono svolgere: inserimento
DettagliAlberi e alberi binari I Un albero è un caso particolare di grafo
Alberi e alberi binari Un albero è un caso particolare di grafo È costituito da un insieme di nodi collegati tra di loro mediante archi Gli archi sono orientati (ogni arco esce da un nodo origine ed entra
DettagliCalcolare x n = x x x (n volte)
Calcolare x n = x x x (n volte) Abbiamo bisogno di: una variabile ris in cui ad ogni iterazione del ciclo si ha un risultato parziale, e che dopo l ultima iterazione contiene il risultato finale; una variabile
DettagliLezione 6: 12 Novembre 2013
Tutorato di Algoritmi e Strutture Dati [CT0371] Tutor: Alberto Carraro Lezione 6: 12 Novembre 2013 Disclaimer: Queste note non sono state sottoposte al consueto controllo riservato alle pubblicazioni ufficiali.
DettagliStrutture dati Alberi binari
Strutture dati - 2 - Alberi binari Definizione L albero è un insieme di elementi (nodi), sui quali è definita una relazione di discendenza con due proprietà: esiste un solo nodo radice senza predecessori
Dettagli2. Analisi degli Algoritmi
2. Analisi degli Algoritmi Introduzione 2.1 Un modello di macchina elementare: la Macchina a Registri 2.2 Costo di esecuzione di un programma 2.3 Analisi del costo di esecuzione: il modello a costi uniformi
DettagliTecniche di analisi degli algoritmi
Tecniche di analisi degli algoritmi Damiano Macedonio mace@unive.it Algoritmi e Strutture Dati, A.A. 2012/13 27 ottobre 2012 Original work Copyright c 2009 Moreno Marzolla, Università di Bologna Modifications
Dettagli4.1 Modelli di calcolo analisi asintotica e ricorrenze
4 Esercizi Prima Parte 4.1 Modelli di calcolo analisi asintotica e ricorrenze Esercizio 4 1 Rispondere alle seguenti domande: 1. Come misuriamo l efficienza di un algoritmo?. Quali sono gli algoritmi più
DettagliCapitolo 19. Ricorsione
Capitolo 19 La ricorsione Una funzione matematica è definita ricorsivamente quando nella sua definizione compare un riferimento a sé stessa Esempio: Funzione fattoriale su interi non negativi: f(n) = n!
DettagliFondamenti dell Informatica a.a. 2017/18 Prova scritta 11 gennaio 2018
Fondamenti dell Informatica a.a. 2017/18 Prova scritta 11 gennaio 2018 Esercizio 1 (Automi a stati finiti) {a, b}. Si considerino i seguenti automi a stati finiti sull alfabeto Per ognuno degli automi,
DettagliRICERCA BINARIA...1 ALBERO BINARIO DI RICERCA (ABR)...3 RICORSIONE...4 ESEMPI DI RICORSIONE IN VISUAL BASIC...5 ESEMPI DI RICORSIONE IN C / C++...
Tre piccioni con una fava: Ricerca Binaria, Albero Binario di Ricerca e Ricorsione prof. Claudio Maccherani - 2006 / 2007 foto Claudio Maccherani RICERCA BINARIA...1 ALBERO BINARIO DI RICERCA (ABR)...3
DettagliStrutture dati dinamiche in C (II)
Strutture dati dinamiche in C (II) Laboratorio di Linguaggi di Programmazione a.a. 2001/2002 dott.ssa Francesca A. Lisi lisi@di.uniba.it Sommario Le liste concatenate (ancora ma in modo più formale) L
DettagliDati e Algoritmi I (Pietracaprina) Esercizi sugli Alberi
Dati e Algoritmi I (Pietracaprina) Esercizi sugli Alberi Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1 Dimostrare che un albero non vuoto con n nodi interni, dove ogni nodo interno ha almeno
DettagliCorso di Laurea Ingegneria Informatica Fondamenti di Informatica
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa 19 Ricorsione A. Miola Marzo 2010 http://www.dia.uniroma3.it/~java/fondinf/ Ricorsione 1 Contenuti Funzioni e domini definiti induttivamente
Dettagli