Estratto del documento

O

H

4 PER quella

ASSURDO avrebbe

de de

chiavi

figlio chiare

avrebbe

nodo

forse interno

nodo che

tale l a y ;

, EMAX

in

emax ,

se per e

un

un .

. .

, ,

è perché

impossibile chiave

entry

emax=

ma con masuma P(iz)

2]

<PTO] P[i]

1]

FigliouP[i] P[zi P[zi

ARRAY

TRAMITE

HEAP NUMBERING Raduce

LEVEL on

Padre

+

+ <

<

: ;

= ;

,

PROPRIETA P[2i-1) P[2 + -2]

P[2]

2 node presi

Orich del

i

i livello i dx

1 da mappate

5x a sono

ogni in

per , ,

, ....,

, ,

Pl2h-1] P12h] P[n-1] Pin-1]

presi

i del nodo

dx last

node h

livello da

.

2 mappate

sX a con =

sono in ....,

, , ,

,

OSSERVAZIONI

La EFFICIENCY padre-figlio

tramite le

quanto

realizzazione implicite

1

. relazioni

SPACE

è sono

in

array

Alberi

1-1 Complete

2

. Binari

tra Array

corrispondenza e

Un è

numbering

3

. level

qualsiasi sbilanciato è

lo

binario tramite

può

albero molto

mappato occupato maggiore

spazio

array

su

essere se

ma

P[i] Centry h)

Pli]

<Pli] getkey() Plast]

IMPLEMENTAZIONE Chiave getValue

siano nodo evello

più

valore dx

last

entry al

=

: < = a

= =

.

,

.

Sia p heap implementato

entry tramite

con

uno array

COMPLESSITÀ

MIM()

METODO tEO(1)

PTO]

return radce

= del

padre quindi

(2) 20n i (ni)e0(n)

mi) e logn)

man a

=

QUEWE

TRAMITE

SORTING PRIORITY data ordinare

de da

culavi

sequenza n

Una

FASE A si P

le el

chiari invocando

alla volta metodo insert

inseriscono n in

: una

,

FASEB da

si removeMin

P

se el

chiavi invocando

alla volta metodo

rimuovono m

: una

,

HEAP SORT IN-PLACE S output

de

IDEA input

usando priority

stessa de

l a

Variante Heapsort

place de queue

sequenza

sequenza

in come sequenza

e ;

: ,

max-heap standard

heap

VARIAZIONE che

Usare uno

un invece

= STO-n-1] maxRFgodX RFigliosX)

FASE A Rp)

max-heap diventa

modo .

che la P

O

rappresentino

la chiari H

riorganizza ovvero

un

: in , .

, . .

last 1

n

= -

(In-2)/2) Sti]

& I

i Sti]

i)

(S

MaxChild è

downto de

Index del chiave

0 massima nodo

for do Indice figlo interno

< se

con

=

,

/

*

* S[i]

BUBBLING Sti] è

da fogha

DOWN-HEAP nuel se

it jj COMPLESSITA steO(n)

i)

(S

MaxChild

index bottom-up

R costruzione

FASE A

< :

; =

,

(SERd

((REnue)

Whir AND

(S[i] SIR]) HOP

LA

swap :

,

is R; i)

(5

MaxChild

Index

R ;

,

3

S STO-n-1]

FASE B ordinate

modo risultino

che le chiavi

: riorganizza in

last 1

= n - dod dell'iterazione

j

for j)

1 alla

(invariante

to fine

n-1 CORRETTEZZA

/ 1]

S[0

*

* STO]

BUBBLING n-j

da le più

n-j

DOWN-HEAP organizzate

contiene , heap

chiavi come

=

* piccole

-

SIn-j-n-1]

STO])

(S[Lart] crescente

grandi

le più

contiene j ordine

chiavi

Swap * in

,

,

j

last 1

= n - - teologi nrogn

COMPLESSITA

ix removeMax)

0 piccoli

FASEB- de più

heapsempre

ne

esecuzione

: se a

,

i)

(S

MaxChild

index

R (logi)

nodi

Max

= e

heap di i

; * remove su

,

(SIR])

((REnuee) dod

Whir AND

(S[i] SIR]) HOP

DELLA

VIOLAZIONE

swap :

,

is R; i)

(5

MaxChild

Index

R ;

,

3

·

menoxeisax (key volue) se

altrimente rettrice

inserie e

, ,

remove et)

Re

↑ I :

IterablexV) values() ;

Iterable Entryk entrySet))

V ;

,

3 (POSITION-BASED)

INEFFICIENTI

IMPLEMENTAZIONI LISTA #entry nella

* n mappa

=

COMPLESSITÀ X

(n) metodi

i data

richiedono la

o chiave

tutte la

de

ge tre entry

put > ricerca una

e

remove con

:

, , [0

/VI 11-1]

indici

* ARRAY TAGLIA We gle

Mi seme finato

U disponibile 1-1

DI tra

che MAPPING in

sua

e un ,

tall banale X

da

potrebbe trovare

mapping essere non

COMPLESSITÀ (1)

de get put remove :

, ,

HASH

TABELLA

IMPLEMENTAZIONE TRAMTE (

compressions

Schiavis bucket)

1) 3)

V 2) allo

TRE distante

INGREDIENTI associate

h N

FUNZIONE COLLISIONI

DELLE chiavi

RISOLUZIONE

BUCKET di

HASH A stesso

ARRAY Capacità

: =

: = [i]

(ava) code h(R) i

(R hash

x)

i-esimo

hik SEPARATE CHAINING lo

bucket

A lusta

contenente le valore

entry stesso

memorizzare

rea una con

: per

C =

=

nash ,

function (k) remove(R)

numero o METODO

etse

LOAD prt(R X)

