Laboratorio 07. Programmazione - CdS Matematica. Michele Donini 10 dicembre 2015
|
|
|
- Leo Belloni
- 10 anni fa
- Просмотров:
Транскрипт
1 Laboratorio 07 Programmazione - CdS Matematica Michele Donini 10 dicembre 2015
2 Esercizio Lista I Costruire la classe lista concatenata: class Lista(): def init (self, val=none, succ=none): Denire le principali funzioni di utilità: def vuota(lista): def n_nodi(lista): def stampa_lista(lista):
3 Esercizio Lista II Classe Lista: class Lista(): def init (self, val=none, succ=none): self.val = val self.succ = succ Funzioni di utilità: def vuota(lista): return lista == None def n_nodi(lista): if vuota(lista): return 0 return 1 + n_nodi(lista.succ)
4 Esercizio Lista III def stampa_lista(lista): if not vuota(lista): print lista.val, stampa_lista(lista.succ) else: print
5 Esercizio Lista IV Esempio: l1 = None l2 = Lista(1, Lista(2, Lista(3, Lista(4)))) print vuota(l1) print n_nodi(l1) print vuota(l2) print n_nodi(l2) stampa_lista(l2) True 0 False
6 Esercizio Lista V Denire le principali funzioni di gestione lista: def aggiungi_testa(lista, val): def aggiungi_coda(lista, val): def lista_inversa(lista):
7 Esercizio Lista VI def aggiungi_testa(lista, val): if vuota(lista): return Lista(val) return Lista(val, lista) def aggiungi_coda(lista, val): if vuota(lista): return Lista(val) lista.succ = aggiungi_coda(lista.succ, val) return lista def lista_inversa(lista): if vuota(lista): return None l = lista_inversa(lista.succ) return aggiungi_coda(l, lista.val)
8 Esercizio Lista VII Esempio: l = Lista(1, Lista(2, Lista(3, Lista(4)))) l = aggiungi_testa(l, 0) stampa_lista(l) l = aggiungi_coda(l, 5) stampa_lista(l) l = lista_inversa(l) stampa_lista(l)
9 Esercizio Albero I Costruire la classe albero binario class Albero(): def init (self, val=none, sx=none, dx=none): Denire le principali funzioni di utilità: def vuoto(albero): def altezza(albero): def n_nodi(albero): def stampa(albero):
10 Esercizio Albero II Classe Albero: class Albero(): def init (self, val=none, sx=none, dx=none): self.val = val self.sx = sx self.dx = dx Funzioni di utilità: def vuoto(albero): return albero == None def altezza(albero): if vuoto(albero): return -1 return 1 + max(altezza(albero.sx),altezza(albero.dx))
11 Esercizio Albero III def n_nodi(albero): if vuoto(albero): return 0 return n_nodi(albero.sx) + n_nodi(albero.dx) + 1 def stampa(albero, livello=0, separator=""): if albero == None: return stampa(albero.dx, livello+1, ".--") print " "*(livello-1) + separator + str(albero.val) stampa(albero.sx, livello+1, " --")
12 Esercizio Albero IV Esempio: a = albero(1, albero(2), albero(3, dx=albero(4))) stampa(a) print vuoto(a) print altezza(a) print n_nodi(a) False 2 4
13 Esercizio Albero V Denire una funzione build_tree che riceve in input una tupla che rappresenta un albero di profondità arbitraria, e restituisce la struttura dati corrispondente La tupla passata a build_tree è composta esattamente da tre componenti: il valore del nodo, la tupla che rappresenta il sottoalbero sinistro; la tupla che rappresenta il sottoalbero destro Esempi di tupla: (1, None, None) (1, None, (3, None, None)) (1, (2,None, (4,None,None)), (3,None,None))
14 Esercizio Albero VI Verica stampa(build_tree((1, None, None))) 1 stampa(build_tree((1, None, (3, None, None)))) stampa(build_tree( (1,(2,None,(4,None,None)),(3,None,None))))
15 Esercizio Albero VII Proposta di soluzione: def build_tree(t): v = t[0] sx = t[1] dx = t[2] if sx: sx = build_tree(sx) if dx: dx = build_tree(dx) return Albero(v, sx, dx)
16 Esercizio Albero VIII Scrivere una (o più) funzione confronta(albero, lista) che attraversa l'albero e confronta la lista dei valori dei suoi nodi con la lista data. La funzione deve ritornare vero nel seguente caso: t = build_tree((1,(2,(3, None, None),(4, None, None)),(5, None, None))) stampa(t) confronta(t, [1,2,3,4,5]) #True
17 Esercizio Albero IX Proposta soluzione def confronta(t, l): return traverse(t) == l def traverse(albero): if vuoto(albero): return [] return [albero.val] + traverse(albero.sx) + traverse(albero.dx)
18 Esercizio Albero X Modicare l'esercizio precedente, in modo tale che la lista [1, 2, 3, 4, 5, 6, 7, 8, 9] sia matchata con l'albero: t = build_tree((9,(4, None,(3,(1, None, None),(2, None, None))),(8,(6, None,(5, None, None)),(7, None, None)) )) stampa(t) confronta(t, [1,2,3,4,5,6,7,8,9]) #True
19 Esercizio Albero XI Proposta soluzione def confronta2(t, l): return traverse2(t) == l def traverse2(albero): if vuoto(albero): return [] return traverse2(albero.sx) + traverse2(albero.dx) + [albero.val]
20 Esercizio Reverse Engineering I ATTENZIONE: esercizio facsimile all'esame Descrivere le pre e le post condizioni della seguente funzione e dimostrarne la correttezza: def A(a): if not a or (not a.left and not a.right): return 0.0 return A(a.left) + A(a.right) + 1
21 Esercizio Reverse Engineering II PRE: il parametro a è un albero binario anche vuoto (== None); POST: ritorna il numero di nodi interni (non foglia) dell'albero; DIM: POS(A(None)) e POS(A(Albero(x, None, None)): ritorna 0 perché l'albero è vuoto oppure la radice è anche foglia; PRE(a.left) e PRE(a.right): valgono perché l'albero a è ben denito come lo sono i due sotto-alberi a.left e a.right; POS(A(a)): assumendo l'albero non vuoto e le post-condizioni vere per i due sotto-alberi, allora la funzione ritorna la somma dei nodi interni del sotto-albero destro più quello sinistro più 1 (poiché il nodo corrente è interno), che corrisponde al numero di nodi interni dell'intero albero.
Laboratorio 8. Programmazione - CdS Matematica. Mirko Polato 15 Dicembre 2015
Laboratorio 8 Programmazione - CdS Matematica Mirko Polato 15 Dicembre 2015 Operare su File Per operare su un file occorre eseguire le seguenti operazioni: aprire il file in scrittura o lettura; scrivere
Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione
Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione Esercizi II parte Esercizio 1 Discutere la correttezza di ciascuna delle seguenti affermazioni. Dimostrare formalmente la validità
Alberi binari. Ilaria Castelli [email protected] A.A. 2009/2010. Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione
Alberi binari Ilaria Castelli [email protected] Università degli Studi di Siena Dipartimento di Ingegneria dell Informazione A.A. 2009/2010 I. Castelli Alberi binari, A.A. 2009/2010 1/20 Alberi binari
Esercizi Capitolo 6 - Alberi binari di ricerca
Esercizi Capitolo 6 - Alberi binari di ricerca Alberto Montresor 23 settembre 200 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile
alberi binari e ricorsione
alberi binari e ricorsione un albero binario: ogni nodo ha al più 2 figli ogni figlio è destro o sinistro figlio sinistro nodo interno radice figlio destro foglia cammini = sequenze di nodi = sequenze
La struttura dati ad albero binario
La struttura dati ad albero binario L albero è una struttura dati nella quale le informazioni sono organizzate in modo gerarchico, dall alto verso il basso. Gli elementi di un albero si chiamano nodi,
LISTE, INSIEMI, ALBERI E RICORSIONE
LISTE, INSIEMI, ALBERI E RICORSIONE Settimo Laboratorio LISTE E RICORSIONE SVUOTALISTA: CONSIDERAZIONI Per svuotare una lista si devono eliminare i singoli nodi allocati con la malloc... Come fare? Per
Lezione 9 Alberi binari: visite ed esercizi
Lezione 9 Alberi binari: visite ed esercizi Informatica 4 Maggio 2016 Operazioni sugli alberi: visita La visita di un albero esplora tutti i nodi ed esegue una qualche operazione su di essi. Per esempio,
Programmazione funzionale
Cognome Nome Matricola Programmazione funzionale 12-09-2014 PROVA SCRITTA 1 2 3 4 5 Somma Il compito ha la durata di 1 ora, per la compilazione attenersi alle seguenti istruzioni: Scrivere in maniera chiara.
Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione
Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione Appello dell 8 Febbraio 2005 Esercizio 1 (ASD) 1. Dire quale delle seguenti affermazioni è vera giustificando la risposta. (a) lg
4.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ù
Corso di Algoritmi e Strutture Dati Informatica per il Management Prova Scritta, 25/6/2015
Corso di Algoritmi e Strutture Dati Informatica per il Management Prova Scritta, 25/6/2015 Chi deve recuperare il progetto del modulo 1 ha 1 ora e 30 minuti per svolgere gli esercizi 1, 2, 3 Chi deve recuperare
Laboratorio di Informatica
Laboratorio di Informatica Introduzione a Python Dottore Paolo Parisen Toldin - [email protected] Argomenti trattati Che cosa è python Variabili Assegnazione Condizionale Iterazione in una lista di
Programmazione dinamica
Capitolo 6 Programmazione dinamica 6.4 Il problema della distanza di edit tra due stringhe x e y chiede di calcolare il minimo numero di operazioni su singoli caratteri (inserimento, cancellazione e sostituzione)
Esercizi Capitolo 5 - Alberi
Esercizi Capitolo 5 - Alberi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle
Laboratorio di architettura degli elaboratori Progetto finale AA 2005/2006
Laboratorio di architettura degli elaboratori Progetto finale AA 2005/2006 Esercizio 1 - Heapsort Si consideri la seguente struttura dati, chiamata heap. Essa è un albero binario semi-completo (ossia un
16.3.1 Alberi binari di ricerca
442 CAPITOLO 16. STRUTTURE DI DATI DINAMICHE root 7 5 11 2 8 13 10 Figura 16.11 Esempio di albero binario: ogni nodo contiene il dato da immagazzinare e tre puntatori che definiscono le sue relazioni di
Alberi binari di ricerca
Alberi binari di ricerca Definizione Visita dell albero inorder Ricerca Ricerca minimo, massimo e successore. Inserimento ed eliminazione di un nodo Problema del bilanciamento dell albero Albero binario
Lezione 7 Alberi binari: visite e alberi di ricerca
Lezione 7 Alberi binari: visite e alberi di ricerca Informatica 6 Maggio 2015 Operazioni sugli alberi: visita La visita di un albero esplora tutti i nodi ed esegue una qualche operazione su di essi. Per
Algoritmi e strutture dati. Codici di Huffman
Algoritmi e strutture dati Codici di Huffman Memorizzazione dei dati Quando un file viene memorizzato, esso va memorizzato in qualche formato binario Modo più semplice: memorizzare il codice ASCII per
Esercizi Python. Corso di Bioinformatica 2012
Esercizi Python Corso di Bioinformatica 2012 Esercizio 1 Tipi contenitore Creare due tuple che rappresentino i due elenchi di nomi e cognomi descritti sotto: nomi: Numa, Tullo, Anco cognomi: Pompilio,
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa 10 Strutture collegate - 2 A. Miola Febbraio 2008 http://www.dia.uniroma3.it/~java/fondinf2/ Strutture collegate - 2 1 Contenuti!Strutture
STRUTTURE NON LINEARI
PR1 Lezione 13: STRUTTURE NON LINEARI Michele Nappi [email protected] www.dmi.unisa.it/people/nappi Per la realizzazione della presentazione è stato utilizzato in parte materiale didattico prodotto da Oronzo
Programmazione ad Oggetti Modulo A (Esame del 11/9/2015)
Programmazione ad Oggetti Modulo A (Esame del 11/9/2015) Esercizio 1 Considerate la seguente gerarchia di classi: class A { public void print(string s) { System.out.println(s); public void m1() { print("a.m1");
I tipi di dato astratti
I tipi di dato astratti.0 I tipi di dato astratti c Diego Calvanese Fondamenti di Informatica Corso di Laurea in Ingegneria Elettronica A.A. 001/00.0 0 I tipi di dato astratti La nozione di tipo di dato
Verifica della correttezza formale del numero di partita IVA
Verifica della correttezza formale del numero di partita IVA A tutti i soggetti che intraprendono un attività rilevante ai fini Iva (impresa, arte, professione), al momento della presentazione della dichiarazione
Il Metodo Branch and Bound
Il Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa [email protected] http://www.di.unipi.it/~galli 4 Novembre 2014 Ricerca Operativa 2 Laurea Magistrale in Ingegneria Gestionale
Alberi auto-aggiustanti
Alberi auto-aggiustanti Dispensa didattica per il corso di Algoritmi e Strutture Dati a.a. 2007/2008 ver. 1.3 Ing. Claudio Mazzariello, Prof. Carlo Sansone 27 Maggio 2008 A differenza di altre possibili
Laboratorio di Informatica Lezione 2
Laboratorio di Informatica Lezione 2 Cristian Consonni 30 settembre 2015 Cristian Consonni Laboratorio di Informatica, Lezione 2 1 / 42 Outline 1 Commenti e Stampa a schermo 2 Strutture di controllo 3
Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006
Studente (Cognome Nome): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006 Si noti che le soluzioni ai quesiti saranno considerate
Sottoprogrammi: astrazione procedurale
Sottoprogrammi: astrazione procedurale Incapsulamento di un segmento di programma presente = false; j = 0; while ( (j
PYTHON CHEAT SHEET. Rapido documentazione di consultazione per istruzioni, funzioni e tipi in Python. #stampa le variabili x e y
PYTHON CHEAT SHEET Rapido documentazione di consultazione per istruzioni, funzioni e tipi in Python OUTPUT print Ciao print x,y #stampa una stringa #stampa le variabili x e y print %s... %s %(x,y) #stampa
Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:
Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante
Laboratorio di Python
, Esercizi su alberi Università di Bologna 16 maggio 2013 Sommario 1 2 Consegna non avvenuta Meno di 10 studenti hanno inviato l esercizio svolto. Definizione ricorsiva alberi binari Un albero binario
Esercizio 6 Realizzare una classe astratta per le Figure piane e due sottoclassi, la sottoclasse Quadrato e la sottoclasse Rettangolo.
Esercizio 6 Realizzare una classe astratta per le Figure piane e due sottoclassi, la sottoclasse Quadrato e la sottoclasse Rettangolo. public abstract class FiguraPiana2{ private double base; public FiguraPiana2(double
Algoritmi di Visita di Grafi. Damiano Macedonio [email protected]
lgoritmi di Visita di rafi amiano Macedonio [email protected] Original work opyright lberto Montresor, Università di Trento, Italy Modifications opyright 00 0, Moreno Marzolla, Università di ologna, Italy
regola(1,[e,f],b) regola(2,[m,f],e) regola(3,[m],f) regola(4,[b,f],g) regola(5,[b,g],c) regola(6,[g,q],a)
ESERCIZIO1 PREMESSA Per risolvere problemi spesso esistono delle regole che, dai dati del problema, permettono di calcolare o dedurre la soluzione. Questa situazione si può descrivere col termine regola(,
Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza
Il problema di flusso di costo minimo (MCF) Dati : grafo orientato G = ( N, A ) i N, deficit del nodo i : b i (i, j) A u ij, capacità superiore (max quantità di flusso che può transitare) c ij, costo di
Algebra di Boole ed Elementi di Logica
Algebra di Boole ed Elementi di Logica 53 Cenni all algebra di Boole L algebra di Boole (inventata da G. Boole, britannico, seconda metà 8), o algebra della logica, si basa su operazioni logiche Le operazioni
Fondamenti di Programmazione
Fondamenti di Programmazione Capitolo 2 Variabili, Espressioni e Comandi Prof. Mauro Gaspari: [email protected] Valori e Tipi Un valore (= value) è una delle entità fondamentali che i programmi sono
Esercizi 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
Due algoritmi di ordinamento. basati sulla tecnica Divide et Impera: Mergesort e Quicksort
Due algoritmi di ordinamento basati sulla tecnica Divide et Impera: Mergesort e Quicksort (13 ottobre 2009, 2 novembre 2010) Ordinamento INPUT: un insieme di n oggetti a 1, a 2,, a n presi da un dominio
un file in formato FASTA contenente un elenco di sequenze una espressione regolare una indicazione se si tratta di DNA,RNA,proteine
Esempio Caratteristiche di sequenza che soddisfano una certa espressione Ingressi: un file in formato FASTA contenente un elenco di sequenze una espressione regolare una indicazione se si tratta di DNA,RNA,proteine
Corso di Laurea in Infermieristica "S" A.A. 2015/2016 Orario Lezioni III Anno - I Semestre Nuovo Ordinamento (D.M. 270/04)
I^ Settimana 12 ottobre 16 ottobre II^ Settimana 19 ottobre 23 ottobre III^ Settimana 26 ottobre 30 ottobre IV^ Settimana 2 novembre 6 novembre V^ Settimana 9 novembre 13 novembre VI^ Settimana 16 novembre
Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione.
Grafi ed Alberi Pag. /26 Grafi ed Alberi In questo capitolo richiameremo i principali concetti di due ADT che ricorreranno puntualmente nel corso della nostra trattazione: i grafi e gli alberi. Naturale
Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011
Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011 Testo Il database di un videonoleggio è costituito da due vettori paralleli.
Lezione 12 Tabelle Hash
Lezione 12 Tabelle Hash Rossano Venturini [email protected] Pagina web del corso http://didawiki.cli.di.unipi.it/doku.php/informatica/all-b/start Esercizio 2 ABR: Visita Scrivere un programma che legga
Correttezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 10 Correttezza A. Miola Novembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Correttezza 1 Contenuti Introduzione alla correttezza
Algebra Booleana ed Espressioni Booleane
Algebra Booleana ed Espressioni Booleane Che cosa è un Algebra? Dato un insieme E di elementi (qualsiasi, non necessariamente numerico) ed una o più operazioni definite sugli elementi appartenenti a tale
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa E08 Soluzione Esercizi F. Gasparetti, C. Limongelli Marzo 2008 http://www.dia.uniroma3.it/~java/fondinf1/ Soluzione Esercizi
Esempio: dest = parolagigante, lettere = PROVA dest (dopo l'invocazione di tipo pari ) = pprrlogvgante
Esercizio 0 Scambio lettere Scrivere la funzione void scambiolettere(char *dest, char *lettere, int p_o_d) che modifichi la stringa destinazione (dest), sostituendone i caratteri pari o dispari (a seconda
AA 2006-07 LA RICORSIONE
PROGRAMMAZIONE AA 2006-07 LA RICORSIONE AA 2006-07 Prof.ssa A. Lanza - DIB 1/18 LA RICORSIONE Il concetto di ricorsione nasce dalla matematica Una funzione matematica è definita ricorsivamente quando nella
La programmazione con vincoli in breve. La programmazione con vincoli in breve
Obbiettivi Introdurre la nozione di equivalenza di CSP. Dare una introduzione intuitiva dei metodi generali per la programmazione con vincoli. Introdurre il framework di base per la programmazione con
ISTRUZIONI VELOCI DI PYTHON Versione 1.0 - (manuale realizzato con Google Documenti)
ISTRUZIONI VELOCI DI PYTHON Versione 1.0 - (manuale realizzato con Google Documenti) Realizzato da NiktorTheNat e diffuso in rete da: 8thPHLOOR Iniziato il giorno 8 febbraio 2010 - terminato il giorno
INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno
INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno UD 3.1b: Costrutti di un Algoritmo Dispense 1.2 I Costrutti di base 13 apr 2010
Esercizio 1. E vero che in un AVL il minimo si trova in una foglia o nel penultimo livello? FB = -1. livello 0 FB = -1. livello 1 FB = -1.
Esercizio 1 E vero che in un AVL il minimo si trova in una foglia o nel penultimo livello? FB = -1 livello 0 FB = -1 FB = -1 livello 1 FB = -1 livello 2 livello 3 L altezza è 3, il minimo si trova nel
Alberi binari. Esercizi su alberi binari
Alberi binari Definizione della struttura dati: struct tree int dato; struct tree *sx, *dx; ; typedef struct tree tree; Esercizi su alberi binari 1. Scrivere una funzione che cerchi un intero k all'interno
Funzioni. Il modello console. Interfaccia in modalità console
Funzioni Interfaccia con il sistema operativo Argomenti sulla linea di comando Parametri argc e argv Valore di ritorno del programma La funzione exit Esercizio Calcolatrice 2, presente in tutti i programmi
STRINGHE di un ALFABETO. Consideriamo un alfabeto di simboli V V è un insieme finito e non vuoto. Alfabeto della lingua inglese I={a,b,c,..
STRINGHE di un ALFABETO Consideriamo un alfabeto di simboli V V è un insieme finito e non vuoto Alfabeto binario A={0,1} Alfabeto della lingua inglese I={a,b,c,..z} Stringhe o parole Gli elementi di V
Alberi. Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo. Fosco.
Alberi Alberi Gli alberi sono una generalizzazione delle liste che consente di modellare delle strutture gerarchiche come questa: Largo Fosco Dora Drogo Frodo Dudo Daisy Alberi Gli alberi sono una generalizzazione
Algoritmi e Strutture Dati
Alberi Binari di Ricerca (BST) Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino A.A. 2006/07 Alberi Binari di Ricerca (Binary Search Trees BST)
Esercizi per il corso di Algoritmi, anno accademico 2014/15
1 Esercizi per il corso di Algoritmi, anno accademico 2014/15 Esercizi sulle Notazioni Asintotiche 1. Esercizio: Provare le seguenti relazioni, esibendo opportune costanti c 1,c 2 ed n 0. Si assuma per
VARIANZA CAMPIONARIA E DEVIAZIONE STANDARD. Si definisce scarto quadratico medio o deviazione standard la radice quadrata della varianza.
VARIANZA CAMPIONARIA E DEVIAZIONE STANDARD Si definisce varianza campionaria l indice s 2 = 1 (x i x) 2 = 1 ( xi 2 n x 2) Si definisce scarto quadratico medio o deviazione standard la radice quadrata della
Semantica Assiomatica
Semantica Assiomatica Anche nella semantica assiomatica, così come in quella operazionale, il significato associato ad un comando C viene definito specificando la transizione tra stati (a partire, cioè,
Lezione 2 OPERAZIONI ARITMETICHE E LOGICHE ARCHITETTURA DI UN ELABORATORE. Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche arch.
Lezione 2 OPERAZIONI ARITMETICHE E LOGICHE ARCHITETTURA DI UN ELABORATORE Comunicazione importante dalla prossima settimana, la lezione del venerdì si terrà: dalle 15:00 alle 17.15 in aula 311 l orario
B+Trees. Introduzione
B+Trees Introduzione B+Trees Il B+Trees e la variante maggiormente utilizzata dei BTrees BTrees e B+trees fanno parte della famiglia degli alberi di ricerca. Nel B+Trees i dati sono memorizzati solo nelle
Lezione 8. La macchina universale
Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione
Programmazione I - Laboratorio
Programmazione I - Laboratorio Esercitazione 2 - Funzioni Gianluca Mezzetti 1 Paolo Milazzo 2 1. Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ mezzetti mezzetti di.unipi.it 2.
Un albero completamente bilanciato o pieno (full) alberi completamente sbilanciati. Un albero binario completo
alberi completamente sbilanciati Un albero completamente bilanciato o pieno (full) Definizione: Un albero è pieno se tutte le foglie sono sullo stesso livello e ogni nodo non foglia ha due figli. Il numero
Informatica 3. LEZIONE 23: Indicizzazione. Modulo 1: Indicizzazione lineare, ISAM e ad albero Modulo 2: 2-3 trees, B-trees e B + -trees
Informatica 3 LEZIONE 23: Indicizzazione Modulo 1: Indicizzazione lineare, ISAM e ad albero Modulo 2: 2-3 trees, B-trees e B + -trees Informatica 3 Lezione 23 - Modulo 1 Indicizzazione lineare, ISAM e
Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE
Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE Andrea Bobbio Anno Accademico 2000-2001 Algebra Booleana 2 Calcolatore come rete logica Il calcolatore può essere visto come una rete logica
+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice
Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica
Esercitazione 3. Heapsort
Esercitazione Heapsort Heapsort Algoritmo di ordinamento che utilizza una struttura dati detta heap per la gestione delle informazioni Tempo di esecuzione O(n lg n) Heap (binario) = struttura dati composta