X-

FACTOR get

de loucket

lunghezza media COMPLESSITA 1)

teE(x

un AL CASO MEDIO

<

= +

= ,

,

,

osh descritti definizione

dalla O(h) PESSIMO

come CASO

AL

75)

REHASHING (es

si 1 <> 0

sogna prefissata

la

eseque se supera

: : .

N' IN

1

. de bucket de capacità

creazione un nuovo array

funzione

2

. scelta nast

de nuova

una COMPLESSITÀ ()

(R

v)

(R l'Adr root

TreeSearch T

TreeSearch guardo

ALGORITMO associato a

: : ,

, .

(scende

R chiamata)

T

1

#NODI Eh

veT

nodo

INPUT livello ad

chiare de

*

: un in ogni

+

:

, te(h)

a

" gusta >

(confronte)

e

OUTUTuconheRecristaltrmente (1)

posizione :

foqua COSTO

in operazioni

* (h)

più lunghezza

ISTANZA profonda de

foglia

PEGGIORE la

restituisce Cammino

* :

=

return v ;

3 Se

If

Element gete

3 Si

Maresco COMPLESSITÁ te(h)

dominata dalla Treesearch

:

getValue))

ese getElement)

return w ;

.

.

PUE(R X)

METODO e

, (w e)

(R root))) trasforma

T expandexternal

Treesearch entry

contenente la

W nodo interno

w

; in

, ,

. COMPLESSITÁ

(w) I

(T

If te(h)

Internal then dominata dalla Treesearch

IS :

. getElement) getvalue)

y W ;

. .

sostituisci getElement)

nella entry

xa W ;

y .

return ;

y

3 x)

(w (R

expandExternal e ;

= ,

,

el T

di o

incrementa 1

de entry

numero

return null

remove(r)

METODO COMPLESSITÀ

(R root)) dei

T

Treesearch contribute

We ; : Somma

, .

(w)

(T O(n)

isExternal then Treesearch

null

return

If *

; :

. tef(n)

esses (h)

:

Caso 2

* >

(1)

getValuel)

getElement) altre

value *

W operazioni

; :

. .

el T

di de

1

de

decrementa entry

numero (w))

((T E

(w) (T then

isInternal (Tright

isInternal (T left OR

If .

.

.

* / /

*

1

CASO Winterno almeno figlo foglia

con

= un

esegui Caso 1

3

esse[ /

*

* interni

/ figli

2 due

CASO interno

w con

=

esegui Caso 2

3

3

return value

1

CASO CASO 2

è di

padre almeno

interno node

fogla è di

padre due

interno interni

m

: una :

e w e COMPLESSITÁ (h)

left(w) sottoalbero

nel

Tright(W) SXde W

chiave

T Modo

Ya

UR

u(X < ;

; max

con

. COMPLESSITÀ

I

(T (n) (1)

External then

If Cancella destro

el figlo

is suo

y e ;

.

cancella oh

figho

Fai de

il

salve al posto

we sX

un ;

y

y

;

fai salre al de

posto W

ur ;

3 (

esse

cancella we ur ;

fai salre al de

posto W

4) ;

3 RICERCA

IMPLEMENTAZIONE TRAMTE DI

ALBERI

VARIANTI DEGLI X3)

X1) (R3

(R2 X2)

(R1

MULTY-WAY TREE

SEARCH permettendo più

ai

gl node

generalizzano ABR entry

de avere

= , ,

,

è albero tale

ordinato che

un

1

. figli

ha

nodo interno 2

ogni (d-node) proprietà

figli

con d i in

sequente

coddisfa

interno le

Val

nodo V1

2

.

2 : ↳

ogni ....,

(Ra

(k X1) Xar) Ra-1

Res

d-1 entry dove ...

* memorizza : ...,

, ,

, Ri

Rie getkey)

1 isa Tri

nodo

* de Soddisfa

chiave

vale l a

che entry memorizzata

per in

ogni un

e .

PROPOSIZIONE 2

11 foghe

ha

MWS entry

Tree che 1

n

n

: memorizza

un +

-

.

dimostro dell'albero

sull'altezza T

ho

induzione

per foghe

(4) h

albero de

& ha

altezza nentry 1

en

un

: +

① ok

di

l'albero 1

BASE 0 1 0

è

che quindi

R fogla

radice

ho

O definizione

dalla 1

MWS-Tree

solo

è composto M

r > +

una m

per

se

: =

= =

= ,

,

,

② h

Q h+l

O allora

alberi

INDUTTIVO

PASSO La IPOTESI è

vale

Fierato altezza per

vera

per con

:

, ,

considero così

fatto

h

MWS-Tree è

altezza

de 1 :

un + , (ini) mi

↑ isd quindi

hith Fi (0-1)

d-1 l'IPOTESI

1

r entry l'albero ha

ha

Ti fogle

vale entry minita intero

ni n

ogni e

per +

: a =

:

, ,

ma

d

ALGORITMO MW Search

Tree (R v

MWTreeSearch

ALGORITMO : ,

nodo

Anteprima
Vedrai una selezione di 4 pagine su 14
Dati e Algoritmi 1 - Appunti del corso Pag. 1 Dati e Algoritmi 1 - Appunti del corso Pag. 2
Anteprima di 4 pagg. su 14.
Scarica il documento per vederlo tutto.
Dati e Algoritmi 1 - Appunti del corso Pag. 6
Anteprima di 4 pagg. su 14.
Scarica il documento per vederlo tutto.
Dati e Algoritmi 1 - Appunti del corso Pag. 11
1 su 14
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher gloriamart di informazioni apprese con la frequenza delle lezioni di Dati e algoritmi 1 e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Padova o del prof Pietracaprina Andrea Alberto.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community