Cormen, Leiserson, Rivest, Stein - Introduzione agli Algoritmi e Strutture Dati (2a Edizione).pdf

August 30, 2017 | Author: Ema Sacchi | Category: N/A
Share Embed Donate


Short Description

Download Cormen, Leiserson, Rivest, Stein - Introduzione agli Algoritmi e Strutture Dati (2a Edizione).pdf...

Description

I

Introduzione algoritmi

i

k

agli

Sommario.

Nota

*-

.----

....................-....-....-

edizione

seconda

alla

..................................... .-------

italiana

all edizione

Prefazione

----

------................................ ....--.-------------

Prefazione

K

PARTE

..................

Introduzione

l

Algoritmi

j

Analisi

1.3

Progettn

1.4

Riepi1ogo

di

Ordine

MA

- --

TE lì

TICA

.........,...-

Scim watorie FO17llUIC

......................................

aiintntica

e standard

Notazioni

e

comuni

funzioni

M

Dc1 niriune

...........

.......................................................... ........-..... t

iUllC

...,.. ,

i lllll11, Ilil ,IC

p10pflt .1 I slll

l

-

....................

funzioni

delle

gr tndezza

Not ilione

..I

DI

TI

I

3

.

.............................

....................

Introduzinne

Z. i

..................

di algoritmi

ME. i

-

.....................

di algnritmi

- FONDA

PRI314

-

-

.........................-...... ... .-

1.1

di

lilllltd/i lllt

E.

il i11lll llOI 1C

.

Sommario

Ricorrenze 4.1

...........-.-..--. II metodo

4.2

di sostituzione

Il metodo

4.3

Insiemi

del

e affini

-

5 1

...................................................,.........................

teorema

Ordinamento Limiti

9.2

Counting

58

9.3

Radix

6 1

9A

Bucket

Insiemi

5.2

6

Relazioni

5.3

Funzioni Grafi

5.5

Alberi

Calcolo 6.1

ITE

........,.....

5.4

........................... ..................................................................................................... ........................... ,...........,...

..................,...

e delle

á.4

Distribuzione

casuali

discrete geometrica

della

distribuzione

- ORDI/VAMEiVTO

7.1

Heap

7.2

Mantenimento

E

7.3

Costruzione

............

L qlgoritmo

8. I g

1

proprietà heap

Analisi

................................,

...........................................................

heap

...............

.............

priorità

128

quicksort

tempo

medio

tempo

lineare

lineare

nel

175

....,........ ..............................................

caso

1 77

............................................ ............................................

peggiore

l 79

D/DATI...,.....,....,....,...,....,....,...,...........,........,....,... .....,...........................................................................

12

Strutture

di

dati

fondamentali

11.1

Pile

l l.2

Liste

I 1.3

Realizzazione

I I A

Rappresentazione

Tabelle

................................-...--.-....,..................................................................... -------

e Code.............................................

..

I 3S

13

13 7

........................................................

..................................................................................

... .. .

1 89

189

di puntatori di alberi

e oggetti

................

radicati

.....................

I 92

..........................................

I 97

...,..................................

20 I

......................................................................................................... .............,...,.............................,.....,..................................................

hash Tabelle

ad

12.2

Tabelle

hash

l 2.3

Funzioni

12.4

Indirizzamento

indirizzamento

diretto

207 209

..

. ....,...............,.......................................

..................

hash

27

.............................................

............... aperto

......,.....,.............,..............,.....................

2 I3

............................. ...

2 I9

1 33

.. .. ...-

------

... ..................................................................... ..

..................................................... . ,... ............ ...................................................... ..

concatenate

12.1

Alberi 13.1

binari

di

Che

cos

l 39

13.2

Interrogazioni

13.3

Inserzione Alberi

............................-...............--,-... .....,...........................,.......,...................................... -- ----------

ricerca è

I4 I

13.4

..

1 84

....................... ............,............,.............................................................. ..................................................,..............................................................

un

albero

su

binario

un

albero

e cancellazione binari

di

di

ricerca

ricerca

binario

..

..

. . 143 . -

I 47 I 154

2

14

RII-alberi l k.

I

IA.2 IA I 44

Rotazioni 3

Inierzi ne C inccllariunc

de li

costruiti

RB-alhLll

di ricerca............................................

in

23 1

............................................. .... ,

...........................,............... .. ..,...,...,

......

...

...,......,............,.............

i isua1e

mo do

...........................................................,....... ..--. ... .. - ...,.... ... ,,

.......................

1 79

...................................................................

...,......,..............,..............................,.......,............................................ .................................................-....- -Proprielit

229

...................................................

-- ---

- -

-

,. ...,. ,

--.......................

35

23 8

.......................,.............

145 ..

quicksurt

I 1

133

...................................................

.................................

del

1 75

.............................,...................................................... . .............................,.................

185

1 29

....................................

.......................................

quicksnrt

Introduzione

1 18

....,....,....,........,....,.........,...........

dello

e massimo

- STRUTTURE

TERZA

l 13

.................................................................................

r tndumizz ite del

in

107

binomiale

............,..........................................................................

d i quicksort

Versione 84

della

del

Prestazioni

Selezione

103

SELEZIONE

heapsort

Descrizione

10.3

e distribuzione

............................................................................................,................ ....,............,.....,....,......,....,....,......,....,...,...,...,.....,........,.....

Quicksort

con

93

............................................................................................. ...................................................

di uno

con

Selezione

.........................................................,................. .........................................................,...............

binomiale

............................................................................................ ....................................................----------.---------

10.2

PARTE

...................................-........................ ...........................................................

Heapsort............................................................................................................... ..............................................................................................................

Code

I 68 170

85

........................................................................................................ .................................................................................................

7.4

I 6è

l 66

8 1

................................................................................ .................................................................................

probabilistica

7.5

....................................................,........ ....................................................,.......

.............................................................................................

e selezione

77

98

delle

Code

163

..............,.........,........................................................................ .................................................................................................

Minimo

93

Calcolo

Analisi

l ordinamento

................................................................................................... ..............................................................

sort

10.1

......,...,.................................................................. probabilità..............................................................................

combinatorio

6.6

sort

.......................................................................... ......................................-..----------------

lineare per

sort

73

,...,......,.........,............................................................ ..................................................................................

Calcolo

Variabili

probabilità

1Vlediano

79

....................................................................................

combinatorio

Introduzione

8

..................................................................................................... ...............................................,..............,.............

6.3

SECONDA

7

...........................................................................................

......................,............,.......................................... ........ .............................................................................................

6.5

tempo

inferiori

.......................................................................................................73 ...........................,.............,.............................................. ....,....,., 10

5.1

in

9. l

55

.........................................................

principale

9

57

................................................................................,.... ........................................................

principale

dimostrazione

-------

....................................................................................... ...............................................................................

iterativo

Il metodo

* 4.4

..................................................................................... ..-------------*------------ --

V

-

- 247 -

247 2-i9

...,....,...,. ..........................

.. . .. ........,..............................

251

...,

,...

...

AS

Sommario

15

di strutture

Estensione

su

dati............................................,..................., ...........................................................................

di un

l5.1

Selezione

15.2

Come

estendere

15.3

Alberi

di intervalli

insieme una

dinamico................,................................,.....

struttura

di dati

263

... ......

.......................................................,.

...........,...............................................

.........................

20

263

20.

268

20.2

- TECNICHE

QUARTA

EVOLUTE

E L ANALISI

DI

PFR

lL

PROGETTO

ALGORITMI...,.......,......,.....,.........,..........,...,......

278

..........................................,...................................................................... .................................. ......,.... ........... ................,.

Introduzione

17

Programmazione 16.1

Prodotto

di una

di programmazione

16.2

Elementi

16.3

Il problema

l 6.4

Triangolazione

Algoritmi 17.1

IS

PARTE.

................................................................................ ................................................................................

dinamica

della

17.2

Strategia Codici

17.4

Fondamenti

17.5

Un

Analisi

di matrici

sottosequenza

di un

comune

concetti

greedy di Huffman

di

dei

metodi

scheduling

3 1I

315

.....................................................

degli

aggregati

degli

accantonamenti................................................................. ................................................................

Il metodo

18.4

Tabelle

- STRUTTURE

del

326

........................................................................... ..........,...,.................................................

............................................................................ ....... ............................

potenziale

dinamiche

Df

.......................

.............,....................................................................... .......,.....................,..................................

DATI

l9

F3 OLUTE,....,......,,........,,.......,........,.......,..

Definizione

t .2

Operazioni

l .3

Eliminazione

dei

B-alberi

di base di una

sui

........................................ dl

U1

B-albCH ...........-

21.4

Limitazione

del

Strutture l

che

di

dati

heap

di Fibonacci

fondono

heap

chiave

ed

403

.-.-.---..

..........................................................

404

.................................................................

4Q6

eliminazione

4 l3

di un

nodo.............................

massimo........................................... ...... ... ...

grado

insiemi

per

Operazioni

su

4 I7

disgiunti...............................................................

insiemi

Rappresentazione

disgiunti

a lista

Foreste

di

Analisi

dell unione

insiemi

- ALGORITMI

SU

Introduzione

................................................................

concatenata

disgiunti

di

insiemi

.

disgiunti

.......................

con

compressione

dei

423

. 426

...............................,......................................

rango

per

423

. 429

cammini

.................

43

GRAFI

......,....,,...............,......., .............................................................................. ..... -

.. ---

--

2

444

......,....,...,. ...................,....,...........,......................................................... ......................................,................,.......----..---------------------

23

Algoritmi 23.1

elementari

su

grafi

Rappresentazione

445

Visita

in ampiezza

23.3

Visita

in profondità

23.4

Ordinamento Componenti

Alberi

di

.....................................-----------------............................................................................

447

..........................................................................

447

di grafi

3.2

23.5

..........,.....................................................,.................... ............................... ...

topologico

450

-

-

.........................................

fortemente

connesse

-

..............................................................

45 8 465 468

344

363

.............................................................. . .

chiave

di una

342

36 1

. ....,.... .......,, ... .. ... ,.....,. ...,......,.........

B-alberi

Decremento

degli

24

copertura

24.1

Costruzione

24.2

Gli

minimi di

algoritmi

un di

.....,...,.................,,................................................... ...........................,..................................................

albero

copertura

di

Krusl

al

e

di

minimn

477 47 8

..........................................

Prim,...........................................................

48 2

360

...............................................................................................................

l9.I

21.3

struttura

338

348

....................................,............................................................................ ....................................,............................................................................

R-All eri

389

...................................................-.....-..----.............................................................................................

Fibonacci

Operazioni

SESTA

25 introduzione

di

21.2

337

Il metodo

18.3

PARTE

332

ammortizzata.......................................................................................... ......................................................................................... Il metodo

3 84

....................................................................

3 l9

........................................................................

18.2

binomiali

383

.............................................................

3 l 2

..............................................................

greedy

su heap

binomiali

302

..................................................................................... .................................................................

teorici

problema

di base

e heap

La

9 $

296

...,...........................,..........,........................................ ...................................................................................

attività

binomiali

21.1

22.3

29 1

...................................

................................................................................................. .....,.......................................................................................... di

heap

22.2

.......................................................

poligono

Alberi Operazioni

Gli

22.

..........................................................

18.1

. UEXT4

2S3

dinamica.....................................................

lunga

più ottima

greedy Selezione

17.3

sequenza

I

279 22

l6

.................................................................................................... ....................................................................................................

binomiali

27 I 21

PARTI.

Heap

VII

..

-

Camnsini

25.1

25,3

minimi

sor ente

nlinimi

Algoritmo

di

Dijkstra

Algoritino

di

Bellman-Fo

313

25,4

C

36

23,

Vincoli

3 76

con

Cammini

immini

e

ininimi di

di

tTerel17. l

sin ola

49 l

........................................----.....,........

rilassamentn.................................... .........................

495

.........................,..........,...................................,.......

cnn

.......,.......

...................................................................... ior C

ente

C ll111111BI

sin

ala tllllllI111

in

grati

orient iti

...................................................

503 507

ciclici

..............

5 l 1

,..............

5 I3

26

Cammini

minimi

tra

le coppie

26.I

Cammini

26.2

Algoritmo

di Floyd-Warshall

26.3

Algoritmo

di Johnson

* 26.4

Un

minimi

contesto

Flusso 27.1

Reti

27.2

II metodo

27.3

di flusso

sparsi

grafi

in cui

risolvere

orientati

......................................................

di preflusso

Algoritmo

532

31.2 31.è

bipartito

grafo

543

2

32

.............................................

570 574

........................... ...................................................

Introduzione

28

Reti

ED

ESTEpSIOAI

.........,..................,...,......,....,...

28.1 28.2

confrontatori Reti

Il prihcipio

zero-uno

28.3

Una

rete

di ordinamento

28.4

Una

rete

di fusione

Una

rete

di ordinamento

8.5

599

..................................................................,........................ -----------...-.........-.........................,........................

di confrontatori

Circuiti 29.1 29.2 29,3 298

aritmetici

Risoluzione

31.5

Inversione

31.á

Matrici

Addizioriatori Circuiti

Rappresentazione

32.2

DFT

Circuiti

32.3

Realizzazioni

Algoritmi 30.1 3 .2 iQ, l

per Salto

dei

l

Confronto

Nozioni

elementari

Massimo

comun

33.3

Aritmetica

è3.4

Risoluzione

33.5

11 teorema

è3.6

Potenze

*

608

Il Teorema

304

Calcolo

........................... .............................

613

34

paralleli

3 ,5

Risoluzione

parallelo

..................................................................... -- -- -..........................

..........................................,..........................................

8rent

e l elTicienzu dei

cleterministica

rispetto

efficiente

prefiiii lei

contlitti

al lavoro al

708 ...............

dei

minimi

quadrati

720

.......

724

735 737

FFT

742 749

.............................................................

................................. Iavorn

.........................

..................................................... .....................................

....................................------ -------...........................................................................

numeri di

teoria

divisore

numeri

..........................................

cinese

det

lineari resto

a chiave

760 .

..................................................... .

modulari

776 .

di interi

in fattori

779 78 1 785

RSA..........................................................

79 I

..................................................................................

primalith

765 770

..........,......................................

..................................................

pubblica

759

....................................................

e emento............................................. ................................,............................................ ... . . ... .

di un

di

dei

....................................................... ..... .

di equazioni

Corrispondenza

797

primi.....................................................

tra

stringhe

.......................................................-----------.............................................................................

ingenuo

3g

Algoritmo

Rabin-Karp........................................,......................................

619

34.3

Corrispondenza

624

34.4

Algoritmo

Knuth-Morris-Pran

Al

Boxer-Moore

l

di corrispondenza

tra

stringhe

805

....................................

P

35

tra

oritmo

stringhe

con

gli

automi

806 809

a stati

tiniti

...........................

8 I3 8 19

..................................................................

825

............................................................................

641

i5 l

Geometria

35.1

663

5

..s

á70

................................................................................ .....................-..........------------------------

computazionale

Proprii.- , i

654

CRCW................................. ..........................

iispetto

704

...................................................................

Algoritmo

634

calcolatori

di

697

............. .............

61 l

619

-......

e al oritmi

........................... .....,.................... booleane

................................................

e metodo

positive

della

modulare

Scomposizione

ERE rV

dei

33.2

33.9

.............................................................. ...... -.-.......................................

.............................................................................-.. .....................................

algoritmi

lineari

matrici matrici

............................................................................ .................................................................... -...-..-..-.......

teoria

Verifica

.................................................................................-.. .......................................

tra

di

33.8

iequenziali

puntatori

definite

efficienti

605

35

30

tra

689

..............................................................-

di polinomi

e FFT

............................................................................... - --- .......................................

.......................

di equazioni

matrici

tra

e moltiplicazione

..........................

.................................................................................................... ....................................................................................................

e FFT

è2.1

Crittografia

................................................................................... ....

sistemi

simmetriche

33.7

............................................................................ ...... .......................................

moltiplicatori

di

601

..................................................................................... ....... .......................................

combinatori

la moltiplicazione

per

di numeri di

689

.........................................................................-.....

Strassen

601

-------------------------------............................... ...............................................................................................

Circuiti

di

31.4

34.

29

matrici

algebrici

................................................................................. ........ ..................................

bitonico

............................ .....,............,......,.......,....................... .......................................................................................

delle

Algoritmo

Algoritmi

598

................................................................................................................. ----------------------.-...........-..................................................

di

Proprietà

Sistemi

33. - COMPLEMENTI

SETTIMA

matrici

583 33

PARTE

sulle

Polinomi

558

...................................................... ......

lift-to-front

31.1

. é39

55

............................................ ..... . ...................................................................... in un

Operatori

551

............................................................................................. . . ......-...-.......................................

massimo

31

5 27

problemi

..................................................................... ........................................

di Ford-Fub erson

Algoritmi 27.5

525

matrici........................................... ..........................................

................................................................................................... ----------------*-- *--------------..........................

Abbinamento

97/

di

.................................................................... ..........................................

per

in grafi

massimo

..................................................................

e moltiplicazione

generale

di cammini

27

tutte

IX

rio

Sonuna

dei

segmenti

Verittca

del

Calcolo

detl inviluppn

Ricerca

della

- . .......

....................................................... .

intersezione

di una eonvCS4O

coppia

835

ùi punti

piii

coppia

qualsiasi

di segmenti

.................................... vicini

................. .... . ...........

............................................,........

83S 840 . 846 854

674 679

3fi

Prohlemi 3 i.

l

AP-c mspleii Ten po

politl inli ile

SCi3

........................................................................................ .......................................................-................................ ................................................................ .. ...,...,...............................,..................................

.

Rb

j

edizione XEI

Prefa ione

fondamentale

che

elaborare

i daii

libro

riguardo

al

di

del

algoritmi

testo

media

Gli

algoritmi

li rende

di

sono

anche

in

cui

la

italiano,

perlomeno

possa

.

I tratta

La

su

dii ainica.

di dati

disgiunti . algnritmi

per

classici

che

minimi,

Vll

intrndotti

aritnsetici.

istruzioni

che

algoritmi

sano

Questa

parte

può

quando di un

di ordinamento mentre

havh,

la Parte

aiberi

di

III

ricerca,

la

necessarie minima

dello

un

lettore

contrassegnati di

comprensione

resto

nel

del

testo. con

dimestichezza essere

soltanto

risulti

necessario

algoritmo

trattato

heapsort,

quicksorr,

una

capire Parti

nelle

certa II-VIL sort,

coirnring strutture

atte

bilaiiciati

le

sfogliata

le principali

introduce allreri

corrente

presenta

che

sono

richiedono

una

analisi

cosi

esercizi

di avere

stati

sono

capitolo

Ciascun

ed

il

in inglese.

difficili,

più

paragrafi

neologismi,

lasciati

stati

in capitoli.

che

è quello

progetto

sofisticate

bonn

quali

di una

per

eo mlisi

bi ohi iia/i.

heap

B-alberi,

state

heap

inventate

di

a realizzare

probic mi

di opprimi

i grafi.

ione

La

Oltre

anno

su grafi

La

ad

insieini

per

Parte

VI

espone di base

algoritmi

considerati

alberi

V tratta

Parte

stnrrnire

decennio.

connesse . -a

prograimnn ione

aia .

li Fibc nacci,

struttura. menti

algoritmi

anuirorti-

nell ultimo

impoi-t mtiiiima con

nuoti

progettare

per

l etficienza

o in profonditG.

algoritmi

di co errura,

sia

canvuini

massimi . contiene nunvi

cnlc lntori

alcune

le

matematiche

analizzarne

u

operare

recnstissimi

f7wssi Parte

Sono

trattate

delle

in ampie ,.-a

visira

particolare,

In

quelle

matenntica.

tecniche

evolute

molte

di uso

sono

che

dinamici.

e per

greedy

strunure

La

insiemi

ormai

successivamente

tabelle

pile,

I V presenta

Parte

di

accademico.

nell ambito

limit rioni

complementi modelli paralleli .

teorichc

ed ùi

c ilcolo

del

estensioiii reti

sono

considerate

di certi

prohlemi.

eli

materiale

ccmfi-w ratori, applicazioni

che

pei c. non

trattato

nelle

circuiti

posa no

ll-VI.

Porti

e

combinati ri

specialistiche

esecra.

problemi

e sono

NP-completi

algoritmi

considerate

XII1

Algoritmi

tecniche

per

superare

approssimati .

Alan

o inglese.

italiana

divenuti

Alcuni

o nell

corrente

limitazioni

nu tri i.

risolti

di

b1erodi

per

il Tratramenro Università

tradurre

Nel

lingua

tali

Docente

di programmazio-

l ash

heap,

suddivise

e di selezione.

sor/

code,

operazioni

nel

della

ragionevole

essi

pseudocodice,

esperienza

di

volta

al lettore

i principali

bucl et

lisre.

tecniche

ritornarvi

usata

II espone

sort,

siano a livello

programmazione.

di uso

approfondimenti

l induzione

per

matematica

radia dati

lettura.

prinaa

Parte

molto

l introduzione

algoritmi

le prime.

semplice

scientifici

accademico.

a leggere

le

di

e degli

e successivamente

indicano

usano

bi r. cirray,

a loro

parti,

richiesto

che

italiani

richiesto

semplici

complesse.

tutte

termini

ambito

più

prerequisito

tecnica

trattati

matematica

un

minima

linguaggio termini

variabili

Questi

matematiche

dimostrazioni

in

delle

limitarsi

asterisco

ad una

molti

a lettori,

preparazione

una

abbia

se usare

esempio

per

più

che

avrebbe

in sette

inesperto

Parte

e l analisi

utilizzando

che

specitico

usati

stati

inglesi

le nozioni

uno

traduzione

è suddiviso

L unico

una

presenta

sono

quali

in parte

e

professori

testo

di tempo

agli

trattato

esauriente famosi

Il

dei

il progetto

verbalmente

il dilemma

i termini

dapprima

cm

da

Technology. alcuni

pratica,

abbiano

lettore

di

e i nomi

tecniche

che

sia

sono

possibile.

pseudocodice Il testo

utilità

un

scritto

k stato of

accessibili

a qualsiasi

si è posto

in

mantenuti

La

lasso

li possa

Pisa. descritti

dall uso

è stato casi

ed

Institute

indubbia

che

introduzione

moderna

algoritmi,

o professionisti.

in italiano,

La

l algoritmo

superiore.

comprensibili

Dove

una di

rendendone

pur

svincolandolo

da

che

in modo

e srrutrurati

Massachusetts

problemi

universitari

scuola

sia

all analisi

prestigioso

per

studenti

fornisce e

approfonditamente,

Nei

ben.organizzati

almeno

progetto

ricercatori

testo

siano

efficientemente.

Questo

ne

Inrrodu-ione

italiana

all

in un

gennaio

1995

dell degli

A.

Bertossi

7nforn a-ione Studi

di Pisa

Nota

alla

In

alla

traduzione, Il

che

è inevitabile

non

può

revisore,

ma

vi

un

argomenti del

12.7.

anche

Omero

Gli

studenti

bile

o

professori

e non

il cesto

errori

è un

correggere

gli

di

e cercando

servizio

rimasta

o se

ne

hanno

dovuto

errori

o oscurità,

di errori,

sono

lavoro

di state

fare

introdotte con

cimentarsi traendo

la

peraltro

da

e ci

spunto

questi

se

più

spirito è

svista

qualche

che

studenti segnalato

fruttuosamente

hanno una

per

con

sobbarcati

i numerosi

altresi

intelligiPuicroppo.

provveduto.

d ora

di

è importante meno

a rendere

fin

laddove

fallibilith

che

studenti

ci sianao

scusiamo

edizione

precedente

di errori, dalla

meno

Ringraziamo

di nuove.

quello

Honierus...

rassicurati

tendono

lettore al quale

ci

meglio

eli

forse

la quantità

degli

questi

e ingrato,

nostro

per modo

dal

stessi

presentano era

dormit6t

bonus

a beneficio

giacché

minuzioso del

gih

scoperti

autori

Orazio.

qualche

è soprattutto

facilmente

sono

diceva

non

eclatante

più

da

atf ancato

Gli

stessi,

loro

Quandoque

preciso.

e in

frustrati

Ma

a

il caso

libro,

alla

in generale.

libro viene

questo

per

mille

dovute

e comzioni.

si scandalizzano

spesso

il numero

sempre

più

ramo

inesplicabili

talvolta

meno

colleghi .

di minimizzare

per

in questo

reso

i docenti

sentirsi

invece

cercare

ora

è stato

del

del

lavorazione

alla

anche

di quasi

imperfezioni

altre

miglioramenti

magari

sonnecchiare

anche

e

figure,

vi siano

libro

In un

Internet.

su

specialista

migliore

modo

che

sembra

dovrebbero illustri

nel

e delle

spazio

motivi

per

e che

uno

essere

sempre

o,

proposti

teorema

testo

è comunque

errori

commettono

del

preparazione

traduttore

errori

degli

sfuggano

autori

dagli

avvalendosi

rivisto,

minuziosamente

è stato

a disposizione

messa

dell errara-corrige pagine

il testo

edizione

seconda

questa

italiana

edizione

seconda

comprensione

protonda

dell argomento. È opportuno completi temente

e heap. tradotto

che,

segnalare abbiamo con

albero

allo

chiamato binario

scopo albero pieno.

di nsitieare

la ben

piena iente Per

il resto.

confusione

nota

binario

il fi tl

i terminologia

Torelli

llfcruro Dipartimento

di

tra

binary

Scien -c

tree.

è rimasto

e

Carfo

m aggio

l 999

pieni.

precedeninvariata.

Meeegherri

dell.infoi.,va-ioide Università

Milaiw.

alberi

di

lvliIano

Prefazione

libro

Questo molti

fornisce

un

accessibili

a lettori

livello

elementare

senza

capitolo

Ogni

argomento

essere

leggibile

illustrato

da

Dato

da

tigure.

numerose di un

si

di

un

fatto

algoritmn.

le

a studenti

di corsi

questioni

tecniche

il libro

algoritmi.

che utilizzato

essere

pub

di dati.

e strutture

algoritmi matematici

aspetti

è di

criteri

di esecuzione.

tempi su

gli

nei

determinante

dei

analisi universitari

per

pensato funzionamento

il loro

considerata

un attenta

è inclusa

sia

va

di applicazione

pseudocodice

di programmazione

po

l efficien-a

Poiché

soprattutto

discutono

progettazione

abbia

a

matematico.

un area

uno

con

descritti

sono

e la loro

le spiegazioni

o il rigore

di progettazione,

tecnica

una

algoritmi

Presenta

progettazione

mantenere

trattazione

deIla

l ampiezza

algoritmo, Gli

chiunque

è rivolto

che

un

di

Si è cercato

livello.

qualunque

la loro

rende

algoritmi.

degli

moderno

studio inoltre

approfondito

sacrificare

attinente.

progettazione Il testo

di

presenta

allo

introduzione

in modo

analisi

o un

ampia

e li tratta

algoritmi

da

anche

proficuamente

nella

presenti

e

tecnici

professionisti.

Al

docente

libro

Questo varietà

è stato

di corsi.

di quello

materiale

più come

testo

corso

che

di

le nozioni

necessarie

quelli

complic ti.

capitolo.

in un

Vengono esercizi brevi

elaborati de

che

possono media.

presentati

verificare altri

alla In

corso

e ciascun per

llldiltM

da

svolgere.

possnno

e speiso conducono

richiedere

di

cui

solo

corso

un laurea

oltre capitolo

con del

l . pprendimenta

itstroducono lo studente

ltllil

dati

nuovo per

prcp lr lliojle

di

120

problemi.

compilo

tuia

passi

di

h lie

più

i primi

solo

problemi.

Ogni gli

per

sono casa.

eni.ralnsente

materiale

argomenti

Generalmente alcuni

nlat riale

come

usare

al tutte

contiene

e poi

semplici

di un

paragratt

capitolo.

l intero

e più

esercizi

termina

essere

usare

si potrà 900

gli

prinsa

si potranno

diploma

di

il libro si adatta

meglio

capitolo

Ogni

necessari.

e presenta

comprensione

sua

i capitoli

molto

si fornisce

considerare

che

il materiale

e selezionare

prendere

utilizzandn

in una

utilizzabile che

Dato

dovrebbe

il docente

un corso,

comprendere

può

riferimento

intende

più

che

è quindi

di dati.

e strutture

di algoritmi

ci si occupi

ed

e completo

versatile

essere

per

pensatn

ovunque

sono

esercizi

semplici 1 problemi

domande

di autoveri casi

propongono

consistono

con

termina

paragrafo esercizi

di diverse

fica. piii

dnman-

soluzioni.

alla

iil

C6111pleta

01lll .l

CreatiVità

sllj el iote

lllll

XVIII

Prefa

ione

Allo

studente

Si

anche

può

richiedere spera

Si

degli

che

che

o inconsueti

stati

sono

sorvolare Questo

sui

paragrafi

libro

tratta

riferimento

da

molti

tecniche

utile

le

matematiche

Se

che

più

avanzato.

materiale

saranno

tutti

affrontati

di testo

come

sia

il lettore

modo

dolenti

semplici

analisi

come

gli

procedure e le liste

induzione

per

di

Molti

amici

e colleghi

poche

I del

presenta

libro

nostri

tutte

for

le

Ras

necessarie.

Albert

varietà

degli

che

Poiché

molti

anche

gli aspetti sono

Per tradurre è stato

desideri

ignorati

richiedono

ipotesi algoritmo

ciascun

uno

lingua

Molti

sugli

attenzione

scuole.

degli

sull ambiente

in modo

per

algnritmo

in

ed

aspetti

ennri

avrebbe

algoritmi

di programmazione

considerati

sono

hanno

hanno

Alan

Molti

assistenti

altri

modo

presentati

evitando

del

ingegneria

Si è cercato di un

le idiosincrasie

coi fondere

potuto

Lo

il suo

Kalisl

semplice

sono

i,

stati

software

che

linguaggio

di

altre molte

Sensale.

a bibl

le

loro

le bozze

dell indice Un

libro

errore

di o

mnle

questa

h

ro

Camhriùec.

erimento

u gerimenti pO i OI10

tor

y

errori òa per

COSCI

Lf q rn ithnr

Lahor.itoiy

545Technolo

seiiz altrn

iu

apprezzati I COI111112lltl

1etrvilrsctio lullT

utile

qualche

partico1arri ente SOlllZIOtlC.

contiene

C lfll l 1ÈI

ed

sarò

proporre, nuovi

Se

nmissioni.

esercizi

aseolt tn e

pr emblemi.

il

lettore volentieri. purchi

trova

qualche

Sherns in

questo

progelto.

Saranno inclu l ino

si

vecchi

del

di

Machines

tenere

libro

durante

cor i

in

si

particolare

Lucas

nostri

ricompi1azionc

a questo

per

In

altre

ringraziano

Mark

Rutgers ,

Souvaine

Overmars

Rutgers . allo

significativi

Baratz.

Berger.

Bonnie

Warios

Papaefthymiou.

Rudich,

Alan

sala

nostra

di questo

sviluppo Aditi

Cliff

Burt

Dhagat,

Mark

Phillips.

Cindy

Sherman.

Stein,

Susmita

esercizi,

ne hanno

Sur.

e pertanto

nostre Be

ha

Bili

ory

di nuovi

Inni

se,.retarie

HubbarJ

Troxel

h mio

e hanno

Wilsott

alla

un

snstegno

per

stesura Sergent.

Denise

Rzdziahoviky,

fnrnito

nella hanno

le note

scrittn

contribuito

hanna

aiuto. ore

molte

e David

Niehans

Maria

e di grande

risparmiare

fattn

ha

Sergent

bibliografici.

disponibile

sempre

sviluppato

e Gre

Denise

tecnica.

di riferimenti

ci

Meyer Vipnis,

Shlomo

le

assistenza

ricerca è stata

di lettura

capitoli.

anni,

alla

A1hert

di

particolarmente,

e valida

MIT

Papaefthymiou

Negli

e.

Joan

contributi

utile

un

personale

Marios

analitico.

Galle

senza

pari

per

le ringraZiaimo.

la

Molti

l

errori

nelle

rin razi mento

va

Richard

Mark

attenta Sii iice

Computer

dei

Arie

Rose,

fornito

della

note

soluzioni.

dato Alan

biblioteche

biblioteca delle

testo

questo

Bemus, dei

Tuttle.

nelle

intecaria

di

e Diane

Moulton,

hanno

ore

di lavorare

Un Tom

SalIy

La Thinking

Leiserson

e revisioni.

Ang,

e la

I

capitoli. Guibas,

funzionamento

di compilazione.

Stanford .

hanno

Flavio

e Margaret

Sparcstation

preliminari

particolare

Andrew

Rogaway.

alla

preparazione correno

Errori

corsi in

persone

trascorso

L accesso

nostri

Lent,

Phil

Molte

significato,

dei

e Sun

dei Leo

a William

lavoro.

di

particolarmente

e critica

Goldwasser,

garantito

comzioisi

Goldberg

stati

sono

Grazie

tempo

e Maryland

Tuft

ringraziano

Troxel

Gregory

di presentare

Sherman

Li

libro.

ambiente

ottimo

di verifica Shafi

a Charies

versioni

Andrew

Yale .

Arthur

Reinhold.

pseudocodice

e sintetico

chiaro

dell

sarh

Si

del

numerose

un

il buon

Macintosh. il limite

usato

suggerito

Beigel

Utrecht .

algoritmi

pochi

quei

preferito.

di programmazione.

e diretto,

semplice che

pratica. anche

pratiche

degli

qualsiasi

speci

teche

grande

ne

colleghi ed

materiale.

gio

ciascun

presentare

specifico

programmazione

suo

utilità

alternative

la gestione più

Poiché

algoritmi.

1a sua

focalizzare

teorico.

realizzare nel

per

progettato

hanno

si forniscono

di interesse

lo pseudocodice

volutamente

sugli

manuale

ottimo può

Richard

discussi

vi

essenzialmente che

un

il lettore

lo interessano.

algoritmi

realizzati

il lettore

lo rende

completo,

maggiormente degli

libro

di questo

è relativamente

argomenti

che

areomenti

capitolo

dall MIT.

di questo

qualità

laboratorio

Tardos.

e Eva

permettendo

assenza

del

hanno

che

si superava

fornito

ha

Awerbuch,

Shmoys,

Apple

ha contribuito

sua

alla

incessanti

richieste

Reinhold

Microvax. che

MIT Group

a Baruch

David

Meyer,

le volte

tutte

una

va

e Mark DEC

del

le nostre

malgrado

Hirschfeld

Corporation

professionista

ogni

messaggio.

costruttive.

of Computation

ringraziamento

Leighton,

TgX

La

del

i messaggi.

a tutti

considerevolmente

contribuito

Science

Theory

tolleranti

calcolatori

Al

algorithmsQtheory. nell intestazione

help

personalmente

e le critiche

Computer

del

colleghi

particolare

del

parti

hanno

l aiuto

per

d aiuto,

matematica

e la Parte

matematica

elettronico

per Per

costruttivi.

Ringraziamenti

ricorsive

array

errori,

conoscere

suggerimenti

durante

Il Laboratory

di dati

far

per

proporre

XIX

Algoritmi

possa

manuale

delle

Internet

per

all indirizzo Subject

rispondere

poter

o

conosciuti

spedire

di non

su

elettronica

posta

errori

specificando

ringraziamo

la comprensione

la

degli

informazioni,

Siamo

professionale.

dimostrazioni

di

nozioni

al

libro

come

sia

in

lista

1cs.mit.ecu

difficili

sono

strutture

con

confidenza su

probabilmente

carriera

matematici.

aspetti

non

problematiche

Algoritmi

organizzati

velocemente

di programmazione,

di alcune

si basano

che

leggere

degli

i capitoli

passando

nella

esperienza

e accessibili

spiegazioni troverà

di renderlo

poterlo

per

certa

attente

argomenti,

in seguito

usare

qualche

libro

con argomento.

a tutti.

utilizzare

una

ricevere

alle

introduzione

piacevole

interessanti

di introduzione

e la conoscenza una

un

una

lettore

di rendere

si è cercato

I prerequisisti una

al

descritti

con

Pertanto

corso.

fornisca

si è cercato

confidenza

già

un

libro

questo

algoritmi

ha

agli

lnrrodu-ione

Molti

Lethin.

prime Bobby

versioni

sono

Lillibridge.

stati

Bo ni

Blumofe. John

Per rie.

individuati

Ponzio

Stese

studenti.

dogli Raymo,ed

Ei.,enberg.

e Mr

Un

3nhn.,on. aret

Tulle

particolare John per

Keen. la loro

lettura. c alle

hi

hat1no

anche

tornito

critiche

rcvisic ni

di

capitoli

specifici.

SU

o i ilnnnazioni

Situare

M iiiachusctti

02

I 3

A

arxval.

Erie

B ch.

V t eh

Chv it rl.

Riclurd

Cole.

3oh i

H,lit d.

At x

lihii.

D x id

Prefazione

Johnson.

Joe

Kilian.

Hershel

Safer,

Jetf

anche

hanno Andrew

originale

è stato

state

della

Claris

realizzate

L

autori.

American

la

presso

Youngen

Ralph

Hendrickson

l ha

È stato libro.

un

è stato

della

con La

aiuto.

del

del

libro

è stata

curata

Le

Terry

è stato

la loro

per

C scritto impaginato si ringrazia da Jeannet

progettata Rebecca

da

figure

Joanna

Autologic

libro

è stato

TEX.

programma

libro

Il

Introduzione

particolare

Graphics

fotocompositore

un

per

un

BJsTpX.

copertina

modo

si ringraziano

Windex,

usando

colleghi

Alcuni

in

Computer

Advanced

usando

Society

II

Plamback,

Thane

Wang.

di macro

insieme

MacDraw

compilato

e Amy

Daw,

lavorare

con

MIT

e McGraw-Hill

Press

Frank

Shapiro

di McGrasv-Hill

Satlow,

per

il loro

di questo

la realizzazione

per

Ehling,

Terry

aiuto

incoraggiamento,

in tutto

il libro

tuttavia

include

capitoli

successivi

della

e pazienza.

Siamo

particolarmente

Infine.

ringraziamo

e i nostri amore il

figli

e il loro

paradosso

delle queslo

nostre

le nostre Ricky,

aiuto del

famiglie

a Larry

grati

mogli

IVilliam

durante

hanno

e Debby

del reso

per

Nicole

la scrittura

compleanno

Cnhen

di questo

marziano

possibile

. questo

Lue

Linda

Cormen,

Leiserson

lavoro

notevole

il suo

la

L amore.

ci ha

Rivest

Al x

Rivest-

per aiutato

algoritmi

dedichiamo

loro questo

libro.

del

funzione et-impera

Can bi

iclge,

THOa1AS

51assacl nserrs

H.

la

di

sort.

terge

una

di

Verrò

presentato sarà

elio icle-

l approccio

usato

per

tra

questi

in

aumenti

tempo

tale

il confronto

con

termina

di

di esecuzione

il tempo

anche

approccio

tale

algoritmi

degli servii

ordinamento,

come

in luce

metta

che

hanno

versione

possibile

algoritmo

esempio che

ai lettori

familiare

più

. Si analiZzerè

pseudocodice

Il capitolo

come

mostrare

per

da ordinare. di

e sugli

risulterà

semplice

notazione

elementi

progettazione

chiamato

algoritmo

CORMElù

degli

numero

per

è un

che

una

introducendo

algoritmo.

. che

algoritmi

computazionali dell ordinamento

problemi

utile

so .

di utilizzo

iniziale

esempio

nei

analizzato

dettagliatamente

più

il problema

prognmmazione,

L insertion

proposti.

come

uno di

sui

generale

utilizzando pseudocodice

risoluzione,

linguaggi

studiato

già per

discussione

anche

Si introduce

guida.

il loro

e l incoraggiamento

pazienza

Affettuosamente

progetto.

anche

Rivest

loro

alla

necessari

e Gail

Leiserson

e Christopher

e Alex libro.

di redazione.

sarà

adotteremo

è indipendente.

I.

Parte

una

con

Comincerenso

che

a materiale

riferimenti

alcuni

che

Il capitolo

di algoritmi.

e l analisi

il progetto

l organizzazione

con

confidenza

prendere

potrà

presentare

per

Lejeune

e Lome

Cohen

Larry

il lettore

capitolo

In questo

in LATgX.

in particolare

e David

un

Par ,

e Paul

ringraziano

si

L T X, usando

preparata

il suo

per

rea1izzata

piacere

Press.

con

dell impaginazione

Si ringraziano

di MIT

Vazirani.

è stata

AMS

L estetica

Leendertse.

e Umesh

Mathematical della

Tarjan

Mahoney

analitico

bibliografia

Orlin,

Bob

problemi

e Vlichael

indice

Jim

Strang,

alcuni

iVIacintosh

James

Maggs,

Gi/

impaginato Apple

su

La

Stein,

Sleator

Corporation

disponibilità.

Bruce

Cliff

suggerito

Dann

Il libro

Kravets,

gentilmente

Goldberg,

sono

dagli

Dina Shallit,

un

sviluppare algoritmi

due

di ordinamento. CHARLES Rosico

L.

E.

LEISERSON

RIVEST

1.1

Algoritmi

un

Informalmente. prende valori.

colme

trasform mo

l

di

Un

output.

la

ordine

pro

non

l

I, 5

ll ,

studio

ch egli

tC ftlL11lil

Una

pcrnuitalioi c

..

il .

tra

insieme che

computazionali

patii

per

n

nullwri

il

prob1ema si

t,.

riurdin mento

del

tra di

r a,.

ed

una

una

ordinare

di si

procedura

di

sequenza nella

e

analisi

ben

termini

output.

frequentemente

dell ordinamento ii,....

in

descrive

input

presento

un

risolvere

per

problenvzspecitica

e1 algoritmo

strumenti

nu lai

il problema Eli

output

problema

introdurre

strumento

uno

relazione

tale cnn

algnritmi

ed

input

raggiungere

Questo

Formalnscnte.

Il l

valere

per

terrenn

come dehnizione

lu

infatti

deve

decrescente. fertile

di

sequenza

una

quindi

cnnsiderato

essere

specitica to

etlurione.

Illpllf

che

relazione

un

É utput

anche cnmpu1azioitale

comillCCfJ

fornisce

è

che

definita o un

valori.

alcuni

e produce

ittput

cnme

ben

cotnputazionale

proceduru

quolsi si valori.

di

a1goritmn

Vn

puo

computazionale

in

una

insieme

nell output.

problema

generali.

Si

o un

input

algoritmo

definito

è

algoritnu

valori,

alcuni

detusisce

ie

e di

standard

tecniche nel

nun1eri

pratica

uente

moùo

. a, ....

ij

della

segucnz i

ùi

input

tali

ihe

di input

la sequenzà

pp

la

output

come

un

cpiamata

istanza

di

gonsiste

tutti

La

ordinamento. da

di elementi

ordinare,

scorretto

un

da quella

scorretti

possono

qualche

esempio

di applicazione algoritmi

studiati

solo

ranno

lo

che non

da

di

frasi tra

differenza concepito

lo

per

Insertion

con

Iniziamo

figura Lo

di

del

se il loro

con

modo

l output

corretto algoritmo

Un

fermarsi

con

aspettare,

può

essere

Capitolo

33

In generale,

primi.

di

numero

o nastri.

o potrebbe

nel

dal

dato.

di errore

algoritmi

in qualche

dischi

ci si potrebbe

tasso

di

dipende

si ferma

si vedrà

è usato

programmi

sé ordinati

input,

codice

errori.

descritti

una

algoritmi

controllato

un

è l uso linguaggio ed

un

del

algoritmi

reale software

sono

spesso

per è che

essere

seguita.

la

in unopseudocodice,

ciò

che

per

descrivere

per cui vero

non

corrente, mescolati è che

a

il primo

questi

per

coperte

ordinare

una sul

poste

i isertivii

di elementi.

cono ni

l

mano

tavolo,

altra

so , insertion

di bridge

ignorati,

curta

piè

che

risulta

sort

funziona

o ramino

si

quincli

nella

prende

mano,

un

in

dati.

modo

I numeri

per

l a1 oritm i

in input

li

insertion

sonerà ordinatati

s rt

in loco

2 to

j

efficiente

la

Un altra

si inizia del

con

tavolo

da destra

stesso

una

la mano cart

e-

cogliere

4

i

5

while

casn

si debba usatn

sinistra

a sinistra,

volta

si vede

come

è descrittn

i numeri

con

sono

un,

procc hirw

riiistcnsJti

denti

di

i

figura

indie i

la

Aj

1 ..

1

m

1

Ai

Ai

l

i kc

al

corrispnndono

oritmo

d ll 1

il funzionanacnto 1.2 mostra carta deve che corrente

n

I

k

0 e A i

i Ai

A j 1 .. j

ordinata

sequenza

l

j-

do

8

nella

Aj

inserisce

Si

7

più

modo

alla

Quando

ordinata

sequenza

Aj

6

la modularità

nel

nello

la

lengrli A

l ey

do

sorprenda

da

dal l an ay.

fuori

A contiene

input

di

dato

infierite

essere

miszzetto

di

per

ancora

Irte

A

5.2.4.

mano,

nella

sul

gli

6,

l.

elevamenti

3.

L A1

indice ..

j-

tavnlo.

da

vuota e la

si s iene

trovata

c line i

8.

d ll

I. l. pseudoc dice

for

1

distingue

codice.

l array

istante.

ad ogni

memorizzati.

OUtpUl.

è specificatamente

dei

arre.

termina,

INSERTION-SORT

t

non

l astrazione

di

di loro

costante

un numero

procedura

algoritmo.

chiamato

numero

la si confronta

a leugfh AJ .

la

La

l algoritmo

persone

al più

inano

wn

IsSERTIOY,-SORT A

conosce

zià

infatti,

A. con

su

lr sertioir-Sori

e concisi.

linguaggio

del

un

valere

deve

che

pseudocodice,

chiari

codice

scritti H lettore

degli

deve

che

I. l

si esamine-

programma

che

programmi

naturale,

esempio,

per

nello

più

di ingegneria

di un

lettura

un

condizione

o all Alaol.

è che

espressivi

come

Figura

saranno

quando

comunque,

computazionale

come

nella

in

aspetti

corrente,

la procedura

chiaro

periodi

linguaggio

hardware. l uriica

difficoltà reale

psBudocodice

un piccolo

e le carte

carta

è

sort

ordinare mnlte

definizione

numero

computazionale

a quanto

al C, al Pascal

metodi

l essenza

in

di solito

avere

più o

degli

gestione

di per

di input,

tipo

molti

in man

principale,

istanza

numeri

preciso

molto

un

gestire

direttamente

istanza

utili

progetto

saranno

il metodo

Talvolta, presenza

la

un

si impiegano

algoritmo,

tipo

questo

di un problema

nella

applicazione

già

il problema

di questo

descritto

somiglia

dovrebbe

pseudocodice

restituisce

di

istanza

imposti

data

siano

qualche

essere

in modo

algoritmi

gli

linguaggi

come

descriva

linguaggio

un

un

memoria

ogni

di grandi

essere

o anche

libro

Nel un

input

corretti.

può

fornita

specifica

una

per

Contrariamente

la ricerca

algoritmi

calcolatore

per

volta

di

in genera1e,

sviluppati

usare

per

prevista.

di ordinamento

sequenza

in informatica

stati

risolve

di algoritmi

per

algoritmo

Un

se,

fermarsi

non

di versa

algoritmo

i vincoli

elementi da

corretto

risposta

Più

algoritmo gli

corretto

algoritmo

potrebbe

sono

di memoria

si dice

che

dice

infatti

quanto

un Una

soluzione.

migliore

da

di dispositivo

algoritmo

Un si

del

58 , 59 .

fondamentaIe

e

scelta

41, 58,

soddisfino

che una

è un operazione intermedio ,

passo

tipo

ingesso

a calcolare

L ordinamento come

e dal

di

26, 41,

di ordinamento.

problema

i dati

59, 4i,

31.

26,

del

necessari

problema

41,

31,

sequenza

3

ione

I ttrodu

chi ll11 ll I

l irr iy

la giusta

posizione

per

A j

lin e

4-7

a questo

punto

l elementn

A j

è, infierito

j 1

Capitolo

l

S

Introduzione

-

d

J

variabile

Una

3

j

contenuti

o

is

3

I

s

p

l

3

4

5

6

I

3

2

4

5

6

3

y m

ximplicachef

non

soltanto

stesso

Talvolta

un

puntatore

assegnato Ad

ogni

3

1.2

è indicata

con

un

Convenzioni

pseudocodice

1.

rientranze

comincia dalla

saranno

delIa

4.

della

I costrutti

iterativi

v

5.

Le

6.

Si

array indica 7.

accedere

I doti

oggetto

scritto

l attributn elencanti

l indicizzazione utilizzare

tra

un

8. Le

ione

posi

il corpo del

ciclo

rientranze al

il costrutto

di

oggetti.

indice

del

ciclo

For,

svhile,

che

comincia

si applicano di

posto

begin-end,

Wg

wwaÀ

J

I11C.

sono

chiamante.

dati

che

y dentro

to f

x

e-

in particolare,

3.allora y -.v,

caso

in questo

gli

è

la procedura

è visibile

non

alla

una

viene

passata

sono

copiati

non

chiamata,

procedura

una

non copia

è del

i campi

degli

l assegnamento

mentre

chiamante,

procedura

una

riceve

la modifica

parametro,

oggetti, mentre

di

parametro

un

ad

si passano

chiamata

la procedura

valore

un

l oggetto,

x è un

se

valore

per

passati

rappresentano

esempio,

x m

oggetto

Quando

j

che

1./-1

nello

l assegna nen-

visibile.

3 sarà

chiara

è un

i

notevolmente

1.1-2

la

locali esplicita

if, then

ed else

dovrebbe

entrambe

essere

data

procedura

di

hanno

Per

un

in base

esempio di

considerato

elementi

Per

che

Ai

indica dentro

Al

Considerare

i e j il

equivalente

non

elementi

per

un an

saranno

li

attribuiti

un

g

illustrare

modello.

l. 41.

59.

26.

41,

l operazione

di

IYSERTIOY SORT

58 .

-SoRv

L saRviot

procedura non

per

ordinare

a ...,

a

in

non

ordine

crescente

decrescente.

il seguente una

Output

un

in A.

Scrivere

partire

dal

di ricerca

problema di n numeri

sequenza indice

i tale

che

per

un

valore

v.

wc

se i non

speciale

lineare

il valore

ricercare

ed

il valore

la ricerca

per

elemento

a,.

i, oppure

A i j

lo pseudocodice primo

A

che

è presente

1a sequenza

scandisce

a

v.

mai

di

sono del

vy è trattato quindi

ut

arruy,

seguito

elemento

di ui A1

quindi

Considerare

il problema

di

memorizzati

in due

A e B di n elementi.

essere

.. j

array

memnrizzata

il problema

in forma

in modo

addizionare

in nn

binaria e scrivere

formale

due

codificati

interi

somma

La array

C di

n

lo pseudocodice

per

ciascuno interi

dei

due

1

elementi.

su

Descrivere i due

addizionare

ii bit.

dovrebbe

interi.

Aj.

che

si usino

dell array

In i esimo

il nome

contiene. Benché

nome

j, A 2 ....,

in oggetti,

esempio,

lengrh A .

il

valori

specificousando

quanti

si scrive array

specificando

organizzati

indica A.

array

intervallo gli

quadre.

come

la stessa

le variabili

e comunque

1.2 A

indicazione.

un

campo

la

in ordine

Input ad

figura

al l array

anziché

conm,ento. e assegna

j-

alla

la

Riscrivere

la chiarezza .

i m j.

un

a un

che array

Usando

stesso

le oggetto.

strutturati campo come

in atEribicti se

uito

un

oggetto

specificare

per parentesi

quadre

l interpretazione

dal

suo

1.2

Analisi

di algoritmi

on quanti sia

AnaEi

are

un

algoritmo

ha

il

signific to

di

le

prevedere

risnrse

che

l al

per ria

al coiitcsto.

mentre

p

ai Per

a nessun

m

l assegnamento

conienzionali

più

riduce

migliorandone

condizionali

linea

forma

generalmente

parentesi

di sarò

La

applicata

rientranza

e quelli

parentesi quadre. -.. denota un

accedere tra

esempio. il corpo

e talvolta

della

di A contenente

le ngth ha

3

1.1-4

sono

Si puo

Per

della come

da

elementi

notazione

composti

la linea

nnn

sono

senza

agli

il sottoarri y

o campi.

l,

oggetto .

e se si assegna

parametri

routine

l assegnamento x

y dopo

xe

parole

ai dati

puntarore

Esercizi

mentre

assegnamento

questo

i, j e l ey

scritto

ma

e repeat

e seguito

globali

A. La

2-8

L usn

della e

come

dall indice

blocchi.

il resto

multiplo

variabili può

6,

1.1-3

che

j m

variabili

6-7

for

dell espressione

usate

4.

Pascal.

indica

all assegnamento

dei

preservandone

while.

assegnamento

valore

2,

5,

convenzioni.

le linee

di un blocco.

procedura

del

Il simbolo Un

le linee

struttura

lunghezza

struttura

if-then-else.

interpretazione 3.

A

le seguenti

, comprende

costrutti

indicatori

usate la

linea

5. contiene

ai

dalla

puntatore s rll array

dei

un

oggeno.z,

rh..

i parametri

procedura

come

un

sieseguel assegnamentof

lo stesso

si riferisce

di

f

pseudocodice

indicano

linea

6

Inserfion-So

circolo.

dalla

modo

2.

5 di

sullo

Nello Le

4

L elabora-ione

non

è trattata

i campi

in altre

3

y

f sono

speciale

oggetto

tutti

Inoltre,sedopo

x.

f

o un

array Per

anche

oggetto

il valore

copia

sentita

Figura

y 3 ma

v

f

un

o nell oggetto.

allo

propria 2

rappresenta

puntano

8. 1

che nell array

5

parecchi

algoritmi

inferiori

inno

di

solito

scartati

nel

corso

clcll analiii.

nritmo

richiede.

6

Capitolo

Prima

di

analizzare

poter

realizzazione costi.

che

Nella

machine

usata,

maggior

Nel

concorrenti.

Negli

ultimi

come

sul

di

tale

per

si

occasione

dopo

e dei

di studiare

loro

random-access

senza

notazione

calcola-

per

semplice.

più

semplice

di

strumenti

algoritmo

matematici

teoria

de1

algoritmo

essere

può

complessa

e

probabilità significaiivi

diverso

per

richiedere di

ogni

in formule

anche

includere

possono

più

comportamento

questo

occorrono

della

i termini

risulture

può

che

calcolo

identificare

avendo

pur

necessario

l obiettivo

una

se

l algoritmo

elementi

di

competenze formula.

input,

p sibile semplici

scrivere

selezionatn

far

un solo

comunque

fronte

immediato

più

e manipolare,

dall algoritmo

l analisi

che

è necessario

e facilmente

combinatoria

di

Dato

è semplice,

modello

a molte

è quello capace

e di

L analisi

di

algebra il

gli

di

e

capacità

di

comportamento

un modo

insertion

per

di

un

di j.

valore

impiegato

dalla

di numeri

richiede

INSERTION-SORT

i dettagli

i commenti

che

assume

Si

a seconda

richiesto

da

il tempo

di esecuzione

Per far ciò dimensione

scelte un

analizzare

per

nel

decidere

metodo

un dato

come

algoritmo.

esprimere

espressivo

che

1

j c

for

l analisi

sia

2 to

caratteristiche

importanti

sulle

risorse

lengrh A

siano

da

richieste

J

c

Si

dimensione

diverse

si ino

queste

cresce di un

cnn

di

già

tempo

per

una più

l ordinamento Inoltre

c

sequenza

per

della

In generale,

cui

della i termini

steisa

j

di dii tensir ne

come nsisura

esempio

per

naturale

più

elell inpug

per

l ordinamento è

il nn nero

l ordin imenio

che

problema

o il calcolo

delle

elen eiiti

dell inpur

degli per

dal

molti

altri

del

suo

input.

per dal

problCtllU tudiuto

descrivere ie l input

esempio, llunlelo

lei sarò

Iloti sempre

la dimensione di un,l ,

e de, li indicata

ar lli

ori dimoi preieflti la misura

con

un grafo,

due

studiare.

la dimensione

rlel grato.

In gellerale,

scelta

le dimensione

per

g , r, 1

,t n-1

8

SORT,

dei

costi

Tn,

il tempn i olte,

per

input

che puo

cq

1

cq n

1

c n ei n

di INSERTlON-

di esecuzione ottenendo

n

g

per

.

1

cg n

1

gt 7 J

di

input

per

una

I

è

l array a

quando quan

i ha

qu usdo

il

suo



il

dimensione.

stessa

di

tempo

di

esecuzione

,,

.

ordinatn

. ciascun

per

di

iniziale

valore

n,

2. 3..... 2......,.

j

c e

trova

si

un

al

ll

C ál iO

RT.

N-

..

con

oglli

J

n

cq

la

e.,sere

l

cg t,

t,

j-

In

esempio

comunc/ue.

contribuirh

olte

ed è elaboratan

e delle

calcolare

Per

linea

di ciascuna

di esecuzione

ten pi

eseguita

essere

per

passi

colonne

delle

dei

è la somma c

impiega

i prodotti

di

esempin.

piuttosto

dell

1 ,t,

Cg

per

discrete

per

numeri

I

n

e

Ip

dell input

n

Cp

Cp

di esecuzione .

tempo

del

si sommano

Anche

upprnpriato

0

A i j

dell aigoritmo che

istruzione

c n al totale

con

di esecuzione

si deve

coine

1

I ey

di esecuziane un

eseguita

descrivere

trasformate

prnblemi,

n

I

i

Il

dipende

di

Cg

m

1

Ai

1

A i

Tn

migliore

CI

l ey

e A ij

i O

i

Il tempo

il tempo

è tradizione

dimensione tempo

11

ll

j

del l input .

ii dell urruy

è piii

.

A1

ordinata

do

8

di un

n

C

l

while

volte

costo

la procedura

sequenze

ordinate.

funzione

formale

input numeri.

ordinare

dell input,

come in modo

dall di tre

parzialmente

là dimensione

programma

descrivere

dipende

di

nella

Aj

inserisce

irrilevanti

dell ordinamento

quantità

di quanto

è necessarfo

problemi, la

tempo

più

da

tempo

richiedano

non

e perciò

eseguiti

Aj

k

do

semplice

3

b sr .tn.io -SoRz

procedura

un algoritmo

La nozione

tt

non

ciascun

. Per

è eseguita.

generalizzare

6

impiegare

puo

dimensione,

solo

linea

esecuzione.

sort

migliaio

uno

ogni

altro.

. speso* il tempo 23....,ndove j

con

comprensibili.

di calcolo

trovare

di evidei ii re

tralasciare

Il tempo

descr

L s Rttor,,-So

che

di vo1te

ed il numero

linea

ciascuna i

7

inoltre.

procedura

più

di un

efficiente

discreta,

5

Fourier,

la

presentando

i

molti

se un

IRSERTIOY-SORT A

Infine, sarà

un

facilmente

una

ad

notazione

questa

è più

algoritmo

più

procedura c.,

i costi

atti

Inoltre

manipolabile.

la

per

usa

che

confusa

facilmente

e più

di determinare

permetterà

nella

pseudocodice

esecuzione

di

tempo

piuttosto

digitali. Inizieremo

L analisi

formula

una concisa

più

del

l espressione

segue, da

evolverà

Ir smviox-So

operazioni

modelli

che

discussione

Nella tale

per

è

ipotesi

Questa

dello

effettive

le realizzazioni

e con

è costante.

c

dove

moderni- .

calcolatori

dei

parte

RAM

il modello

con

maggior

c,

tempo

un

impieghi

riga

i-esima

della

esecuzione compatibile

un

programmi

l altra

di

considererà

con

come

una

tecnologia

tecnologia

indicato realizzati

eseguite

si avrà

della

realizzazione

compu azionale

sono

tuttavia,

nodello

risorse

effetrivamente

le istruzioni

capitoli,

delle

un

tecnologia

modello

saranno

RAM

stabilire

modello

libro,

basato

modello

si deve

incluso.un

algoritmi

e circuiti

paralleli

algoritmo.

del

parte

Gli

RAM .

calcolatore.

tori

verrà

un

mono-processore

generico

7

fntroduziene

l

oritmo

può è

mieliore

Leynellalinea5.

Ai

I.

j

Ùell input. i

i.

i

io

ii

Illi ltrc.

Cil l ililc

I

C li illl i

uve

u

C Jf,

lrhl IC

I

iÙi

ill

i

i.

. cic,.llilo

II

. n ltc1h,ll

un

ch .

i eiècuri ii i

temnn

L ..

r

.. .

l1ii c,iarl,il1Tinlc



ricl iedc

i

i

.

. t i11i111orl,.l l

i

lli

. .,l

Ili ,.i,l,l, ll

h

,

,

ai

opr

lI

ili

1liili

iocorret,tr..

ccitic,tiinlin.ua...

i

rai1 m i.

.iecr -ie neiklivttonio

n

lll c

l

I11ei11 i1

l1liill111 l

Ill

I rrilLI1I11CI l i

Ui1 1111li1 lt1Cllc li t lll

lilll

l1 ll ill

lli

nu. m ria.

ll

I

Capirolo

r.

Quindi

1 pper

Tn

...., 2.

j

ci n

Cg

tempo ente

Sel arrayè

c,

ordinato

peggiore.

Infatti

sottoarray

A1

Cg

costi

Cg

fl

essere

può

inverso

cosi

j per

cg n

Cg

Cg

b

1 h ecosan

algoritmo

di n.

decrescente

I emento

n. Notando

impiega

nell intero

può

è, in genere,

di

infatti

allora rasi si haai il caso

per

di A 1.

elementi

che

In media,

n

determinare

Il

di

tempo

n

esaminato

i-

input

sommatorie

saranno

tempo

di esecuzione

riesaminate

nel

di IxsERTION-SORT

Cap tol

3

h

.

p eggiore

il

proprio nel

cn c

3

- -- , , C6

2

C7S

2

Cg

di

Cg

Cg

Per

1 S

/n n

tem

costanti

a, b e c che

o di

esec

uzione

C6

- A

cn

hn

è nn

del

caso

peggiore

ancora

daia

dell in

sertion

essere

può

costi t, cos

espresso

d

come . sulta

dd,

an-

c

bn una

quindi

er

fun ione

algoritmi lp

nel

caso

nonostante il cui

cib com

sort,

il tempo

di esecuzione

u ne 1i i ultimi neg

capitoli

. vedranno si

or portamento

variare

può

anche

di un

del

Nell analisi

ne re n

in cui

in modo

seguito

caso

scelta

Il tempo hllpèl1OI è

un

su

interessanti .

input

è n

tissatn.

costanti

sarà

cioè ciac

tra

ort, ordinato,

sono che

stati

presi .

in

considerazione .

, peggiore,

il caso.-

dalle nel

reso o iin cconsiderazioiie . pre. di esecuzione . più lungog seguenti tre ragioni.

caso

teinpi

di CSCCUllùllC . . im pi ie h ll hertz ntai

ipotesi

medio

di solito

il tempo

rii esecuzione LLli

pratica

stessa violata.

essere

può

ipotesi.

tale

forzatamente.

è un

che

della

input

gli

ipotesi

vera.

rendere

talvolta

tutti

che questa

sarà

atteso. ciò

di riconoscere

il problema

fare

A dato

an- .

che

i fattciri

i

ne

sia

ii cui in

quello

i caso il

arra l arra

di i

sc l

tatto

cl1e

iore giore

ppe Cl tempi

il tempo

.soltanto per

qu qua

algoritmo

di i un

U,

il tempo I.si si .

. maggiori

.

... inoltre

di esecuzion

non p

.. sa

à ài

una -

-

..... c è I a nCceisil..i pe

iorare.

. La

un

caso

pe,. ziore

input

piccoli. nel

nl

8

preciso

nel

ha un

caso

in

sarh

nel

input iore

pei

di un

e tTiciCllie

piii

inferiore.

di un

velocemente

se il sun

altro

sarò

mentre

informale.

un

puo 8 u- .

algoritmo

nel

di esecuzione

tempo

valutazione

Questa rendi

sufficientemente piii

modo

in

cupitolo

per n al

di

pronunciatn

.

di,.randezza

ordine

per

sort,

l insertion tlteta

di O ir

peggiore

per

principale.

deterininazinne

nella cle

si scrive

Quindi.

gr indi. caso

in questo

usata

Capitolo

si considera

oritmo

ma

input

per

termine

del

per

formula

signiticativi

non

di crescita

tasso

nell usalisi

una

di

principa1e

costante

o ordire

di crescita interesse

maggior

relativamente

sciente

del

significativi

meno

eli esecuzione

notazione

sono

il coeft

anche

ignorare

sono

il ternsine

solo inferiore

solo

non

Quindi

il tasso di

è il valore

poi

considera di ordine

si puo

tetapo

d ei sione din

lii situzioiw

scopo, i termini

costanti

in modo

Infine.

eseguito

input

rappresenta.

.

di eseru . -i wc i ione

h t un

quadrato

che

queste peggiore

c,.

astratti

considerando

di a trazione

si

tale che

computazionale

esempio.

definita

comandi,

dei

comandi.

c dei costi

i loro

anche

ma

costi

dai

dipendono

di esecuzione.

to grandi

di n mo

valori

di quanto

anche

nel caso

di esecuzione

il tempo

si necessiti

che

si è osservato

inoltre.

costi

questi

operazione

tempo

del

algoritmi.

esempio

Innanzitutto

comando.

di ciascun

costo

che

iemi

eictra

cllcune

fálUL

SOllO

l effettivo

si è ignorato

a. b e c che

ulteriore

un

Sl

l4SERTIO4-SORT

procedura

reali

i costi

ignorati

Si puo

dato

inverso.

è motivata

l.aleoritninnon t escun a

libro

del

e ore. peggiore.

questa

di

caso

, i . ertion ins

iè di in p ut è già

l array

è ordinato

Nel

e del

peggiore

dell aleoritmo

migliore, input

caso

nella

peggiore.

esecuzione

di

tempo

si assumerà

Spesso

possono

dettagli

c per

dell efficienzz Analisi

tuttavia

rappresentare

per

più

di grande-a

atgoritmo

alcuni

c

scana

forni

costanti

degli come , un dato input, randomizzati

per

rimane

probabili

lo studio.

le costanti

usando

C7

.

dipendono

Genenlmente, fisso f.

detto

della

quadratica

caso

nel

di esecuzione anche

medio.

problema.

della

l analisi

semplificato

hanno Cg

di n.

quadratica

per

il tempo

grandi.

più

Calcolando

j/2.

funzione

una

si ottiene

medio,

metà

grandezza

facilitare

si sono Questo

una caso

sono r

1 e quindi

.. j

si

tempo

Mediamente

metà

dell altra

e quelli

Si supponga

quanto

1

.. j

A 1

di A l

metà

sort

C

I,

2

Cv

la ricerca

j

n-l c n

Cg

come

randonti-.-erti

algoririni

è presente

peggiore.

l insertion

sottoarray

nel

j

di A j

solo nel

particolari certo

A

piccoli

caso

equamente

siano

Ordine l ii

casi un

per

gli

più

dell input,

in alcuni

tuttavia

sono

esecuzione

medio

dimensione queste

inserire

di esecuzione

tempo

dimensione e

dove

il caso

quanto

applicare

a cui

a caso

verificare

si deve

perciò.

il risultante

1

j

cattivo

altrettanto

circa

n numeri

scelto

aver

peggiore

non

quell informazione di informazioni. alla ricerca

frequente.

essere

assenti medio

dati

caso

che

relative

applicazioni

in alcune

ed

le volte

tutte

si verificherà

esempio,

Per il

dati,

di

base

una

in

informazione

frequente.

di

abbastanza

si verifica

peggiore

particolare

di ricerca

di dati

base

caso

Il

A

...,

ricerca

de1I

per

una

di

nella

en

il caso

algoritmi.

alcuni

Per

a

pari

nella

in ordine

2, 3,

inigliore

caso

1

lineare

elemento j

nel

com

fuieioue

cioè ani

t.

che

1

espresso

è una

confrontare

1,

Cp

C

T ir

inn ordine or i

j

di esecuzionè

c n

quindi

bisogna .

un tempo

cq n

di esecuzione

dai

y

...,i, n, con 1

CI

Quest ultimo ipen

3,

chi n

C

e

9

ione

Itttrodu 8

errat..

essere

per sarà

esempio.

per

8n .

algoritmn

F.sercizi

IiCC

C le ...* * ,,i di1, tucliare

l.2-1

Si

innsidcri

segu ntc

il si

pn blcmadi

trova

prim

irclinarc i il piii

piccoli

u

numeri. letlicnla

in

meinorizz iti ùi

l

e ii

milti

anay

un il

prihn

A.

nel

modo

alimento

11

1ntrodu ione

lO

l

Capitolo

di un secondo

1.2-2

array

altro

B

elemento

di questo

di esecuzione

nel

della da

cercare

veda

la stessa

caso

Quanti che

ad sono

Quali

in notazione

peggiore

1.1-3 ,

O

uno

elementi

Impera

i sottoproblemi

problemi

è piccola

Combina

le

sono

dei

la

soluzione

sotto-

ottenere

per

del

originale.

problema

degli

qualunque

mo m erge

L algòrit

nel

funziona

esso

divide

Divide

seguente di nl2

sottosequenze

in due

da ordinare

sequenza

della

i elementi

gli

intuitivamente

divide-et-impera

tn il paradigma

stret

in modo

segue

sort

modo

nel

la risposta.

Giustificare

combinati

sono

sottoprobIemi

dei

la dimensione

direttamente.

risolti

sono

essi

a sufticienza,

soluzioni

se

Tuttavia,

ricorsivamente.

risolti

passi

di sottoproblemi.

numero

certo

in tre

si struttura

ricorsione.

l elemento

di esecuzione

i tempi

il problema

Divide

8.

ipotizzando

probabilità,

peggiore

notazione

la

l Esercizio in media.

lo

i tempi

Fornire

sort.

usando

peggiore

si

con

nel

sefection

in un

è suddiviso

di

livello

a ciascun

divide-et-impera.

Il paradigma

nel

di A. Scrivere

n elementi

gli

come

verificare

uguale,

caso

tutti

di A e si mette

elemento

piccolo

per

caso

lineare

è necessario

Quanti

e nel

cosi

e nel

ricerca

essere

possa

medio

caso

la

ne ll array

elementi

mi liore

di input

più

conosciuto

algoritmo

caso

ancora

sequenza

il secondo

di B e si continua

pseudocodice

Si consideri

si trova

poi

elementi

ciascuna. 1.2-3

Si consideri a,

a,,

...,

questo un

ed un

a,

problema.

algoritmo

Hoivier

di valutare

il problema

con

rea er,

numero

un

semplice

un

tempo

riscrivere

per

un

calcolare

si vuo1e che

algoritmo che

8n

in un

polinomio

usi

abbia

g,

un

il seguente

Dati

punto.

r coefficienti Descrivere,

per

8 n- .

Descrivere

poi

tempo metodo

regola

chiamato

... a ,x a , x

a, x ago.

uguale

lunghezza

1 è di per

nel

ordinate 1.2-4

Esprimere

la funzione

l00n--

1000n

8.

di notazione

Come

essere

può

di esecuzione

modificato, nel

caso

un

sempre,

quasi

algoritmo

per

un buon

avere

dove

Progetto

di

scoperte. Ci

molte

sono

tecniche

approccio

un

dopo nel

avere

proprio

come

tempo

di esecuzione

nel

caso

un

per

ordinato

posto,

n s esaminerh n si qquesto. paraorafn divide-et-im -impera era , , c che s sarò

In

cui

Aj

al oritmi

progettare

incrementale

elemento

singolo

per

approccio

fiore

per risulta

A 1.

il sottoarray di

progettazinite un

progettare assai

di insertion

l algoritmo

il sottoarray

producendo

impie natoz. peg

esempio

A1

si

algoritmo

usa

ordinato.

.. j

Questo conosciuto il

di ordinamento

facilmente

usand i

determinati

delle

tecniche

che

esaminate

saranno

nel

Capitnio

base

4.

e quindi

sort.

La

L approccio

i

h Moltiutili tl

uriti

.

.

- ,-

-

i

eden

i

al

Mesca A.

piii

un

p.

in

a un

tempo

come

ed

elemento

un

I n/

elementi

v

ii

u li

t

l

s

. ueilc

mitario ti

snn

rleltnitc

del piè

è pcrcin

rj contenente

tcl

suo

la

piii

mazzeno di output. le carte

si prendona

output.

di

mazzetto

si stannn

co tante,

in quantn

al pii .

i eseguiranno

cui.

fondere

scegliere

mazzetto

n passi

pituh

Lnl

merge

dell l oritmo Ap

sottoarray

ordinat6

altrimenti,

p .. r indue ottoarray 1 ..

c Aq

al

sottoprogramma

li elementi

ordina

r

per

di carte

mazzetti

dal

al

punto

cima

On,

tornando

8n.

i

A

coperte.

m i retti.

nello

in cima a quel

l Esercizio

e si desidera

rimuoverla

coperta

impie

singolo

tempo

Infatti.

due

consiste

ba e

mazzetti,

divisinnecalcolasensplicementcunindiceqchep utizionaAf conl ncnte

.

MFarr -Sow

nno.

ai due tempo

un

impiega

ha

base

passo

la procedura

procedura

pon

in cima

adesso

il cotto rray

ullora

divide-et-impera

carte

le due

la fusione

usare

Si può 1

1.3.1

solo

considerando

si

e

ciascun

Computazionalmente.

sort.

dell insertinn

un

finché

tavolo piccòla

è vuoto,

di input

mazzetto

mazzetto

dell altro

sul più

veda un

la fusione.

la carta

e deporla

carta

nuova

si

impieghi

di avne

ai due

in cima

che

maui si esegue

Il passo

output.

di

un

eenera

esercizio

come Merce

su

che

tali

dell array

rj.

procedura

ed ha in cima

si trovano

una

..

lasciato

supporre

si puo

è ordinato

che

capotta

q Ap

ausili ia

procedura

Ordinati,

rj

1 .

sottosequenze

due

una

elementi

di

indici

e Aq

elementi

degli

guazzetto

unico

si ripete

passo

rimanenti

i spesso

cosi

una

di carte,

carte

le due

tra

piccola

il

inserisce

lasciando

alternativo,

a quello

inferiore

1.

j

sort

in un

sia

pseudocodice

mazzetto

Ciascun

di

sequenza

ogni

delle

si usa

fusione

r sono

..

sottomray

immaginare

giocatore

mazzetti

i due

una

Ap

assumendo

l è il numero

p del

ha una

da ordinme

quanto

è la fissione

sort tale

p. q ed

array,

il corrente

facilmente

r-

ii

all esempio

algoritmi

in

fare

da

altro

ch è

merge

eseguire

Per A è un

dnve

sostituisce

si può

di

dell algoritmo

il corrispondereste

Benché

migliore

l.è-2 ,

1.3

ordinata.

la sequenza

la sequenza

qaando

non

caso

questo

procedura.

queste che

sottoarray

tempo

-.

-,.

r

q

in

risale

ricorsive

chiamate

combina

passo

A.

MrvcE p

1.2-á

come

produrre

per

sé ordinata.

chiave

L nperazione

3 iii termini

l

ad

lunghezza

0

i/1000

delle

il processo

che

Si noti

n-I

gax

sottosequenze

risposta

di

il polinomio .

le due

fonde

Combina

sottosequenze.

le due

sort,

il merge

ricorsivamente

usando

ordina.

Impera

z a,x .

elementi,

..

r,

r

se p

di

il passo Ap

..

e

Capitolo

13

fntrodu-ione

l

sequenza 1

2

2

ordinata

3

ricorrenza

Una

4

6

5

del

passi

6

n

dimensione per

fusione

4

2

5

l

á

2

ed

sottoproblemi del

soluzione

nella

sottoproblemi fusione

nei

il problema

dividere

//g

fusione

l/b

dimensione

ha una

quali

I

s

s

principale Cn

tempo

un

n

c

che

si dei

ciascuno Dn

tempo

un

per dei

le soluzioni

combinare

per

ricorrenza

la seguente

si ottiene

originale,

problema

CI

se si impiega

di

costante.

tempo

in a sottoproblemi.

il problema

al problema

rispetto

un

tre

problema

esempio

per

piccola.

impiega

banalmente

di suddividere

Si supponga

01.

come

è sutficientemente

problema

la risoluzione

c, allora

di un

di esecuzione

il tempo

sui

è basata

divide-et-impera

algoritmo

Tn

sia

prima.

del

se la dimensione

costante

qualche

scrive

Come

di base.

paradigma

di un

di esecuzione

il tempo

per

S AB 1

2

4

5

6

l

2

3

$a

6 Nel

. fusione --.

. fusione . g

I

,- fusione

fusioni

4

Analisi

de1

Benché

lo

iniziale

degli

non

ipotesi

Per

1

A.

f7

SU

fl

p.

di esecuzione p

Cj C

tllCll

A4c c --So

A,

MEfViE-SORT MzRc

Per

ordinare

coppie

up di

della

q,

gr.

dove

di un

sequenze

tempo 1,

q

A 2 ...

A1, una

volta

n i. una

quando elemento

lengtl A

chiama

n. Se di due,

potenza

formare

per

si

An ,

la procedura

sequenze

ordinate

la fulminee

esegue di

lunghezza

due.

di poi.

si

Quando

T ii

ordin ito

di lunghezza

i . Questo

è mostruto

processo

nella

tigura

per

JO 1 8n

$2T n/2

1.3.Z

Quando

di

Analisi

un

al

divide-et-impera

algoritmi

Nel

oritn1

contiel1P

Ull

1 Clll

llllQt

l l1COI

Nt

V

l Z

42

tCSSo.

il

suo

tempo

di

CS

CUi

10114

4

C ipitolo

risult,

si vedrà

di

n,ieliorc

Cn ed

di esecuzione

1.3.

se

n

I

.

Se

n

l

.

8n

I

i

Tn

che

sort

insertion

il

cui

su

Mcear.

di n elementi

sottoarray

e Dn

n,

tempo

del

al tertnine ne

caso

clnx

c lan

ùi

pe giore

ta

è 01.

che

per

Questa -imper i .

passo del

log,ii.

merge

Per

sort,

merge

del

l nnalisi

per

funzione

una

si stanno

somma

sort

input

suft cientettiente

i.. 8 l,- .

eiecuzionè

ricorrell/ i

e coè

tornire

lilllit tlio li

alle

pr il llioni

di

U1

algorilillo. E.3-I

ur l

ti

I

Usuncl i

mo lclh .

l .. i c inlc y

/

3.

Q

f

l

gg

C/

E

QE

esepiiri.

Ic

opct tzioni

del

n erge

è una

si ottiene

Esercizi la

che

esecuzinne.

addizionundola

8n

i l2,

8n.

è 8n

che

il tenlpo

un

quindi,

di dimensione

ciascuno

la procedura

C ii

funzioni

di i , cioè

lineare

cui

per

funzione

utta

ricorrenza

On,

addizionaiio le

addizionando

ùi che

il fatto

esaminato

tempo

un

impiega

al funzionamento

si guarda

l algoritmo

MERct-

il tempo

si Suddivide

impiegando.

dell array

di mezzo

sottoproblemi.

due al tempo

2T i l2

per

si è già

Combina

singolo

un

od

81.

D ri

ricorsivamente

si risolvono

Impera

A

cui

I

r

funzione

i quenza

da

costante,

l indice

calcola

di divisione

contribuiscono

ancàra

procedura

i

q

r

ScgUCllZa

I, len.,oth A .

SoRt A, bnttom

A. A,

l intcra

p.

sort

merge

peggioredel

di seguito.

mostrato

come

il passo

che

ricorrenza.

l elementi,

n

si hanno

quando

passo

4 si vedrà

applicato

sort

Il merge

modo.

caso

nel

di esecuzione

tempo

I 12

Divide

5

nel costante

tempo

un

del

seguente

della

soluzione

il

che

ciascun

Capitolo

nel

n/2

della

di grandezza

Tn

ragionare

può

impiega

potenza

esattamente

grandi

l ordine

Ia ricorrenza si

numeri,

sottosequenze

influenza

non

è una

che

dimensione

una

due

determinare

elemento

ifp r

abbia

produce

In tal caso,

di due.

il numero

quando

se si ipotizza

è semplificata

ricorrenza

sulla

basata

anche

correttamente

funzioni

MERATE-Soet

l analisi

è pari,

originale

di divisione questa

di

pseudocodice

elementi

problema

MERGE-SORT

sort

merge

6

2 sequenza

forma.

di questa

ordinarie

ricorrenze

risolvere

come

4 si vedrà

Capitolo

altrimenti.

Cn

Dn

T n/b

sori.iul1 arr,t

la

ione

Inlrodu

Per

abbia

mondo

Per

0000

computer.

personal

impiega

ore,

5.56

secondi

del

istruzioni

da

di un compilatore

dispone

che

computer

il personal

istruzioni/secondo

istruzioni

1g 10

10

50

impiega

computer

il personal

mentre

minuti.

16.67

secondi

1000 10

istruzioni/secondo

anche

con

veloce.

hardware

ve

cosi

calcolatori,

che

mostra

esempio

Questo

un

computer

il personal

scadente,

compilatore

un

3 volte

gira

velocemente

più

al supercalcolatore

rispetto

di

1g

50n

il supercalcolatore

di numeri

milione

istruzioni

2 10 10

un

ordinare

livello

n numeri

ordinare

per per

programma-

supercalcolatore

del

supercalcolatore

ad alto

furbo

il più

che

programmato

richiede

che

codice

un

ottenendo

efficiente,

non

del stato

sia

linguaggio

un

usando

medio

un programmatore

sort

il merge

che

sia

computer

il personal

macchina

linguaggio

nel

sort

istruzioni

2n-

richieda

si supponga

viceversa.

più

anche

si supponga

vistosa

l insertion

codificato

risuItante

il codice

ed

ancora

il

che

di numeri,

milione

mentre

al secondo.

di istruzioni

milione

di un

array

al seconda

di istruzioni

milioni un

la differenza

rendere del

100

soltanto

di eseguire

in grado

un

ordinare

debbano

algoritmi

esegua

supercalcolatore

tore

i due

che

Si supponga

15

l hardivare,

iono

rapidi

propensi

f tti

e la prestazio-

tecnologia

in

degli

tecnologia

della

campo

nel

stati

sono

stati

sono

come

Cosi

ne

come

algoritmi.

gli

dei

tecnol gie

altre

algoritmi.

Esercizi

1.4-1

input

Per

di

sort

merge

del

conveniente sort

1.4-2

per

è il piit

Qual cui

renderlo

tempn

il cui

tempo

sort

merge

piccolo

di n tale

valore

esecuzione

vin

100i -

è di

di esecuzione di

anche

iu

input

che.

iu

a ecc.

in

eseguito

sort 8n-

sort.

e merge

il

n entre

passi.

i. più

snrt

di n l insertion

valori

quali

del

lo pseudocodice

riscrivere

si potrebbe

Cnme

efticiente

Per

1gn pa si.

in 64n

eseguito

piir

l in ertion

n,

dimensione

viene

viene

sort

inscrtioh

macchina

stessa

su una

di voler confrontare

Si supponga

mer ze

piccoli

una uito

stessa piii

macchina.

un

algoritmo

di un algoritt1so

velocemente

è di

...v ....r di /.4-3 n puo

numeri esiere

f. ttn

ip tute

occorrenze

contetsg in

tempo

Oin

Ipt .

elelln

stesso

numero.

lWnstr re

che

questo

il

17

Introdu.ione

l

Capirolo

c.

d. Confronto per

fra

funzione

ogni

impieghi

problema

essere

può

di

e tempo

n

f

che

un problema

tempi

risolto

tabella

determinare

seguente,

in un tempo

che

t, assumendo

il più

grande

I algoritmo

n di

input

permuta-

qualunque

peggiore.

il

Ivtoditicare

Suggerimento

sort .

merge

tale

risolvere

per

caso

microsecondi.

st

f

r della

nel

di una

di inversioni

il numno Ignei

8n

in tempo

i elementi

di

zione

la risposta.

determini

che

algoritmo

un

Scrivere

eseeu ione

di inversioni

ed il numero

sort

insertion

dell

di esecuzione

Giustificare

di input

dell array

il tempo

tra

è la relazione

Qual

Problemi

Note

al capitolo

j secondo

minuto

mese

giorno

anno

I secolo

Vi

Hopcroft

di Aho,

quelli

Gonnet

90

Nel

1968

Knuth

un

Knuth.

la parola

utile

venga

sort

merge

Benché

merge

sort

eseguito

array

sa

nel

caso

piccoli lpi

8n

ed

sort

insertion

sort

più

in cui

snrt

le n/k

sufficientemente

di lunghezza

sort

ordinate

di fusione, di lunghezza

un

O nk .

tempo

insertion

d

/- che

l

dentro

sort

Si consideri

usa

con

ciascuna con

usare

piccoli.

l sono

standard

sottoliste,

dall insertion

una

il mer

modifica

di tali

.

deve

.

essere

i- nel

e

c

Shell dell

essere

possono

le sottoliste

essere

possono

fuse

in tempo

8n

sempre

1g nl4 ,

I

he

Dato

l alo

sort oritmo

viene

modificato

modificato

l al oritmo nellh

Come.

eseguito,

nel

caso

in un tempo

peggiore.

8 n/-

nlg

Sia

ha lo stesso dovrebbe

pratica,

di esecuzione

tempo

essere

as

il valore

scelto

st

t

d

l n erge

sort

staisdard

di /

Inversioni

1-3 A1

.

a.

Elena re

b.

Qu..ilc le

n

un

array

inversione

chiamata

ii versioni

di

n numeri

dis inti.

Se

i

j

e Ai

Aj.

allora

la

cop

i

i.

j

di A.

le cir que urr..ty

J. von

con

inversinni elementi

di questo

dell urruy presi

array

d.tll iniiems

2.

3. 8, 6, l,

...,

l. i a piir

inver.,ioni.

Qu nte

s,n,o

è

con

degli

progettazione

algoritmi. The

di

studio

moderno

degli

tutta

esecuzione

la

of

comunque.

libro.

matematico

un

Art algoritmi

serie.

di questo

e

25

24,

generale

lo

avviò

e Brown

Purdom In Bentley

il titolo

no,ne

libro

da

è descritto

il calcolatore

D.

L.

algoritmo

Secondo de

persiunn

di due

dei pionieri EDV

AC.

di

varianti Shell,

che

sort.

usa

pacchi

che cita di schede

più

su

uno di

dei

il suo come

passi.

sull algoritmo è lo

di queste

importante sottosequenze

periodiche

veloce. meccanico,

un selezionatore perforate abbia

sia relazioni

ordinamento

di Knuth

la più sort

insertion

delle

conteggin

del

discussione

La

dell algoritmo.

di ordinamento

dell informatic i,

esatta

algoritmi

l uso

di

algoritmi

molti

degli

ricorsivi.

algoritmi

l analisi

include

anche

diffusero

degli

l insertion

da Knutl.,

anche

la fusione uno

per

asintotica

l analisi Essi

enciclopedico 381

diverse

un

di eseguire

per

nel

come

di esecuzione

trattato pagina

fatta

presentato

sort

prestazioni

comprende

ottenendo

Neumann,

i

peggiore.

I

d.

sort, input

Il merge

considerando

nella

pratici

di

e Sahni

201 .

argomenti degli molti -al-Khowarizmi .

relative.

il tempo un

algoritmi

è stata sort

di insertion

determinato.

gg iore

che

quella

del

per

dal

mostrarono

4 tra

fornisce

123

capace che

gVJostrare il caso

c.

piccoli

sotteliste

ha senso

di n. Quindi

diventano

il meccanismo

che

iVIostrare ordinute

b.

n/k

usando

combinate a.

valori

per

i sottoproblemi

quando

merge

veloce

riferimento

descrivere

per

Knuth confronto

lo rendono

tèmpo

del

deriva

e Ullman

di confronto

ricorrenza tempo

in

peggiore

121,

che

12 .

122,

sull analisi

importante .algoritmo

Hopcroft

strumento nel

pubblicò

più

Wil

175

volumi

tre

di

inclusi

Horowitz

secolo. Aho.

sort

ed

aspetti

il primo

1 attenzione

rimane

167

algoritmi.

33 146

145,

Mehlborn 144,

Sedgewick

degli

e Bratley

Brassard

14

142

degli

alcuni

discussi

sono

richiamando

IX

Deo

Programming

Computer

4,

Nieverge1te

Reingold,

164

B aa

5

Manber

123

122,

Knuth 121,

105

1nsertion

e Ullman

l argomento

in generale

affrontano

che

libri

buoni

molti

sono

scritto

in un solo nel

1945

paleso.

inventato

nel

1938.

Sembra

he

anche

un programma

di merge

Eondamenti

di matematica

Introduzione

L

analisi

di

essi

degli

soluzione vuoi

algoritmi

sono

essere

introduzione

è organizzata ad

alcuni

Si suggerisce

al

volta.

Conviene,

argomenti parte

degli

usati

Il Capitolo

8

sulla sarà

nel

Il Capitolo

si possono

insieme

per

I metodi analizzare

tipo

sione

per

sono

per

risolvere

proh hilitè.

La metodo.

degli

lettnie

La

che

nsa

una

vedere

per

riguardano

che

in una

matematici parte

questa

per

gli

algoritmi.

gli

comprensione

migliore

del

capitolo

si che

risulti

l. Il resto a far

e mira

esempio

un

asintotiche,

notazioni

per

la valutazione

degli

algoritmi.

e la liinitazione se

Anche

libro

molte

delle

quali

è essenzialmente la notazione

chiara

delle

sommatorie,

delle

formule

utile

sarh

di matematica,

ior

ricorrenze,

delle

sort,

di questo

alai

come

algoritmi.

Capitolo

in un qualsiasi

ri oluzione

merge

successiva

analizzare

per

e talvolta

che di

raccolte

averle

si

questo tutte

successivi.

. che si usa divide-et-impera

i iltato

analisi

trovare

la

riferimento

matite

mate

libro

libro.

i metodi

nell

riferimenti

il

correttezza

del

3 riguarda

capitolo

nel

si useranno

la

per del

parte

riferimento

di

ai capitoli

degli

di diverse

incontrata

di nozioni

resto

spesso

presentano

generale

si è già

Questa

fondamenti

questi

i capitoli

come

l analisi

le definizioni

che

tutti

prima

direttamente

per

di

quelli

rilevanti.

a leggere

utilizzata

libro

che

testo

un

come

novità.

strumenti

come

sfogliare

procedere

presentazione

usata

luogo

provare

essere

nel

2 presenta

è la notazione

che

sempre

può

strumenti

basato

e poi

e degli

metodi

vere

delle

particolarmente

di non piuttosto,

contenuti

Questa

dei in primo

lettore

al lettore

altri,

ma

alcuni

matematici

strumenti

superiori.

scuole

risultare

argomenti

di numerosi

l impiego delle

potrebbero un compendio

proprio essa

richiede l algebra

come

di ricorrenze.

algoritmi

sola

spesso

semplici

che

peri

parte

parte può

ono

che

4.,

Capitolo che

le ricorrenze

maggior

argnnsenti

abbia

nel

raccolti

tecnica

capitolo

essere

saltata

è dedicata senza

alcun

Capitolo è

potente

analizz.,mdo

si trovano

del

nel

usate

state una

alIa danno

gli

il

l per .metodo del

algoritn1i

di

climnstrazione per

la compren-

propositi.



seguito

Jci li

litri

li iritnqi

c rei

gli

su

qùcilo

ar omenti.

ucsti

libro

non

richiecle

il calcol

delle

per

probabilità

essere

possono l analisi essere

la loro

analisi,

saltati

anche

probabilistica un

comodo

che

quindi, senzà si incontrerà

ad

una

ifagliarli. in

prima

lettura,

Tuttavia, seguito,

gli se

il Capitolo

si

ultimi vuole

paragrafi comprendere

6 è organizzato

del

capitolo

da

funzioni

delle

di grandezza

Ordine

meglio in modo

riferimento.

di

L ordine

una

fornisce

semplice

sufficientemente

grande.

peggiore,

Sebbene

come

si è fatto

per

lo

grandezza caso

In tal

de1

tempo

ciò

che

efficiente

costituisce

Il prossimo

usate

nel

O

notazione

tipi

quindi

saranno

di

panoramica

degli

algoritmi.

al crescere

asintoticamente veramente

algoritmi. . di

asintotica convenzioni

alcune

sul

più piccoli.

degli

l analisi notazione

presentate

una

di

algoritmi.

algoritmo

quelli

semplificare

per

nell analisi

si presentano

tranne

di alcuni

fornita

sarh

e infine

libro

di solito

che

funzioni

nella

un esempio

visto

si è già

standard

degli

sia

che

algoritmo

input

gli

la detmizione

con

di un

di esecuzione un

solito, tutti

per

metodi

alcuni

comincia

paragrafo

notazionali

mig1iore

la scelta fornisee

capitolo

Di

sano

l ordine

solo

rilevante asintotica

Inefficienza

il tempo

cresce

dell input.

le

grandi,

di esecuzione

tempo

rendere

da

grandi studiando

cos

solito

sufficientemente

dell input.

stessa

sufficientemente

è come

interessa

della

per

è

algoritmo.

è di

non

precisione input

caso

peggiore

di un

di esecuzione

dell esatto

basso

più

caso

nel

di esecuzione

l, l estrema infatti

diventa nel

1gn

8n

di

anche

n dell input

esecuzione

esatto

il tempo

si sta

di

tempo tempo

dimensione

esecuzione,

dimensione

all infinito

Questo

di

il cui

calcolo

del

della

input

si considerano

Quando

sort,

di ordine

effetti

agli

rispetto

trascurabili

il suo

1.

Capitolo

e consente

algoritmo

la dimensione

Quando

con

Capitolo

nel

sforzo

e i termini

moltiplicative

costanti

sort

l insertion

da compensare

importante

sort,

determinare

talvolta

si possa

8 n- .

alternativi.

merge

dell insertion

migliore

risulta

di un

nel

definito

algoritmo,

un

dell efticienza

di algoritmi il

di

esecuzione

di

tempo

caratterizzazione

le prestazioni

confrontare

cui

del

grandezza

delle

comportamento

I

2.1

asintotica

Notazione

Le

in

pe

t ciltmente dei

nunteri

dCl

llllice

per di

termini

estesa

al

naturali.

1I

l1OLQ/lotle

il ciii

comnde di

definita

iore.

È

import uste

Jillllutli ,I

dnminio

dei

asintnticn

di

esecuzione

è l insieme

dei

numeri

la

descrivere

per

abolito

domini i

tempo

il

descrivere

funzioni

sono

notazioni

Queste caio

usate

notazioni

detmite

u

solo

numeri perù

eli

b lie

diniensioni

o.

re ili comprendere

c

illltoclllcc

T si

funzione intere

dell

di

ristretta

signiftcato

I11wl1IV

N

0,

di

esecuzione

preciso

tlcilili

cc lllulli

I.

2....

. nel

t . CDlllllllCjLIC

Talvolt l

input.

lteris itivantente, il

ten po

del

sono

algoritmo

un

naturali

n un della

Ucl

ottoin ieine nutazione

illlpfilpl I.

it1

22

Capitolo

2

Notazione

formale

definizione

O

le costanti Nel

Ca p itolo

insertion Data

1 ssi è determinato d

sort una

è Tn

8 n- .

funzione

Ogn

esistono

Una

funzione

ha

costanti

caso

il seguente

c,,

positive c, g n

all insieme

nel

l insieme

Ogn

fn

gn

appartiene

n

f

con

tre

0 c,

di esecuzione

notazione

Questa

si denota

gn,

n

f

il tempo

che

di finn -ioni

c,

e n, tali

1

3

2

Pt

le costanti

ositive

c, e c, tali

oppure

scrive

si

denotare

c

vedrà

che

La

figura

ha

i suoi

2.1 a

8gn .

La

una

rappresentazione

c g

.. , n altre

cioè

che

asintoticamente

definite positiva Nel

Capitolo

ordine

uguaglianza

delle

funzioni

f

zione Si assumerà

si

Si

la cosa

ma

può

ogni vale

funzione anche

stretto

- n--3n

non usata

dentro

trascurabili

la notazione

per

le altre

notazioni

una

funzione

che

8

basso

ed

ignorare a giustificare

b brevemente

di

della

notazione

il coefficiente questa

O che

l

del

principale soluzione

co

intuitiva

termine

di

usando

la

termine

cg n

z

8gn

fn

It

V

0g

fl b

a

. no

f

che

come

tendendo

all

notazione

i C e al/a

o fornis .e

f

sl

tr ,

se llf re

destrosi /intime

sn/ In

di

li

i/,

sn,erir,re

ri t r ill idr

er

limite

un

u,

O g itl

Il

c I, Il

può

positiva sono

essi

perché

a

è sutficiente

alto

più

Il

le

che

consente

del

coefficiente per

un

c, dove

a,

c, e c, solo

cambia

esso

del

coefficiente

del

grande,

più

in quanto

o Ol.

8

è un pol inomio Quest

è un uso

ultima

0. si può

o una

coitznte

il Problema

esprimere

qualunque

è chiaro

non

poiché

rispetto

costante

funzione

pn

quale

2-1 . funzione stia

variabile

Si userà

importanza .

di minore

comunque

veda

si

che

verificare polinomio

qualunque

O ir

di grado

può

costanti

le

prendono

lettore

per

generale

notazioite,

improprio.

o una

indicare

In

si

cosa, Il

si ha p n

0.

e is,

costanti

più

la costante

ed ignorando

basso

stessa

la c /a .

n.

n

ogni

per

11

di ordine

mostrare

bn

an-

n

f

quadratica

i termini

2mzx jb /ei ,

costante

infinito. per

stretto

soddisfatte.

siano

8

funzione

generica

per

n

C

C

la

spesso variabile.

a qualche

O

. sl

8

notazione

dif

Yl/rrre

una

1e a, snno

81

per

non

che

c

Lu ta

ed

qualunque

costante

Si supponga c,16,

piccolo

più

leggermente

ignorato

essere

Formalmente,

l ll

dove

Notazione

c

dalla costanti

asintoticamente

di ordine

leggermente

notazinne

0. Tralasciando

ed a

7nl4

c,

ai ,

Dato

n

ed

al coefficiente.

si consideri

O ir .

Qll

C I1

g,

PI

1/2

richiederà

n

asintotico

termine

del

valore

un della

analogamente

uguale

costanti

fn a/4,

c,

c gn

per

O n- .

Allora

n.

funzione

una limite

del

valore

un

di

definizione

può

esempio

ha

si

alto

di

piccola

e a c di

alto

più

costante

fattore

b e c sono

f

c,

le costanti,

bassa.

più a c,

nella

più

Come

fn

n

ordine

più

frazione

ordine

l assegnamento

Quindi

siastrettamente

cg n

c, g n

n

di

i termini

dominare

asintotiche

disuguaglianze informale

valida

c, è costante.

che

dato

basso

determinazione

Una

n grande.

per

termine nozione

1,

resa

dipendono

solito

6n e

che ii

ogni

per

grancle,

ordine

di nella

ignorati

essere

possono a. alt

n comunque

per

i termini

Intuitivamente, rande.

ne atii

di

a 8 n-

1/14,

costanti

queste

verificare

per c,ri-

6n

che

n, tali

c, ed

modo

in alcun

valere

anche

formale

la definizione esistano

che

assurdo

asintoticamente

n è sufficientemente

c, scelte

altre

esistono

essere

può

scegliendo

che

Si noti

appartenente

funzione

parte

Quindi,

Certamente esista.

scelta

qualche

diversa

una

usare

Si può a

nn.

per f

è che

8 n- .

3n

che- n--

verificare

importante

1/14.

c,

destra

di n

valore

qualunque

per

della

la disuguaglianza

7, scegliendo

di n

valida

resa

essere

puo

diverse.

c g nn

sia

asintoticamente

n

f

grandi.

una più

che

dove

destra

parte

Analogamente,

valore

7, si puo

n,

per ma

è uu,auale

fn

asintotico

di 8 g n

n

a sititotieamentepositiva

Si die

i grado

che

ipotesi

f

lignite

le volte

essere

percio

questa

è un

gn membro tutte

deve

gn

negativa

1 si è introdotta ermini

che ogni

negativa

non

e gn.

n

f

ilvaloredif n coincideositrovasoprac ,, n llp la funzione ogni

che

n sufficientemente

gli

erande. .

ppiù

sia

capitolo.

tutti

i

s

non

in questo per

richiede

è vuoto.

gn

di

confusionario,

parole,per

. Si dice

co costante.

f, n

. 1st -

sia

fattore di O g n

l3,. consegue

segno

,,

di un

negativo,

intuitiva

d adestradillp sono

definizione

non

del

alI inizio,

almeno

funzione

fornisce

sitro

a meno

gn

sembrare,

può

vantaggi.

O g n .Perognivaloredinall e c ih e

improprio

uso

Questo

insiemistica,

1/2.

c

qualunque

per

l appartenenza

ha

n- si

per

della

disuguaglianza

La

scegliendo fn

n

n . Dividendo

n

che

tali

n,

determinare

si devono

farquesto

CI .

se esistono

8gn

-2 c

3n

ogni

per

che

n

perognin

-2

c n-

significato.

l -n

c ed

c,,

positive

dell algoritmo

peggiore

Per

O ir .

3n

ir-

che

mostrare

per

ehrica.

c ciiii

si

superiore,

asintotico di

l insieme

ii

una

asintoticamenie

limit

pcliricce

usa

la

not

ftinzioisi

hillvrare

quvit

uiii

ala

f rn ione rione

inq iopriii.

O.

Per

sopra una

e da funzione

sotto. dt

si

Quando gn.

si

denota

ha

solo con

Capitakr

2 di

Ordine

z stazione

costante

O si usa

La

i valori

figura

di a alla

Per

indicare

della

che

dimostrazione ogni

an

imiti

che

è in

visto

gih

è un

g ahi

limite

nella

annidata

interno

più

Poiché

O ii -

al più

la notazione di un

esecuzione

dell

di insertion

sort

Viceversa,

algoritmo

algoritmo nel

che

8 n-

del

l input

per

un

dato

n.

peggiore,

tempo

per Per

anche

ordinato,

di

il costo

il limite

di

del

entrambi

la si usa

del

insertion

sort

n, e il ciclo

interno

nel

il tempo

esecuzione

reale

dal

il tempo

input

n scelto

ogni

per

valore

di n. il tempo

di esecuzione

nel

input.

Yotaziene

p er

fano

stretti

partendo

che

che

implica

nel

di

tempo

di

il tempo

anche

esecuzione

di il

il tempo

limitare

per

si limita

il tempo

esempio

Qn

la si usa

quando implicazione

per

caso

esecuzione

ort

on

tra Q

compreso

è perciò

funzione

una

di n ed

lineare

cade

. in quanto

e On di n.

quadratica

Inoltre,

limiti

questi

ne dell insertion

caso

in tempo sort

un input

esiste

in quanto

per

un tempo

impiega

l algoritmo

il quale

8n.

moltiplicata

costante

per

n sufficientemente

con

gn,

grande.

è O n- . input

particolare

è Qi- .

peggiore

non

su quell insieme

è CP iè .

asintoticamente

st ato

di

di

Si

di dimensione

è

i

Q

di

è

visto

già

scrivere

li

11

la

questo

di

tipo

, .

p otrebbe

O ll .

tormu1e.

CllC1 álle,

Ill

l

.,

.

I

t nmlile

di

O n- .

si èscrittn

interpretare

no

all inter ri

O.

notazione

Cole

8 .

2n-

usata

essere

possa

introdune

nell l

3n

2n-

asintnticz

notazione

esempio,

per

anche

la

come

matematiche,

equazioni

nelle

asintotica

Notazione

input

per

caine

il tempo

peggiore

di insertion

dipende

2.1

stretti. limiti

limiti

ottenere

il Teorema

di esecuzione

caso

eseguito

di esecuzione

Qn-

Per

è

sort

del l inserti

funzione

una

8 tè

c

è Qn.

sort

tra

c

bn

inferiore,

limite

arbitrari.

input

insertion

di esecuzione

Il tempo

bn

an-

dimostrare

algoritmo.

di un

su

air

che

usare

che

per

un

Q descrive

dell algoritmo

migliore

che

immediatamente

inferiori.

migliore

caso

dell algoritmo

esecuzione

una

che

nel

ovunque

su qualunque

sort

Viene

anche

tempo

di esecuzione

l insertion

più

lo si usa ed

superiori

la notazione

che

dell insertiois

ciclo

di i e j.

si limita O ,è

la

per

I, si ha un

limitare

per

e

Ogn

n

, la dimostrazione

asintoticamente

limiti

dai

generalmente asintotici

limiti

teorem 0. implica

a

piuttosto

pratica,

inferiori

e

superiori

di esecuzione

al più

di valori

implicazione

al tempo

da

In

On-.

quest esempio,

algoritmo

Capitolo

c

bn

asintotici

stretti

esempio,

per del

se f

se e solo

8 g ir

n

f

di questo

a. b e e, con

costante

qualunque

per

e an-

il limite

un

e gn,

n

f

di applicazione

esempio

Dato

sort

n- coppie quando

cui

t 8.

quanto

di

.1-5 .

l Esercizio

Qgn .

Come

per

asintoticamente

algoritmo

peggiore

delle

scrivere,

afferman-

esecuzione

i e j valgono

di esecuzione

dire

tempo

caso

indici

superiore,

arbitrari.

à già

il

limite

caso

improprio

dell

ognuna

per

di

di insertion

nel gli

si applic

peggiore

è un uso

quanto,

un

su input

caso

quando

Tecnicamente,

volta

nel

il tempo

è semplice

adesso.

fino

viste

sono

i

tutti

per cg n .

sopra

l.

informalme

affermare

di funzioni

coppia

ogni

n

f

funzione

la notazione

e limiti

si

2.1 c

25

2.1

Teorema Per

algoritmi.

gli

complessiva

b

teorema

importante

si

che veda

figura o si trova

coincide

n

f

la

implica

semplicemente

senza

forte

più

ed i ,

si possa

descrivere

si sta

n

qualunque a

usando

superiori

dell algoritmo

costante ,

una

di f

che c

il seguente

dimostrare

funzione

asintotiche

notazioni

nella

è mostrato

Q

notazione della

il valore

delle

definizioni

Dalle

la

dietro

sta

di n

destra

funzioni

che

Di conseguenza

che

per

definiti

Ogn ,

n

descrivere

di esecuzione

O descrive

il limite

1 si è visto

tempo

strano

talvolta qui

asintotici

struttura

da 0 1

è eseguito

di esecuzione

in

del

superiormente

trovare

riguardante

spesso

la

stati

asintotico

letteratura

O si può

doppiamente

è limitato

ve f

notare

gn. si noti

0, è in 8 tè

di n alla

valori

tutti

per

notazione

a

prendendo

O pub

sono

tra limiti

struttura

superiore

che

è una

Ogn .

c, dove

sòtto

Ogn

n

f

c

la pena

O è usata

si seri

analizzando

limite

la notazione

quelli

semplicemente ciclica

Vale

O

fattore

che

intuitivo

Il concetto di un

la notazione

8

8gn bn

p

o si trova

la notazione

verificabile

la notazione

cioè

standard

O ir .

dietro

si scrive

an -

f

a meno

coincide

n

insiemi

è facilmente

la distinzione

la notazione

in quanto degli

QJ

funzione

sta

di O g n ,

quadratica

quando

funzione

diventata

Usando

il che

comunque,

siastretto

è ormai

Ogn

una

che f

Q

p/f

ad

funzione

è membro

la teoria

stretti,

qualche

superiore

della

n

In letteratura,

libro.

intuitivo

quadratica

avesse

asintoticamente

In questo do

che

n On-.

il concetto

funzione

funzione

lettore

superiore

con

qualunque

Qg /f

gf

limite

n

f

che f dirlo

b è in O n- ,

Qualche esernpie.

mostra

funzione

per

che

che

liiieare

una

O

un

di llp il valore

implica

nutazione

anche

2.1 b

che

dare

per

destra

Ogn

n

f

istonocedn tali

Y

La

delle

grandezza

COlllCLlll

l

1

gll llCI1C

La. .......

Cosi

f

come

insieme

Qgn

la

di

notazione

O

f irnisce

un

limite

asintotico

superiore

d

una

funzione.

funzioni

fn

esistonu

c ed

n

t li

che

0

5

gn

f

n

per

o

ni

zr

n .

la

notazione

8 .

Ill

cot

s

l11Cl C

r èlt t

C llcl

i

.. C Lio

1.

ll

C lM .

tjUCsl

i

CllC

f

pC

l 1IY

i

8n.

.Ill

..

.

..

lli pl of l ll

st Ila

CSplViso

Coli

Il

1 iCAITC11/, I

w

Cli

ciecllXiol1C

Elci

di

Ordine



delle

grande--a

27

funzioni

Z

r

solo

igwressati

-.omero

,.-

di

di ordine

daI

anonime

funzioni

basso

non

è di

è sottinteso

alcuna

che

tutti

siano

Per

è sottinteso

che

sia

uguale

al numero

m

di Per

nell espressione

per

c

fn o

01

8n

02

-. rpretano

funzione

una

...

On,

asintotica

che

di i . Questa

in realtà

appare

sul

ha

non

lato

sinistro

espressione una

chiara

di un

non

quindi

è

interpretazione.

equazione,

di

questo

tipo

usando

su fa

des1ra

del

la

seguente

regola

come

jere

-.-

,--

ioni

le fun

un equazione

pi

, pjg

anonime

di

relazioni

tipo

questo 2n

I

iiidipendentenrente

segno

tlguale

di dettaglio essere

possono

,,

valida

del

grossolano

utilizzate

insieme

l equa

lato

a catena

0

cg n

costante n

f n-12

ma

ogni

per

n

il limite

all

infinito.

come

attraverso

la

regola

descritta

8 ir taleche2n-

che

2

3n

1

3n

O n- ,

il che

è ciò

cioè

esiste

.

D

n

f

gn

implica

che

arbitrariamente

diventa

n

f

rispetto

grande

per

n che

a g

tende

sopra.

La

funzioni

tra

Confronto

in

delle

notazioni separatamente

che

0 tale

n

costante

12p

relazione

La

W cù iè .

una

0, esiste

c

positiva

l insieme

come

di g di n

piccolo

omega

sinistro.

proprietà

asintotiche.

che

valide

sono

reali

numeri

dei

relazionali

siano

e gn

n

Nel

seguito

si assumerà

gn

8 lt n

implicatlo

ft

gn

Ohn

implicano

fn

Qhn

implicano

fn

gn

ghn

implicano

fn

gn

whn

implicano

fn

f

che

la catena

di

anche

tre

i confronti

per

asintoticamente

positive.

Transitività

1 2rt f n

o

S r taxione

se

f

s

e

f

$

e

fn

Qgn

e

fn

ogn

e

f

s

e

fornisce.

intuitivamepte

qualunque

ione.

.

implica

per

co s ,

t l2

ofn .

e

co g n

f

Molte

interprefazione

questa

-sezioni

re idere

per

più

,

j ghe

n

esempio,

da

modo

Un

stretto.

gn

livello

ogni equazione interpretare qui - aequ zionedicechevièqualchefunzionef n c

se g n

in

8n

8 nq,

un

fornisce

se e solo si definisce

f

lim .

gn

Formalmente

Per

equazioni

m

Co g n

.

e n-

j

anonima

la notazione

casi,

cuni

--

di

qpsa

q -.-.

funzione

denotare

O.

notazione

alla

asintoticamente

è

definir1a

Q singola

co per

la notazione

o sta

la notazione non

inferiore

limite

un

come

Q

notazione

alla

co sta

la notazione

analogia,

Si usa lp i ,

una

di

definizione

inclusi Notazione

esempio,

la

negative.

non

asintoticamente

ad essere

anonime

o

notazione

della

definizione

come

limite

questo

le funzioni

timita

libro

questo

importanza

On.

espressione

appare.

Tn,

di

più

termine

in un

asintotica

notazione

la

he

-

asintotico

i termini

denotata

anonima

funzione

comportamento

tutti

esattamente

rq e

,

al

usano

autori

Alcuni

On.

Zen/2

y-, ,

gn

8hn , Ohn , .

Qhn ohn ,

.

mhn

Riflessività f j j J fg e c gf

q.

la notazione

jgjggi

formalmente

pf j

p -q

superiore

asintotico

f

riempio,

n

n

o per

dalla

denotare

ogn qualunque

0

f

u

un o

per

limite

costante per

O

superiore

i

n,

asintoticamente

stretto

ma

2n

f

fn non

è asintoticamente

stretto.

Si

l insieme c

positiva ogni

essere

puo

che

di g di n

piccolo

cg n

notazione

f

f

0, esiste

una

costante

n

Q tale

che

Simmetria

.

Oedella

notazione

o sono

simili

I

I he

1 d ft

p

I ipl.

O

L g ll

pel

II

Clll.

.r. tt

solo

ce

8f

gn

.

fn

Ogn ogn

seesolose sec

Dfn ,

gn solo

se

.

wfn

gn

ll. llUv

cioè, ..malo, 0,1J ia álll

lim n-

e

trasposta

Simmetria

fn C

fn

se

8gn

A o n- .

fn

ail inln ito

,

0 f ai ,

f

fn

on-, dellanotazione

q t nizioni

fornito

0.

.l

tra

il conl ronto

asintotico .

di

dur

, fuiui, ni

fe

q cd

il conl t.onto

. eli

due

nu,neri.

reo

.Il

i,t

eC/7. r.,

di

Ordine

Ogn

a

fn

Qgn

a b,

fn

8gn

a

n

f

f f

b,

2.2

b,

n

ogn

a

b,

sr

co g n

a

b.

Questo

tra

e delle

l uso

inoltre

i1lustra

esse

funzioni

alcune

su

panoramica

le relazioni

analizza

ed

standard

una

fornisce

paragrafo

29

funzioni

comuni

e funzioni

standard

Notazioni

delle

grandezza

notazioni

matematiche

notazioni

asintotiche.

Monotonicità Una

dei

proprietà

numeri

reali

che

non

pern

essere

può

trasferita

alla

asintotica

notazione

è la seguente funzione

Una

Tricotomia

Per

seguenti

espressioni

Sebbene

qualunque

notazioni n

a

coppia

di

b, a

b, a

coppia

asintoticamente valga

ogni

di

né f

né f

tra

oscilla

non

per

n

valere

deve

esattamente

una

delle

essere

una

confrontata,

coppia

Qgn .

Per

essere

confrontate

possono

0 e 2, assumendo

tutte

e gn,

n

f le

esempio

i valori

tutti

non

di fu t.-ioni

funzioni

le funzioni

n e n-,

che usando

base

della

funzioni

dell interuallo.

notazione

non

asintoticamente

8,

dimostrare

che

negative.

max f

n,

Usando f

gn

la definizione n

Mostrare

6n

Spiegare

perché

O n-

2.1-4

di

.

che

coppia

di costanti

reali

a e b,

dove

l

Per

x

ixj

Il

tempo

di esecuzione

del l algoritmo

È vero

2

che

ii

in

implica

A è almeno

il più

intero

grande

o uguale

maggiore

o uguale

minore

I x l si

a x con

a x con Lx J tetto di

legga

n,

intero

a e b interi,

0,

a c 0 e h

con

2.3

r s r

LL I J

- .4

.

LI J

11

base

funzioni

Le

02

se

x l.

x

di significato.

2

n

n,

in/2J qualunque

rr

l affermazione

f

n,

intero

qualunque

e per

0,

b

funzione decrescente

strettamente

x

i reali

tutti

Per

gn .

.

è priva

È vero

ogni

per

a

n

2.1-3

che

è

reale x, si denota numem un qualunque base intero e il più piccolo di x legga

fn/2i 2.I-2

Una

fn.

fm ed

n

strettamente

e tetto

x e gn

f

è

le

si

n

m

è

analogamente

fn

di

dell esponente

x

f

f

n

fn.

fm

Esercizi

Siano

implica

n

m

impiica

f

non

Dato

2.1-1

n

n

se

Base

il valore

in quanto

sono

essere

può

se

decrescente

monotona crescente

possa

Cioè,

Ogn

n

asintotiche,

a e b,

b.

numeri

confrontabili.

reali

numeri

implica

n

m

se

crescente

monotona

è

n

f

monotone

sono

e tetto

crescenti.

02

Polinomi 2.1-5

2.1-6

Dimostrare

il Teorema

Dimostrare tempo caso

che

2. l.

il tempo

di esecuzione migliore

2.E-7

Dimostrare

2,1-8

Si

Dato

di esecuzione

nel

caso

di im algoritmo è Ogn

peggiore

è 8gn

e il suo

se e solo

se il suo

di esecuzione

tempo

p r

dove

o g ir

n

co

i

g it

l insienle

in

cl, un polinomio

positivo

n di gradn

d è una

funzione

, , n.

n .

O, i,

si n

notazione

al

all intinito denota

con

f

n,

0

/pii.

O g n,

m

due di

l in ieme tre

c n,

di tassi

m

esiitonn

m

c so con

a.

costanti

le

a,

a,....,

sono

del

i coeffieie rti

polinomio

e

a,

a

vuoto.

di

costanti

ni

per

n

parametri crescita

che

nt

Per

possono una

data

tendere a dire

c.

i

e

i

e

e nr

u

tali

che

le

corrispondenti

dchnirioni

per

Q g n.

f

n

Oi

per

I-

costante

qualche

ci

veda

Esponenziali

m . Per

Dare

che

funrions

funzioni

positive o ni

ed

cliversi.

O g ll.

111 .

forma

a,n , g

2.2-2 . la

estendere

può

indipeisdentensente

della

pn

nel

è Qgn .

che

intero

un

og li

li.lie

ct W 0,

In

cd

II.

Si

ll lini

li

se

LleI1ti

idelllit l

l Esercizio

0.

Un

polinomio

è

30

2

Capitolo

a

importante

Un

l

solo

applicai o a,

a

I- .

1g n

1/a,

a

convenzionale

terminare

successi

0 e b

l, la funzione

n

Per

tutti

Per

a

i reali

o nefla

adottata cosi

è che

I- e non

Ign

crescente.

l e c w 1, vale

b c

si

1ogarit rriche

le fim ioiii

k significherà

Ign

è strettamente

log n

0 e n, purché

0, c

0, b

sarh

formella.

che

notazione al

che

mll

a

a aman

mn

log,

log ab loga

Per

n e a

ogni

si assumerà

tutte

per

è monotona

a

sarà

a n. Quando

rispetto

crescente

a

1Qgb

ed esponenziali

di polinomi

le costanti

a e b tali

reali

essere

può

che

in relazione

messo

con

il seguente

Q

n

concludere

si pub

Q

II

10

log a

Dato esponenziale

funzione

qualunque

velocemente

più

di qualunque

con

positiva

base

cambia

si sia

polinomio.

denotare

e per

la base

2.71828...

funzione

della

naturale.

logaritmo

si ha per

ogni

in due

reale,v X

X

, 2

e 1x

dove x,

parti

V i è un , 3

denota

si ha

,, t-

2.6

definita

fattoriale

nel

di questo

seguito

paragrafo.

Per

ogni

del

problema.

2 perché

sia

in serie

sviluppo

semplice

notazione

O. Gli

a1goritmi

e strutture

x

1n 1

dati

x-

xe

2

3

l x

prevedono

che

la base

la dii

isione

l

. 5

4

disuguag ianze

le seguenti

anche

1 si hanno

Per.r

la disuguaglianza X

1n 1 x

vale

uguaglianza l

e

.r

solo

0. Quando

quando.r

l, abbiamo

x

l approssimazione

dove

2.10

x,

x

Quando e-

con

di e

0, l approssimazione

l .v

è abbastanza

che

questa

x

8x

bunna

di n e 2

equazione,

che

per

è usata

asintotica

lanotazione m

.

Si h che

per

perdescrivere ogni

x

il comportamento

al limite

Da .

questo

limite

per f

0.

x

e dei

polinomi

polilogaritmi

se f

limita1a

è poli1ogarifsnicameitte

n

seguenti

uservnno

l

n

1

ln ii

lo

,t. 2.5

Si

può

1p

di a ottenendo

n 0.

co

1

si può

che

concludere

più

a

costante

qualunque

0.

Di

di qualunque

velocemente

,

conseguenza. funzione

qualunque

funzione

polinomiale

polilo vritmica.

nntzzioni Il

logaritmo

binario .

n

lo aritmo

n ilur tle ,

Lu

n

notaziotti.

si

n

e

leg

futtoriale

.,i l

11

ÈICVR/11CI110

pOlCI17ál .

I l i

1

tell Equazione

sostituendo

Fattoriali

11

n

on

cresce

Si

1g

, lim n

per

le

dei

al posto

pa E

oc

Ig n

Logaritmi

n

1g lim n

e m

solo

funzione

.

0 piuttosto

per.r

una

la crescita

pnsto 1

vale

l uguaglianza dice

Si

2.8

x- .

correlare

I

non

lx

l

g

del

quando

x

x

x

1n 1 x

p

dove

I

il valore Ign

trovàno

informàtici

x

quando

un altra

la notazione

spesso

nella

per

ad

costante

una

si userà

molti

come

costanti,

reale

e I x,

In

i logaritmi

da

logaritmn

costante.

fattore

X

g

la funzione

per

un

di

base un

per

ai fattori

interessati

naturale

più Usando

solo

di 1 cresce

maggiore

strettamente

la

cambiando

che

logaritmo Quindi,

2.9

che

.

oa

Q,

log,b

a

cui

b

10gb

10gb

da

a

log,

a i

2.5

0 .

i

log,

1

n lirn

b,

Q,

Q

l,

a

log,

a

Il 10gb

conveniente,

l.

di crescita

Il tasso fatto

I, la funzione

0o

a

btoln

Ig l

n

composizione .

n.

n

I

se

n

sc

n

0. 0.

è definita

per

interi

ir

0

come

positiva

al

di

Ordine

32

Perciò,

n

Un

l 2 3

limite

termini

n.

superiore

del

debole

per

fattoriale

prodotto

la

funzione

è al più

n.

fattoriale

è n

n,

L approssima ione

dato

di

che

ciascuno

degli

Numeri

di

I numeri

di Fibonacci

delle

grande

2

Capitolo

33

funzioni

Fibonacci

n

Stirlisrg

ricorrenza

seguente

dalla

definiti

sono

F, O,

. Pz dove

e è la base.dei

strego.

più

Per

logaritmi

Usando

n

m2

,

6n

1gn

di

sia

un

Stirling

limite

si puo

superiore dimostrare

che

un

limite

F, 1, FF

F

inferiore

che

Percio,

anche

.

n

i seguenti

limiti

5

2 .1 -

-

1.61803...,

t La

funzione

2.14

Ks 2

iterata

logaritmica

definiti

sono

formule

l

e

42 n

p che

coniugato

p e al suo

aureo

al rapporto

correlati

sono

di Fibonacci

la sequenza

e vale

precedenti

....

13,21,34.55,

seguenti

dalle

.

numero

due

dei

è la somma

di Fibonacci

1,2,3,5,8,

2.13

2.

i

per

ogni

l,

I numeri

n valgono

V2nn

fornisce

0,

on ,

ogni

naturali,

l approssimazione

n

Ig n

zru

e - ,.

0.61803.... Si usa

la notazione

è definita sia

1g n

come

la funzione

n

legge

stella

di n

denotare

per

l iterazione

logaritmica

che

Più

Ig n

definita

n

Ig lg indefinito

ricorsivamente

se

i Q,

se

i

0

e

1g

se

i

0

e

1g

interi

per

non

negativi

F,

g

n

0

o

n

1g

a distinguere con

partendo La

funzione

Ig

n

lg ir

argomento

i

logaritmica

min

0

Il logaritmo

iterato

la

da 1g n iterata

1g

fi

n

è una

funzione la

funzione

è definita l

logaritmica

applicata

logaritmica

di n, elevata

i volte alla

in

intero

5 vicino.

potenza .

lg2

le cresce

molto

funzioni

lg

2,

16

3,

65536

Poiché meno

5.

il numero di

n

f

2

.

i

di atomi

ncll universn

incontra

raramente

osservabile un

valore

è stimatn

di n tale

che

essere 1

n

circa

10 .

che

è molto

se f

una

che

2.2-3

Dimostrare

l Equazione

2.2-4

Dimostrare

ihe

2.2-5

La

6

Quei.ll

i

lu

e gn

n

lo sono

anche

sono

tul li nc

non

anche

negative

che

n

Tn

che

mostrare

se

se

e solo

O ii .

Tn

.9 .

8n

è

n

Ig n

on

e che,t

.

1imitata

polinomialmente

I 1glgn

tunzione

La

limitata

polinomialmente

22

O per

notazione

0 tale

lg n

I Ig

se f

crescente.

della k

inaltre

allora

crescenti

monotone

funzioni

gn

è monotona

costante

funzione

e f

gn

gn

á.

sono

e gn

n

n

la definizione

Ui re esiste

4,

65536

f

lentamente

2.2-2

lg

che

Mostrare

l, 4

1, si ha 5 arrotondato

Esercizi

allora

Ig

p

a ph

6 uguale

esponenzialmente.

crescono

di Fibonacci

i numeri

F

di Fibonacci

che

Dato

2.2-7 .

l Esercizio

numero

l i-esimo

e quindi Percio

veda

si

come

2.2-1 che

1/2

l/s più

induzione

per

successione

i-esima

.

funzione

5

p h

è indefinito.

dimostrare

si può

come

n

S

pi

i come

all Attenzione

si ha

precisamente,

segue

n IR

si

log

aiittl ticitmi..ni

piit

erat1 le.

le l It

o

l

le

It .

I

è

di

Ordine

2.2-7 . -

Dimostrare F,

2.2-8

che

p

p I

Dimostrare

l i-esimo dove

y5,

numero

di

il rapporto



Fibonacci

aureo

sòddisfa

e/è

il suo

i

per

0. l i

2 -esimo

numero

di Fibonacci

soddisfa

F

n

n

Ig lg

che

gl

2

plg

t

pTgn 2-1

Comportamento

asintotico

dei

g

polinomi

2

n

n

g

n

1nln

n

1

n

4lg

gn

Sia

pn

g

della

parte

a,

Og

è né

non

n

f

non

funzione

singola

di una

un esempio

Dare

b. d

negativa

Qg



n

n

lg

algol

2

n

p

g

l

1nn

lglg

n

ign

l/Ign

p2

1g n

n

1g

n

ll

n

Problemi

gg

g lgn

. 3

se

classe

stessa

nella

sono

e gn

n

f

35

funzioni

8gn .

se f n

e solo

coniugato.

che

tali

di equivalenza

in classi

l elenco

Partizionare

l uguaglianza

delle

grande-a

che

tale

n

f

ogni

per

funzione

g,

ciascuna

delle

n .

an,

i0

dove

a,

0,

notazioni

un

in

polinomio

asintotiche

per

n di

d e sia

gradn le seguenti

provare

k una

costante.

le

definizioni

Sel- d,

b.

Se

k

d,

allora

pn

e.

Se

l

d,

allora

pn

d.

Se

l

Siano

proprietà.

allora

pn

on .

e.

Se

k

d, allora

pn

co n .

2-2

Crescita

Ig

n

n

c.

y n

lg

f

s 1

f

b.

fn

c.

f

implica

Ogn

n

2-3

d.

f

e.

fn

f.

f

relativa

O

o

Q

tabella La

m

sotto,

risposta

se A è O, o, Q. dovrebbe

essere

oppure sotto

n .

8

e f

0

1g g n

dove

O lg g n ,

n

1 pt

t

o-

grande.

Ogn

n

Ig f

implica

2.

implica

g ir

.

02

O fn - .

Ogn

l

forma

Qf

n .

O f 12 .

g.

fn

h.

fn

Ofn .

ofn

8

n

sri

Variazioui

2-5

autori

Alcuni

O e Q Q in modo

definiscono

si faccia

da come

diverso

leggermente

Q

si u erh

qui

si

n

se esiste

una

di

n.

costante

c tale

positiva

che

n

o

v lgono

infinitamente

numero

un

0 per

c, n

f

grande

pn/2

interi

m lgn

Is

of

Ordinameirto Classificare

o confutare

Provare

positive.

gn .

implica

gg ,

n

ii

Q

le

rispetto seguenti

tunzioni

al

tasso

per

di ordine

erescltn di

asintotica

gr incferz

b. civi.

trnvare

un i

Descrivere il

siit m izi il1c

tempo

di

Qgn

o f ii

O g ii

la notazione

a.

Of

gn

8 min f n ,

gn

sufficientemente

c

pn

a.

8n .

asintotica

B

b.

asintoticamente

tunziani

congetture.

Q r .

Indicare coppia di espressioni per ogni A, B nella di B. Si assuma che k l, c 0 e c 1 siano costanti. si no di tabella con un o un in ogni casella.

a.

due

e gn

n

f

On .

allorap n

d,

asintotica

stotazione

delle seguenti

a.

della

Proprietà

2-4 Usare

di

invece

i potenziali

vant

esecuzione

dei

definiscono

O

cio

mentre

entr mbe.

è vero

non

se si usa

Q.

i e svant i

i

di

clell usn

Q

di

invece

Q

cantterizzare

per

rammi.

pm

, Al imi definizione

autori

iltirn itiva.

Si

dice

in

ern cntc

modo c che

f

n

C y ii

ic

e

solo

g

uscrh

si

diversn

sc

f

i

q vesta

p Oqn .



Capuolo

2 grgine

c.

Cosa

accade

nuova Alcuni

nel Teorema

autori

Ogn

definiscono

O si

esistono

f n.

direzioni

del

se

e solo

se

considerando

questa

Definire

in modo

tilde

positive

cg n l n

delle

sviluppo Bratley

O

legge

costanti

0fn d.

2.1 alle due

definizione Ocon

perindicare c, k e n

fattori

logaritmici

ignorati

tali che

Q

e O.

Dimostrare

Fcrnzioni

L operatore

il comspondente

Teorema

2.1.

monotone

crescenti.

la funzione

Data

per interi

f

n

Per una data min

f n che

non

Per ognùna f,.

P

i 0, i 0.

funzione

1g può essere applicato a funzioni sui reali n, si definisce f per cui valga f n ricorsivamente i come

la funzione

iterata

con

f

c, ben

ripetute

definita della

in tutti funzione

i casi. f richieste

In altre

la quantità f n il suo valore fino

parole, per ridurre

n/2

e.

n

è il a un

a c.

seguenti

funzioni

f n

e costanti

c, fornire

un limite

più stretto

.

e.

possibile

n

f. g.

se se

di essere

o uguale delle

una funzione

dan

di applicazioni minore

nella

c e R, si definisce

0

i

necessita

numero valore

costante

usato

non negativi

n

Jf f

p,

analisi *

n

h.

Note

al capitolo

Knuth

fa risalire l origine l 21 detla notazione Bachmann del 1S9 . La notazione o fu introdotto della distribuzione dei numeri primi. Le nutazioni corre pere Ia pratica, ma tec nicamente popolare notazione O sia per limiti superiori che infi.riori. mentre

la notazione

8

è piii precisa

li cnicament,

O ud un testo da E. Landau

ulb

te ria

dei numeri

nel 1909 nella

Q e O furono

w stenute

da Knuth

impreci u,

sii usare

nelIu

Mnlti

continuano

Ulteriori

124 lettentura

ad uv re l i notazione

discuiiioni

di P.

sua tr.,ttazione

iulla

storia

pei Ii O e lo

materiale

in modo

limitati

Altrere

iterate

di iterazione

funzioni

comprendono

roprietà

repertorio repe ori 2-6

gli autori definiscona 1 varie le comuni

più

assoluti

simile

trovare

si possono

asintotiche

37

dellepnzioni

j e in Brassard

in Knuth

e

f33 . tutti

situazioni

n n

perogni

Non

notazioni

c i grandezza

che,

anc

e se non

sulla

matematiche di funzioni , come Abramowitz

Apostol

siano sono

concordi.

.

a ilo stesso

modo,

Alcune

definizioni

asintoticamente

non negative,

sebbene

nelle

alternative ve hanno

valori

appropriato.

di matematica,

come

asintotiche

le notazioni notazioni t ion

12j matematica

o Thomas discreta

elementari si p ossono maun ffl o Be y er e Stegun

e Finney usata

192 . in informatica.

Knuth

121

in qualunque trovare in testi di 27 , oppure abbondante contiene

SO Rt0116

di esecuzione

tempo

il suo

esecuzione

esempio,

si

impiegati

ogni

la j-esima

tempo

proporzionale

sommatoria

o

un la

si ottiene

per

che

1.2

paragrafo

peggiore.

iterazione,

in ogni

nel

o for,

while

ciclo

un

tempi

dei

la somma

è visto

caso

nel

impiega,

impiegato

il tempo

Sommando

Per

ciclo. sort

dell insertion

iterazione

come

essere

può del

corpo

del

espresso

come

iterativo

di controllo

costrutto

un

contiene

algoritmo

un

Quando

a j.

serie

gi J-

Valutando

nel

algoritmo

dell

3.2

paragrafo

per

fornire

comunque

Le

formule

esse

le

paragrafo.

nel

paragrafo sono

prove

paragrafo 3.1 ono nel

presentate

altre

dimostrazioni

...

a

delle

Molte

possono

matematica.

a,

lasnmmatmitaa,

di numeri,

a ..

Dataunasequenzaa,.

di

alcune

I

le sommatorie.

riguardano

sommatorie

sulle

e proprietà

Formule

di

testo

qualunque

per

di quel

i metodi

illustrare

in un

trovate

essere

per

dimostrazione,

senza

descritte

3.1

tecniche

utili

offre

che

sommatorie.

sulle

limiti

4, le sommatorie

Capitolo

le ricorrenze.

risolvere

per

di base

formule

alcune

3. l elenca

Il paragrafo

metodi

di alcuni

nell uso

anche

si ritrovano

come

di comprendere

nel

si vedrà

Come

su di esse.

limiti

esecuzione

di

tempo

sul

O nl insportanza

indica

esempio

Questo

peggiore. e fornire

le sommatorie

gestire

3.2

caso

di

limite

un

ottiene

si

sommatoria

questa

pui esserescrittanel

modo

seguente n

. ga kl

ii

Se

e

il

-

0.

Yi

della

valore

essere it

i ti

iZLICll

tC

t i c ui l11OCIO.

è 0

s mmatoria

di

11 valore

e plieit unente.

tetto

poiiono D

il

grommati o/

t ,.

in a,....

serie

una

Se

tnizione.

i

l inila

ii

ben

sempre

definito

cile

assume

intero.. i

è un

non

e

i suoi

termini

vrùin .

qualunque li

dt

per

nuincri.

b

i ninw

it1f

mil

,

a,

...

pu i

ciscre

scritta

nel

Capitolo

Sommarorie

3

Serie

geometrica

ga . k1

un

Dato che

w I, la sommatoria

reale.v

rappresenta n n

im

1XX

X

X

40

ga . kl

serie

è una Se il limite non

non

sempre

termini

possono

di una

pp,

esiste,

serie

la serie

diverge

essere

sommati

altrimenti

ussolutamettte

in

converge.

convergente,

I termini

ordine.

qualunque cioè

una

serie

converge.

az

di una

serie

convergente

n

possono ag,. per

pp,

risistemare

però cui

anche

ha

come

valore

l

n

Si

ed

o esponenziale

geometrica

i

la serie

3. k0

la

Quando

e

è infinita

sommatoria

1, si ha

x

la serie

geo

decrescente

metrica

infinita

Linearità 3.4

bk k0

Datounqualunquenurnerorealec

eduequalunquesequenzefinitea,,

a,

allora

a

e b,. b,....,

b, armonica

Serie

n

n

n

cgaq gbq

g caq bq kl

La

...,

.

k

di

proprietà

impiegata

per

linearità

si applica

manipolare

l intero

Dato

ki

anche

somnsatorie

a serie

convergenti

contenenti

infinite

termini

in

e può

notazione

inoltre

essere

asintotica.

esempio,

H,

n,

positivo l

1

l

l

2

3

4

n

è

annonieo

numero

l n-esimo

l

Per

n

l

3.5 I I

e g/w

g fk

In quest equazione, destro è applicata

.

la notazione ad

n. Queste

1nn

8

sul

lato

sinistro

manipolazioni

è applicata

infinite.

alla

essere

possono

variabile

applicate

k, mentre a serie

sul

lato

Integrali

e derivate

Si i

ottenere

La

di

serie

convergenti ossono oss

aritmetica

. risultati

ulteriori

e differenzi

integrando

i lati

entrambi

derivando

esempio, esempi, Serie

.

01

.serie

della

ggeometrica

rica

iandoleformuleappenaviste.Per i intuita

3A

e moltiplicando

perx,

si ha

X

sommatoria

3.6

ex x-

l n

12

gk

n,

telescopiche

Serie che

viene

fuori

dall

analisi

dell insertion

sort,

è una

serie

aritvretica

ed

ha

come

valore

u

Data

sequenza

qualunque

a,

ci , e ,,

v le

che

n

l -n n

n

1 3,l

kl

i I

On

A

è.7

ao,

i

-1

. l al,.

Si

l

diceIC

Ccle. l.

lasomns . i

.

rientra

i

CI

al ...,

c ime

.

-

un.

,

CI1C,iotlt,lttO

Ci..l,i llllT . to

c innocchi ile

.

C

o

. ,t

lttegC tPICilllCCll14 .

ei..ltl..llllClltc

1

. A, Alt I

UIID

VOlta.

1 lll1CII lil1CA

C C

42

Capitolo

n

3

I

ao

a.

J 0

esempio

di serie

telescopica,

si consideri

la sommatoria

3.I-6

Provare

3.I-7

che

serie

delle

linearità

Og i

O fq n

,

Come

di

la proprietà

Usare

3.I-5 ai

g

per

43

rie

Sommaro

che

provare

fa n . Q pp,

fk .

g,

Qfk

Calcolare

il valore

del

prodotto

fJ ,

2

3.1-8

Calcolare

il valore

de1

prodotto

Jg

1

3.i-9

Si dimostri

n- i l. kk

4.

I

Poiché

ogni

termine

l

I

kk

I

essere

può

riscritto

I

k

k

l/k .

come armonica

serie

della

il limite

che

può

a

migliorato

essere

E

l

I

Hn

2n si ha dove

..

l

E

Ic k

1

0

1

3.2

l.

e

veda

Si

ed

121 .

sommatorie

sulle

di limitazioni

Definizione

Knuth

di Eulero-Mascheroni

la costante

come

è conosciuta

0.5772156649...

y

c soddisfa

n Vi sono

Il prodono

finito

a,,

a,

a

essere

può

scritto

n

base

Il metodo Il

si

esempio,

kl

un

0, il valore

prodotto

del

in una

n

s

è 1 per

prodotto

formula

definizione.

contenente

una

Si può

sommatoria

convertire usando

una la seguente

formula

contenente

ga

kl

vale

a

.

serie per

valore induttiva

si fa l ipotesi

Per

matematica.

l induziane

come

k ha

g,

1. quindi

usare

nn che

Si

I.

valga

esso

può per

1

1

n

2

1 n

.

2

Trovare

Mostrare

una

che

formula

sempticc.

-1

l/ 2k

g,

per

g ,

In i

che

pp

k

-1 /2

O

manipo1ando

le serie

per

0.

l

3

k0

n

c

1purché

e

I. Si ha

I

il valore

della

erie

/

è

necessario

tentare

di

determinare

per

n. si proVél

armoniche.

n

Calcolare

non

il

valore

vt

2

Mostrare

matematica

l induzione

usare

Per

3.1-4

aritmetica n

è di

I. Si ha

n

per

serie

kl

1 -n

3.1-3

di

ga n i

kl

Esercizi

3.I-2

i tempi di frequente.

n

l -n n

3.1-I

più

identità

n

I I

che

che

n e si dimostra

la

è vero

che

dimostrerà

nI

glsaa

presentati

una

di

il valore

calcolare

per

verificare

facilmente Se n

saranno

usati

metodi

dei

alcuni

descrivono

che

sommatorie

sulle

limiti

definire

matematica

Induzione

come

per

Di seguito

algoritmi.

degli

esecuzione

Produttorie

disponibili

tecniche

molte

1 .- .

g

E

gi

3II

3k

a

c . o

n I 3ll

3tlt

y

.

l C

,3

t

I

l. Ascumendoche

il limite

valga

or

che

vale

se

l/c

1/3 dimostrare. Bisogna

Si consideri

Di sicuro n

fare attenzione

però

asintotica.

k

g,

I

c 312.

a dimostrare

la seguente

Di qui

limiti fasulla

prova

Assumendo

01.

03 .

q3

con l induzione che g ,

che il limite

valga

k

quando

come

si voleva

si usa la notazione

1 /3

k

On.

il rapporto I k

3

2

per n, si dimostra

per n

3

1 k

per ogni

1. Quindi

è superiormente

termine

ogni

limitato

da

1/3

e da qui si ha

2l3 ,

I

On

1

n

On

1

g- -

g-

enato

.

I L errore

nel procedimento è che la costante nascosta Non è stato mostrato che la stessa costante

costante.

dalla

O cresce

vale per

ogni

con n e quindi n.

Talvolta, della

dei

un buon

termini

limite

serie, e spesso

un limite

è sufficiente

superiore

n

n

gk

gn

kt

kl

n-

In generale

su una serie

immediato

usare sulla

puo essere

il termine serie

più grande aritmetica 3.1

ottenuto

maggiorando

per limitare è

gli altri.

ogni termine

fare

si potrebbe

errore

questo

per la serie

che il rapporto sia limitata armonica

di due

da una serie infinita

che

8 lgn

Il

OO

OO

.

2

a,

max fggg

ag-, allora

vale

non è limitata geometrica, 1 cioè deve

t1amax

superi di limitare

ogni

la serie può in realtà essere che a ,la, rperognik da una serie

n

a,r

ga ÀO

termine

limitata Odo

geometrica

di una serie

l

0

1 ap 1

r

mostrare

una costante

mai r. Per la serie

r

armonica

si avvicina

a 1 indefinitamente.

più grande è debole quando da una serie geometrica. Data la serie g a si supponga er l è una costante. Datochea a i lasommapuòessere k 0 decrescente infinita, quindi

Spezzare

le sommatorie

1, tale che il rapporto una costante

r di questo

fra due termini tipo non esiste

consecutivi perché

non

il xapporto

la serie come la somma di due si può esprimere difficile limiti su una sommatoria Per ottenere delle serie ognuna limitando e quindi dell indice l intervallo spezzando o più serie ottenute un limite inferiore di cercare si supponga Per esempjo, per la serie aritmetica risultanti. limitare ogni da n-. Si potrebbe superiormente k, che come si è ià visto è limitata I

termine r

che il rapporto

si deve esistere

con il termine

Zl

ao

1, ma la serie 1 di questa serie è k/ k Infatti, per limitare una serie con una serie inferiore a da un valore strettamente è limitato

termine 1 - esimo e il k-esimo tra il k decrescente. da una serie geometrica

Il rapporto az, se si pone

g,

kl

limitata

di l e quindi

è minore

Per esempio, geometrica. invece diverge

lim

per una serie

La tecnica

mostrare di questo metodo, che la sommatoria assumere

nell applicazione

comune,

consecutivi

Per esempio.

n aA

2/3

1

1.

termini

superiore

1

3

non è una

È un errore Limitazione

k0

k

1

Il primo

k/3 .

pp,

k n1

/l

E

per dare un limite alla sommatoria è consecutivi tra due termini

metodo

questo

è 1/3 mentre

termine

k/3

n

k

applicare

Si può

I o, equivalentemente,

un limite

della

sommatoria

inferiore

è 1, si avrebbe ma poiché quel termine pii piccolo, ir- . superiore limite dal è distante n, che troppo ad pari

con il termine

per la sommatoria

Capitolo

49

Sommatone

3

l

x

f

1a limitazione

vale

cui

per

3.12

I .

lnn kl

Esercizi

a

R

R

3.2-1

Mostrare

3.2-2

Trovare

che

un

l /k-

g,

superiore

asintotico

limite

una

da

superiormente

è limitata

costante.

la sommatoria

per

I Lis J g

f X m-1

m

m1

m2

n2

n-1

n

AO

n1

a

che

3.2-3

Mostrare

3.Z-4

Approssimare

3.2-5

Perché

k

g,

un

con

la sommatoria.

spezzando

è Q lgn

armonico

numero

l n-esimo

integrale.

-i

f

l /k

per

con

l approssimazione

usa

si

non

limite

un

ottenere

superiore

l integrale 1 n-esimo

per

su

direttamente

3.10

armonico

numero

Problemi

I

somtnatorie Si

sommatorie.

seguenti

sulle

stretti

asintotici

limiti

Dare I

sutle

Limitazioni

3-1

a

3

assuma

r n 0 e s0

che

siano

costanti.

O

n

m

1

m

m

I

m2

n-2

n-1

n

a.

g

X

I l

n

b b

Fieura

sommatoria.

A pp al

rossima-ion . a ione interno,

quo L integ

Cvnfroirrando revangoli

1g

I.

k

1g

I n

3.1

ntostrato

g l

le verso

raie aree

destra

d i e

il

rr ra1e

è rappresentato in si

a, ottiene

si

con

fk

valore

attiene

g ,

integrali.

dell area

dal1 area j, fl

I dei

f

la

dx

i

b.

di

rappresenta

ogni

rettmrgolo

è

k.

g il

valore

della

curva. e quindi

fk

g fx

dell area

rettangoli sotto

grigia d.x

f .x

ialore

traslando

nnitic di

urr

i

Note

al capitolo

Knuth prnprietà matematica

è

l2l di

un

hase come

eccellete

riferimento delle Apostol

serie

possom 12j

o

per eiicre

Thoin ii

il

m. teri le trov itc

e Finncy

presentato in l92J.

qualunque

in

cnpito

questo

buon

te.

to

di

ln. analisi

Le

Ricorrenze

nel come già notato a se stesso, ricorsiva Una ricorrenza. da una essere descritto spesso l, il suo tempo può in termini del suo una funzione che descrive o una disuguaglianza è un equazione ricorrenza come il tempo è mostrato 1 si Capitolo nel esempio, Per valore su input sempre più piccoli. MERGE-SORT, neI caso peggiore, possa essere descritto T n della procedura di esecuzione un

Quando Capitolo

dalla

algoritmo

chiamata

una

contiene

di esecuzione

ricorrenza 81

f

8n

$2T n/2

tecniche

1,

4.1

1p . per risolvere Nel metodo

le ricorrenze di sostituziorre

per ottenere si tenta un limite

cioè,

i limiti e quindi iterativo

Il metodo è corretto. che il tentativo per provare le si applicano ricorrenza la risolvere e in sommatorie le ricorrenze quindi per della limiti sulle ricorrenze fornisce metodo Il le sommatorie. limitare priircipale per matematica

l induzione

converte

l,

n

capitolo offre tre metodi O 8 deIla soluzione. o

Questo asintotici si usa

n

se

On

è Ti

la cui soluzione

se

forma Tn dove

aT n/b a

fn,

di determinare

tecnici

Aspetti

Nella

quando pratica, tecnici. Per esempio, abbiano

argomenti

intero.

un denaglio

interi.

Di solito,

infatti

peggiore

e risolvono

si descrivono

per lu nnggior la ricorrenza Per esempio,

su n intero. caso

che

viene

il tempo

spesso

mascherato

di esecuzione

Tn

certi

si trascurano

li

dett

le funzioni iolo è definito

che

è l ipotesi di un algoritmo dell input del

è sempre

EROE-SDRT

un nel

è in realtà

T n/2J 8 n

T n/2

di esecuzione

il tempo

le ricorrenze

le ricorrenze,

la dimensione parte degli algoritmi. il tempo di esecuzione che dea rive

J8 1

Pnichi

ma consente

tre casi, di ricordarc richiede il metodo l e f n è una funzione, ricorrenze. di inolte semplici i limiti asintotici facilmente

1, b

cl e

descrivono

di un algoritmo tale

tempo

haiti

n

l,

n

I .

è costunte in genere

su un T ri

input 01

di dimensinne per

cvsl

n su tfrcicntcl11Clll

JA1C.

53

Ricorrenze

Di

piccolo.

conseguenza,

2T n/2

Tn

dare

senza di

T1

Quando

si descrivono

condizioni

al contorno. se

determinando

ad

per

madi,

importanza.

o no

Di

aiuta,

4.1

il Teorema

senza

solito

e il Problema

4-5 .

ne

il tetto

la base,

è bene

tuttavia

ricorrenza

delle

molte

stabiliscono

le sottigliezze

dei

che

metodi

si farà

scegliere

Come

per

Sfortunatamente,

un

diventare

metodo

di

sostituzione

metodo

di

soluzione,

sostituzione

una

Se

, q uindi

soluzione

usare

funziona. l ipotesi

quando

Il metodo

Il nom

e viene

solo

sia

quando

di sostituzione

ricorrenza.

esem

Per

le

dalla

sostituzione

nella

lo

azzeccare

u ò essere io , determiniamo

usato

per

un

limite

le

superiore

per

la

che

soluzione

della

tentata

è potente,

ma

2T fn/2J

che

sembradifficile

è simi e

consiste

Tn

Assumendo

Tn

2c cn

fn/2J

n

nelIa

dove

ricorrenza

con

la soluzione

c

una

è valga

limite

questo

Ig n/2J

Ig n/2

Si tenta

cn

che

e sostituendo

Jlg Lnl2J ,

e 4.3 .

4.2

che

provare

appropriato. Ln

ricorrenze

costante per

Tn

1gn .

On

scelta

positiva cioè

Lnl2J,

che

T Ln/2J

c

si ha

cn

dove

l ultimo

L induzione

Ign,

vale

c

per

matematica

e

n

l. o ra di

p erlecondi n

eiprobtemi.SiassumacheT 1 non

4.4 ,

di sostituzione

si limiti

si potrebbe

cominciare

si pub alta

ricorrenza,

n è nella

corretta

asintotico

della

equindi

limite

inferiore

e provare

un

di limite

superiore

il limite

abbassare

soluzione

4.1-5 .

ricorrenza un

che

lgn ,

On

Tn

della con

gradualmente

lo è altrettanto

l Esercizio

veda

laschi

è di provare

il termine

poiché Quindi

con

stentano

conseguenza,

convergano

finché

inferiore

stretta

e asintoticamente

mostrare

, si può uò

scegliere sci

1 sia gi

izioni i l unica

che

la soluzione

vale

per

le condizioni

un

al

creare requisito Questn può talvnlta . al contorno e . i. All ir ir i. i Jellaricorienz

rn

Si

c sufficientemente

rande. e, perché

T1

c I 1g l

tetlt

coli

appropriatamente.

di ordine

liil

Lnl J

0.

in

imbatte

più

di

difficoltà

una basso,

spesso

torte

abbastanza

sia

questo

dimostrare

da

correggere

tipo, di nttenere

consente

ricorrenza. Di

nell induzione.

torni

la prova

la

limiti soluzione

matematica.

ia ricorrenza

Si consideri

relacostantecsufficientementegrandeinmodo al contorno. -. condizione

termine

si

induttiva

l ipotesi

è che

non

di una

soluzione non

matematico

il calcolo

che

sembrare

può

ci

Quando

un limite

correttamente

modo,

il problemá

specifici.

uòsce l -

cnlgnvalgaanche

S ortunatamente,

esempio,

O n- .

Tn

azzeccare

si può

sottraendo

richiede

contorno,cioèsidevemostrarechesi c

la soluzione Per

T Lnl2J

tra Di

il metodo

usando

azzeccare

di

in qualche

solito,

passo

a metà.

n n

ma, cn

la differenza

della

soluzione

non

l7

e T l.nl2J

Sottigliezze

cnlg2 Jgn

può

la

sostanziale

n

A volte cn

è

1g li .

8n

Tn

simile

T. Intuitivamente

all argomentodi modo

in

influenzare

n è grande

la ricorrenza

per

il limite

e alzare

a

soluzione

una

tentare

allora

prima,

sul latodestro

aggiunto

n all incirca

per

iniziale

superiore

n

cnlgn

Qn

Tn

modo

ogni

il lettore

la ricorrenza

17 non

di incertezza.

il grado

per

aiutare

possona

n,

corretta

modo

altro

ridurre

Il metodo in

Quando

viste

si consideri

addizionale

g

che

euristiche

alcune

corretta

la soluzione

azzeccare

per

generale

vi sono

a quelle

simile

acausadel

dimostrare

si può

la ricorrenza

regola

però,

17

dividono

entrambe

di una

o superiore

4

alle

nel

n piccolo.

per

candidata

una

esempio

termine

Un

che

esiste

è

Per

ricorrenza.

2T jn/2J n,

Tn

non

ricorrenza

Tn

questo

puo

soluzione. inferiore

soluzione

di

schema

e mostrare

metodo

della

i limiti

uno

costanti

Questo

schema

stabilire

tentare

funzione

piccoli.

più

di

trovare

per

a valori

facile

richiede

ricorrenze

matematica

è applicata

induttiva

applicato

essere

l

risolvere per induzione

funzioni

al

risolutore.

buon

ragionevole. Il

la

Fortunatamente,

ricorrenza.

Il

induttiva

2.

di c

condizioni

risolvere

le ricorrenze.

4.1

l ipotesi

perché

le

per

perché

scelta

qualunque estendere

è semplice

cnlgn grande

qu

comunque,

capitolo,

questo

che

è sufficiente

e T3 da T 1 .

Tn

che

c sufficientemente

esaminate

verranno

prova

T2

direttamente

dipende induttiva

prova

verificare

si può

3. Come

c31g

ricorrenze

sapere contorno

che

essere

1 può

c

2 e T3

nella

considerare

possono non

è di

idea

L

costante.

1 e di considerare

Si

scegliendo

completata

asintotica

la notazione una



dove Tl

5. La

4 e T3

T2

che

fatto

3, la ricorrenza

pern

perché

per

al contorno.

condizioni

che

si trova

n,

ir

al contorno

condizione

specifica

dal

al contorno

la condizione

delle

parte

costante c21g

Per

prova

Ign

cn

una

per

vantaggio

trarre

Tn

che

induttiva

al contorno

condizioni

Dalla

T2

e poi

superata.

3 come

come

qualche

e le

dettagli,

questi

hanno,

teoremi

In

mostrare

per

spesso

considerare

non

alcuni

come

cosi

dettagli

di questi

si omettono

prima

d

camb

non

invariato.

rimane

le ricorrenze,

Si procederh

alcuni

nella

induttiva

ipotesi

Si puo

di provare

soltanto

2 e n

n

il valore

cambiando

la soluzione

tipicamente

di grandezza

sebbene

un

provare

facilmente

essere

richiede

è che,

nel

difficoltà

Questa

Per

può

La ragione

ricorrenza,

I ordine

L esperienza

veda

si

riferimento

n piccolo.

per

come

4.1

piccolo.

e si risolvono

hanno

hanno.

algoritmi

pern

della che

cosi

costante,

ne

delle

descrizioni

è costante

Tn

che

trascurare i valori

la soluzione

cambi

quando

la ricorrenza

le

ometteranno

si

generale

e si assumerà

9n,

esplicitamente

attore

un

in

ricorrenze

si descrive

normaImente

esempio,

comodità,

per delle

al contorno

condizioni

la

soluzione

1.

I Ot .

Sostituendo

e si ne l

ceri

i di

che

lllOilrarc

ricorrenza.

si

ha

T ir

cit

dove

i

Lltla

costatlte

scelta

55

Ricorrenze

54

4

Capirolo

Si é

Tn

c

c

n/2j

non

che più

implica

grande,

Tn

sia

induttiva

più

On

dal

Ciò

è esatta

induttiva.

dimostrare

in

se

questa,

c

b

solo

una

però,

l ipotesi

bisogna

fare

che un

ipotesi

MoIte

2b

cn

b,

matematica

un

termine

di ordine

non

si prova

la

forma

più

basso

di ordine

termine

b dove

cn

1, un

0 è una

b

4.1-1

Mostrare

che

la soluzione

4.1-2

Mostrare

che

la

Si ha

costante.

c deve

la costante

trovano

controintuitiva

essere

sufficientemente

scelta

di questo

di comprensione

dimostrare

di più

qualcosa

non

forte

la soluzione

torna,

sta

passaggio un valore

per

un

di sorrmrre

l idea

matematico

se il calcolo

soluzione

è 8n

Mostrare

che

da gestire

grande

dato

nel

non

ricordare

ordine

essere

si usa

che

assumendo

di

termine dovrebbe

condizione

sulle

condizioni

Mostrare

4.1-5

Mostrare

4.1-6

Risolvere

della

l uso

provare,

2c

Tn

notazione

che

Tn

On

asintotica.

Per

esempio,

tentando

con

Tn

forte

ricorrenza

nella

e quindi

cn

per

valori

si può

Per

errato..

che

è cbe

L errore

costante.

e cioè

non

è stata

la

dimostrata

forma

esatta

dell ipotesi

cn.

Tn

a una

una gih

Tn

manipolazione

ic a picco

vista.

Per

sembra

T2

ll

Percnn Igll

per

correzione

il merge-sort.

lpi .

Si

come

itera

una

1 facendo

di variabili.

sostituzione

interi.

è di sviluppare

L idea solo

dipendenti

usate

essere

n

da n e dalle fornii

per

ma

soluzione,

una

di tentare

richiede

iterare condizioni limiti

alla

può

mo1ta

richiedere

la ricorrenza

ed

Le

tecniche

iniziali.

più

algebra come

esprimerla per

valutare

le

soluzione.

la ricorrenza

si consideri

3T n/4j

. pun

rendere

una

.

segue

n

3T n/4J

n

3 n/4j

3T n/16J

n

3 n/4

3 n/16J

T uttavia i

modith.

si

traicurerh

può

n

ln ricorrenza

sehsniificare l arrotondamento

questa

con

ricorrenza n interi

dei

valori

una conte

sostituzione /n.

di

LLirl4J14J

Quanto

.

n/64J

bisogna

3

9

n/4

27T n/64J ,

n/16j

sviluppare

la

vengono

Lnl64J

e LLnl16J14J

Ln/16J

ricorrcnzu

per

Snstituenequivalentensenti,

,n

3T

sconosciutasintil .

riconenza

OttlCllC

PT 2 -

4.2

n è On

17

2T Lnl2j

siano

i valori

che

non

possono

esempio,

Tn

dove

il ClO

algevrica ..i

1gn,

difficile.

variahile.

-

si consideri

esempio

2T nj

che

la

senza

variabili

di

Talvolta.

ricorrenza

2T n

Tn

la ricorrenza

di termini

Tn

Sostituzione

della

Tn

di

la soluzione

di sostituzione.

sommatorie

c è una

induttiva

induttiva.

difficoltà

la

superare

4.4

iterativo

metodo

del

cn n

poiché

la prova

è la soluzione

Ign

8n

che

iterativo

Il metodo

somma

g ,

per

la ricorrenza

1 per

T1

al contorno aI contorno

si pub

induttiva,

ipotesi

diversa

una

preoccupassi

Il metodo

che

n

n/2J

Ign .

si può

4.4

dedurre

la

che

Concludere

1gn .

n è Qn

esatta

4.2

erroneamente,

l è O lgn .

I

inferiore.

trappole

sbagliare

È facile

12

2T Lnl2J

di T n

soluzione

facendo

che

4.1-4

Non

le

Tl

T ii

le

awnentata

l induzione

di più

qualcosa

della

piccoli.

Evitare

di

l

b

c fe/2

funziona

sottraendo

è Tn

se

l

prima,

persone

La chiave

Iglgn .

Esercizi

al contorno.

Dopotutto

più

cn

1. Come

condizioni

1gm .

Om O lgn

1gm

la

4.1-3

p erb

Om

Sm

T2

si ha T n

S tn

soluzione

stessa

la

ha

ed

4.4

ridenominate,

le variabili

Risostituendo

soluzione

realtà

la costante

per non

la difficoltà

tentativo

Il nuovo

n/2J

torna

non

Si supera

tentativo.

precedente

essa

l induzione

nonostante

de11 ipotesi

Tn

Per

anche

O n- ,

Tn

cercare

interessante

di c. Sarebbe

scelta come

è corretta.

l ipotesi

basso.

esatta

è molto

ricorrenza

alla

simile

forte.

Intuitivamente più

nessuna

cn per funzionare,

può

ricorrenza

la nuova

produrre

per

m,

2S m/2

S sn che

Tn

che

soluzione

l

n/2

l,

cn

T2

5m

ridenominare

può

decreicentc

i

raggiunge

lo

n.

Proicguendo

dall identità una

ri ggiungere

nell iterazione

2.4 . al

condizione

fino

a

questo

Il

contorno

punto

c

Ricoiienze



Capitolo

4

2

Tn Tn

n

3n/4

9n/16

n

log,3

on

0n

.

caso, l per

esatto la

è stata

usata

concludere

essere

puo

ricorrenza,

si può

il metodo

di solito

richiede una

Quando

sulla

esatta

di un base Tn

notazione

nel

per

superati.

4.3

esatte

di un

intero

Alberi

di

rirorsione

i calcoli

nel tutti

dei

base

di iterazione

processo i calcoli

matematici.

che

se si fosse

L

in

-*

di sostituzione,

per

a cune

non

condizioni

che

4 per

n

che

le potenze

per

tecnici analisi l

le quali

-

qualche /

un i limiti

e che

ricorrenza. impera.

È La

Tn

utile

figura

in 4.1

2T n/2

Per

X

/

uo

/

nella

termine

n-è

di visualizzare la gestione

special

modo

la

ricorrenza

dell

albero

mostra

quando

la derivazione

ciò

che

accade

algebrica

un

di ricorsione

che

la rallice

l

espandendo

La

T n/2 .

finché

n sia

espai1sa

primo c

p irte

mostra dei

è raggiunt i

esatta

potenza

in un

etichettavi

L etichetta

l un

una

due

cmu

albero

. La parte

di

oi.i. o .

potenze

una

a risolvere

4.1

algoritmo

La

equivalente

livello

che

di ricorsione .

lo

stesso

nodi

al

il

fimra

cnndizione

fi cura

e i due

al contorno.

sottoalberi avanti

di

ricorsinne

livello

La

mostra

Tn,

la ricnrrenza.

portato

parte

d1

sono di

le dùe

un è

moitra

Il

h,

come

valore

la

ricorrenzw

si

sommuno

i valori

su

ogni

livello

deil

albero.

l4 -

n/4 -

n/4 --

n-/4

e

cosi

via.

Pniché

il,.al rc

d

ha

Ign

alte- a

al

di

più,

p arte a

l livelli .

Ign

ha

-.

Tn

ricorren.a

la

per

differisce,

totale

un

termine

dal

costante

fattore

più

è 8 n- .

esempio

altm

un

mostra

ricorsione

la soluzione

quindi

primo , 4.2

in

più

l albero

intricato,

di ricorsione

per

la ricorrenza

lungo

1 per

/i

n

è al più

primo

On

n log, n

n, Ign .

foglia

è

per un

si hà

ricorsione, n

è log,

dell albero

l altezza

omesse

sono

e tetto di

a11a

radice

dalla log

base

dell albero

livelli

nei

più

.

funzioni

le

caso

questo i valori

2/3

n

T 2n/3

T n/3

cammino

n/2 - .

l

Si

semplicità.

valorem

213 n

2/3 -n

n. Quindi

la soluzione

si

Quando

Il livello. p er ogni Poiché ... al. della

ricorrenza

superiore

per

lnricorren-

T iil3

T 2nl3

Esercizi

ilbcrn

tramite

Determinare

vii

r lnlzJ

buon

l itcrazioneun

limite

asintotico

r.

livelhi

4.2-2 n/4 -

parte

stella

ssommano mm

42-I

Il

di

il valore

7B valutare

albero

p 1SSO

risultanle. Per

un

divide-et Tn

rappresenta

processo secondo

della

di

stru.io,re

C

completarnehte

grande

la

per

a

/

/

d

si itera

quando

necessaria

descrive

L

essere

sulle

Anche

è statu

b

T n/2 .

ricorrenza,

comodn

a organizzare

ci assuma

patte

ricorrenze

modo

/

X

/ I

di 4. Si vedrò possono

F

aiutare

-

-

/

S

siano

n

comodità.

che

è un

può

n

l

Ign

interi.

gli

-*

solo

Sfortunatamente,

richiede

aspetti

valendo

definita

di 4 è tecnicamente

solo

questi

diventare

può sia

omessa.

asintotjca

di ricorrenze,

a tutti

assunto

esatte

potenze

grande,

classe

matematico la ricorrenza

comodamente

di notazione

sufficientemente

estesa

il calcolo

assumere

essere

potuto

illustra

il metodo

scegtiere

e tetto,

Nell esempio,

ampia

essere

di ricursione

n

n

geometricamente, ricorrenza,

c

che

e la somma

espanso

Un albero

-

H

-

b

in modo

di volte

il numero

al contorno,

sviluppare per

aiutare

può

esclusivamente

una

4-5 può

tutti

parametri

Talvolta,

senza

O. La definizione

per

Il Problema

su due

e fare

le condizioni

abbandonato

funzioni

avrebbe

intero

che

-

che

di algebra.

numero.

On

qualunque

Paragnfo

, e il fano

no

h

l

essere

inferiore

Spesso,

funzione

della

algebra,

di iterazione.

processo

contiene

il limite

concentrarsi

la soluzione

può

complicato.

k, la

provati

del

uso

ricorrenza

improprio

di molta

raggiungere

per

azzeccare

un

mostrare

3o4

a

l uso

Bisogna

livello

potenza

intero

che

on.

comporta

iterata

iterativo

particolarmente

/

2

essere

di una

concludere

per

6n

complesso.

deve

da ogni

che

2.9

che

originati

caso,

identità

l

di solito

ermini

tal

-*

-* /

iterativo

ricorrenza

-

-

4

4n

Il metodo

3

ai

8n

g

In questo

27r./64

n

61

cl e

Dedurre

dicr .,ie n

1pil

utilizzando

la

dell

soluzione un

albero

li

ricvrrenza ricorsione.

Tn

n

è

Capitolo

58

e

rren

Rico

4

SP

n

Il

n

Qe

--

Il

3

-

il

teorema

principale

Il metodo

n

n

2n

2ll

4n

9

9

9

9

/

/

/

/

n

Totale

Un

4.2-3

albero

Tracciare

-4

aT n

la

per

On

ricorren a

di ricorsione

Jg n

Tr

Tn

per

T 2nl3

4T Lnl2J

n.

n e fornire

limiti

asintotici

l iterazione

1.

Se

fn

O

2,

5

fn

8 nlog,a

1 è una

risolvere

ricorrenza

la

Tn

T n-a

Ta

n,

dove I

UsareunalberodiricorsioneperrisolverelaricorrenzaT n dove

n è una

costante

T nn

nell intervallo

0

T 1

n

metodo

Tn

aT n/b

dove richiede

di

determinata La di

fornisce

ricordare

ricorrenza

co tanti

e f ir

a memoria

due

le

spesso

descrive

n in

le ricorrenze

funzioni

hanno

è Tn

8n

della

r

forma

l,

è una

funzione

th

senza

b.

la

asintoticamente

soluzione

carta

Nel n1b T

dalla

rispetto

non

I

dunque. questa

-, procedura

della

potrebbe

ricorrenza.

di

,,

.

originata

L Sarh omettere forma.

intuitivo,

solo

non

caso,

8f

di n - i essere

deve

o

f

di

ntolte

ricorrenze

può

grande

i

che dove n

divide

un problema

a e l

o costanti . sono cos zn

empo

n

i

correttezza essere

un

h a,

tecnicu. intero.

J

T,

mostrato

nel

le funzioni

11

McRc z-Sn -r

n/lr ,

baie

la ricorrenza Tuttuv n i1

rossimn

,

la

efin f i in

ini1uiice

sul

n di

esempio

n

b

ognuno

.serivoi n

condizioni - ricorrenze

d

per

qualche

- ,,

ma

deve

funzioni

tra

3 non

i 1 metodn

è soddisfatta.

non

i crei

2 e 3 in cui

principale

tutte

cnmprendonn

non

f ii

puo

è più

in

essere

le possibilità

di n

usato

per

0.

modo

limitate

polinomialmente

grande

c

costante esserlo

per

fn

non

ma

tra i casi

in modo

la ricorrenza.

risolvere

del

metodn

principale

h

f

cteali

a

tertnini

asintotico normali

di n ,

caso,

primo

Ia ricorrenUsn

cuniportamcntn In

si ...

Per

i tre casi

vi è un intervallo

Analogamente.

cn to

u nu.

effetti

iostituzione

p ,r,grafo.

e tetLO è o qu indo eo

Il .

l1

2,1

che

sottolineare

È importante

e penna.

delle

parte

di

Nel

si incontreranno.

che

essere . sere

e la

logaritmico.

tecnici.

aspetti

un fattore

per

più

nmggior

dalla

fattore

un

per

al cuni

comprendere

piccola

è soddisfatta

condizione

Questa

Il metodo

positiva.

nel

come

Ign .

n

bisogna

pib

si cnoltiplica

grandezza,

lp,

asintoticamente

terzo

del caio

za

1a stessa . i,

concetto

questo

essere

Nel

il teinpo di esecuzione di un algnritmo , , OQtlllI10 di dimensione n/b, p roba- lcllll, . , .,

a sotto

a sotto

Oltre

deve risolvere

per

t r e casi,. ,

facilmente, 4.5

dimensione Gli

ricettario

o tipo

Se,

funzioni.

le due

tra

grande

più

4.5

I sono

molto

positive.

un a pprocci

fn,

l e b

n

l

principale

Questo

fn

dalla

è determinata

cosa

che

. 1ntuitivamente.

n.

soluzione

II metodo

la funzione

si confronta

casi

.

n

di capire no ,

la funzione

con

qualche

per

Of

cercheremo

esempio,

a qualche

n

Tn

allora

grande,

l.

a

2,

4.3

tre

ricorrenza

della

la soluzione 42-5

dei

In ognuno

dice.

n suft iientemente

principale

cf

0, e se af nlb

e

costante

qualche

per ogni

il teorema

.

8n

Tn

0, allora

e

9 no algn .

aQpga

l e per

c

di applicare

Prima

costante.

limitato

asintoticamente

essere

può

costante

qualche

per

Qn

Se f n

3.

costante

per

T ii

I. Allora

o I n/b

Lnlbj

segue.

come

T n/3

fn,

jb

rappresenta

n/b

la soluzione.

per

Usare a

ricorsione

l albero

stretti

4.

di

non

interi

sugli

definito

sia

e Tn

funzione,

una

n

1

dove

4.2

e f

1 costanti

ricorrenza

dalla

negativi

/

/

principale

Teorema

l e b

a

Siano

Tn

Figura

4.1

Teorema

I

n

teorema.

seguente

dal

dipende

principale

3

i

dcll,t

usare

Per teureina

il

principale

como,l ,.

-divide-et-il11p

Come

metodo

prim i

principale. ii

q plic i

n

.

si

esempio

pie p l I Tn

9T n/3

c consideri

si

determina

ii

scrive

semplicemente riip it .

quale

caso

se

ve

n

del

Ricorrenze dE

Per questa ricorrenza, O no , dove fn che la soluzione è Tn Si consideri

in cui a il caso

3 e fn

9, b

1, si può applicare O n- .

n, e quindi n4 1 del teorema

n

il caso

8 n- .

principale

Poiché

4.4

e concludere

ora

T 2n/3

Tn

si ha a e

l,

1, b 2 e quindi

312 f n 1 e n o4 la soluzione della

n o4-

n

ricorrenza

1. Poiché

fn 0 lgn .

è Tn

8 n o4

81,

si applica

Per la ricorrenza Tn

n 1gn,

3T n/4

e. 4, f n n 1gn e n o , n o-. O no. . Poicpéf n g v g p.o n il caso 3 se si riesce a dimostrare che la condizione di regolarità su f n è soddisfatta. Per n sufficientemente af n/b 3 n/4 lg nl4 Ign cf n con grande, 314 n c 314. Di conseguenza, dal caso 3, la soluzione della ricorrenza è Tn O ir 1gn . si ha a

3, b

si applica

Il metodo Tn

non è applicabile

principale

2T n/2

alla ricorrenza

n 1g n,

anche

se presenta una forma appropriata a 2, b 2, f n n 1gn e n - n. Poiché n Ign è asintoticamente n, sembra che si possa applicare fn il caso 3, più grande di n b manonèpossibileperchénonloèinmodopolinomiale.Ilrapportof n ln , nlgh ln Ign è asintoticamente minore di n per qualunque costante e positiva. Conseguentemente. ia ricorrenza

ricade

nell intervallo

tra il caso

2 e il caso

3. Si veda

l Esercizio

4.4-2

funzione

Usare

il metodo

principale

per

dare

un

limite

asintotico

stretto

alle

senza

4.4.1

a.

Tn

4T n/2

n.

b.

Tn

4T n/2

n

Tn

4T n/2

n.

Il

te mpo

Tn

di

esecuzione

7 T n/2

Un,altro

valore

Usare

il

Tn

T e/2

di

un

algoritmo

A è descritto

dalla

mea odo 8- 1

A ha un tempo intero

di esecuzione di T n di a tale che A sia asintoticamente

aT

ricorrenza

n- Qual n/4 più veloce di A

è il

che la soluzione principale della ricorrenza per mostrare della ricerca binaria 1.3-5 è T n si veda l Esercizio O lg n .

Considerata la condi ione di regolarità e f n/b , che è prevista nel caso P aso 3 al d- teorema principale, funzione sod f n che soddisfi tutte le condizioni eccetto la condizione di regolarità.

di questo sia assolutamente

cf n per qualche costante r I. si dia un esempio . di una semplice s ic del caso 3 del teorema princip ile

per

aT n/b

sotto

l ipotesi

esatte

potenze

del teorema

parte della dimostrazione

Tn

analizza

principale

la ricorrenza

principale

45.5

fn, essere 1, dove b non deve necessariamente esatta di f che n sia una potenza la di risolvere il problema riduce il tre in lemnai articola primo si L analisi un intero. sommatoria una contiene che espressione un di valutare al problema ricorrenza principale i primi mette insieme il terzo lemma i limiti su questa son matoria determina il secondo una n sia cui in caso nel potenza del teorema una versione principale due per dimostrate esatta di b.

4.2

Letttma Siano

4.3-4

che

O n- . A causa è Tn che possa essere dimostrato su domini asintotica la notazione tipo, non sarà mai usata che lo si sta facendo. chiaro dal contesto

superiore

limite

Dimostrazione

La prima

.

n -.

algoritmo

più grande

42-3

n

altrimenti,

seguenti

ricorrenze

4.3-2

1,2,4,8,...,

fn $n-

nel qual caso il miglior conseguenze di drastiche limitati

cosi

definita

essere

potrebbe

per una

Esercizi

principale

4. l per i lettori Teorema del teorema principale la dimostrazione contiene Questo paragrafo il teorema. applicare dimostrazione la per comprendere necessario è Non più interessati. principale 4.5 , la ricorrenza di due parti. La prima analizza consiste La dimostrazione l, 1, cioè per n esatte di b sia definita solo su potenze T n che semplicità assumendo per il a comprendere necessari perché intuitivi i concetti tutti fornisce b, b- , ... questa parte interi a tutti estesa essere gli l analisi possa è vero. La seconda teorema parte mostra come di tecnica matematica per gestire base nell applicazione semplicemente e consiste n positivi e tetto. leggermente sarà usata in modo asintotica la notazione talvolta In questo paragrafo, solo su potenze definite sono che di funzioni il comportamento improprio per descrivere che i limiti siano richiedono asintotica di notazione che le definizioni esatte di b. Si ricorda di b. Dato che le solo e non potenze per sufficientemente grandi, dimostrati per tutti i numeri 0, l.... , b i che si applica all insieme asintotica notazione una nuova definire si potrebbe è non uso improprio grave. invece che a interi non negativi, questo su un asintotica si usa la notazione fare attenzione sempre quando bisogna Tuttavia, che la dimostrazione Per esempio. scorrette. conclusioni trarre non limitato dominio per la infatti O n , T n che non 2 esatta di garantisce n è una potenza On Tn quando

soluzione .

4.3-I

teorema

del

Dimostrazione

a

l e b

di h e si detmisca

1 due Tn

fn

n esatte

su potenze

f 81 aT n/b

e f

costanti

se

n

se

n

l, b

una

funzione di b con

non

negativa

la ricvrrenza

definita

su potenze

esatte

63

Ricorren e

62

4

Capiioh

--

fn

dove

i è un

intero

log Tn

--

----- ---- --------

-

--

---

-i

fn

allora

positivo n-I

8n

a

.

f n/b

g

4.6

j0

Dimostrazione.

Iterando

Tn

la ricorrenza

si ottiene

log

n

f n/b

A4 0

f n aT n/b a f n/b

fn

a f n/b

fn

Poiché

a-

n- ,

l espressione

dii

a-

n

loEo

y

$loS n-

usando

I

I

I I

r

l I

l

I

I

I

I

I

a

I

I

I

0 1 .... Il,.

O II

f n/b

l I

I

f n/bI

f

I

r

I

loS n

y

I

a-T n/b -

----- i

f n/b

f n/b

condizione

la

p

al

contorno

T1

del

termine

l ultimo

81,

Y

01

81

01

01

01

OI

01

01

81

01

81

Totale.,

Oz

enta log a

n

log

p

I restanti

termini

fl

a

g log

essere

possono

espressi

f n/b

dei

L

ricorsio ie

di n

con

costi

albero

nlben 4.3

Figura coi rpleto

è clara

nell

equa

cui

Il

a log i.

ione

la

per

ge erato

e alte

foglie

ricorren a di

casro

aT nlb

Tn lii

ogni

f

è n ostraro

elio

sulla

è a-ario

L

n.

e la

destra,

deriva In un dog np

p

i p

g

algoritmo

di tutti

f /7/g ,

divide-et-impera,

in sottoproblemi

prnblema

n - i,

gli

l,

di dimensione

sottoproblemi

i,

è 8u

della

di tutte

Il costo

ricombinazione.

loro

il costo

rappresenta

somma

questa e della

In termini completa

cui

la dimostrazione.

su

L albero

Prima

di proseguire,

usando

un albero

ricorrenza

nel

l albero

fioli

radice.1n di

42.

Lemma

ha a sua

ogni

ad

foglia

radice

se da a figli

81.

un

di vieta

costo

fo

ni toglia

f

ed

fn,

i livelli

è il costo

che

.

specialmente ciò

matematico

ir/Ir ,

ci sono

quindi

j della

radice.

non

della

sommatoria.

dalla

dell albero,

3

nell equazione divide-et-impera.

casi

i tre

dominato

1

dal

dominato

descrive

4.6

del

teorema

dal

costo della

costo il costo

foglie,

2

passi

di divisione i limiti

fornisce

Si

costi

log n-

tle111 su

tutti

tl

tlglltQ. di

i livelli

l a f n/b

j0

l equazione

ottenere

può

.

CostO

quando

si utilizza

è richiesto .

Ognuno

Siano

a distanza

2 dalla

f tlb .

Il costu

poiché

ii/I

di

1.

a

l e b

Una

I due

fuhzione g n .

II

lOg

s

nodi

sommando

interni

Ilc Cli è

itltertli

i del

costi 1i veli 1

o ni

di j

i

af

livello Ir/h .

sulla

nazione crescita

4.3

1.

lie.

4.6 Jet

e ricombi

asintotici

costanti definita

e f su

ir

una

funzione esatte

potino

negativa

non di

b

nel

mo

definita

ll

tot l e

di i

pUil

f n/b

g

Casere

potenze

esatte

I 4.7

CAI1V.

dell slbero, C Cfuillcti

su

seguente.

g0

mostrlto

distribuito

parimenti

radice.

dei

lemma

11 prossimo

ai casi

comspondono

principale delle

costo

con

ha costo radice,

è

della

iterazione

ognuno

a- nodi

ed ognuno

log n

è distante

algoritmo

di ricorsione,

dell albero

precedente

all

ha a tigli.

di un

Lemma

intero,

numero

a distanza

e o i

corrispondente

l albero ha costo

un

punto

con

a nodi

a i

ad

la dimostrazione

intuitivamente

nsostra

dell albero

a come

volta

è T1 vi sono

Fig.4.3

anche

vi sono

generale.

Nell albero

La La

pensare

di ricorsione,

di questi

di giustificare

cercheremo di ricorsione.

Conviene

n/b .

f

tutti

totale

La sommatoria

ricorsione

di

di albero

il costo

del

suddivisione

le foglie,

j0

che

sonimn

4.6 ,

pQ

da

a f n/b

g j0

la sommatoria

con

ag n-i a

lago n-I

limitata

asintoticamente

per

pnie vre

esatte

di

b

cnnii.-

serque.

in

1.

Se f n

On4

2.

Se f n

On-

3.

Seaf n/b

cf n

costante

per qualche ,

allora

e 0,

On4

gn

Sostituendo

gn

Dimostrazione.

Per il caso

Sostituendo

costante

perqualche

c

l e perogni

On o,-

1, si ha f n si ottiene 4.7

nell equazione

n

b, allora

, che implica

v

f

9n

log n

n

1gn ,

Ofn .

gn

O nlb o ,

.

e il caso

a,

g

4.

esatte ha a f

Esplicitiamo

la sommatoria

e calcolando

la serie

interna

-,

alla notazione crescente

geometrica

O portando

fuori

un fattore,

semplificando

si ottiene

4.9

cf

n/b

t

dalIa

s,

c

costante

per qualche

di g i

4.7 n

b, si

geometrica,

ma

l e per ogni

n.

nell equazione

diversamente

cf n

che af n/b

nella definizione

compare

Poiché f n

analogamente.

l ipotesi

di b. Sotto

Sostituendo

ottenuta

dimostrato

log nd

IOgp

nell equazione

alla sommatoria

2 è dimostrato.

Il caso 3 viene gn O

espressione

questa

g n

86

gn

allora

á5

nenze

Rico

serie

decrescenti

ha termini

1, questa

una

si ottiene

e semplificando

4.7 del caso

serie

I

f ,l

g, j0

logn n-

I

iole n-

l

log a-e

c fn jG

. log,,

n

a-e

-

log a-e

fn

c

g j0

fn Poiché

b ed

Sostituendo

e sono

costanti,

l ultima

espressione

questa

espressione

alla sommatoria

si riduce

nell equazione

a

On

r i

4.8

ofn , On

.

si ottiene

On

gn e il caso

poiché

c è una costante.

Questa

dimostrazione

l ipotesi

che f r, nell equazione

Sostituendo

fin

8

S limita

4

8n

per il caso si ha

4.7

2, si ottiene

che f n/b

O n/b

-,,

.

a, g

,g

la sonunatoria anzi

geometrica,

4.9

dentro

si scopre

il 8 come

che ogni

dog n-I

E

esatte

8f

n per potenze del lemma.

di b.

1 è dimostrato. Possiamo

Sotto

che g n Di qui si puo concludere la dimostrazione del caso 3 completa

log n-

,

nel caso

termine

I

z

della

1. ma questa sornmatoria

vofta

non si ottiene

esatta

Lemmu

4.4 l e h

I due costanti

Siano

a

di b e si definisca

una serie

Tn

feti

es atte

in cui n è una

p er il caso

i è un intero di b cnme

l, b,

n

positivo. segue.

su potenze

definita non negativa e f n una funzione esatte di b con la ricorrenza su potenze n

fn

aT n/b

dove

principale

di b,

esatte

è lo stesso

del teorema

versione

una

ora dimostrare

potenza

Allora

Tn

puci essere

limitato

asintoticamente

per potenze

j0 log p 6

I.

e-I

Se

fn

On

Se

Jn

8n

,

per

qualche

0,

cnstante

e

6n

1gn .

nllnra

Tn

jg gIOgp

Q

u l

,

aIIora

Tn

per ,

qu ,1che

g0

n

log ,

n .

3.

Qn

Sc.f n cCOS. .,llltC

eC.

C

I

t..

pCI

O Ill

11

costante -

SUIT1CIClllCI11CAlC

e

0, e se af

OZI-Jll. ii d, C... allora

n/b Tn

cf

n

O fbt

per

qualche .

áá giro

Dimostrazione. lemma

Useremo

4.2.

Per

i limiti

il caso

stabiliti

dal

lemma

4.3

per

valutare

la sommatoria

del

4.6

1, si ha

I x1

la disuguaglianza Tn

8n

.x

1, si ottiene

Llog,n

J, si ottiene

sia

nil talech l a

di iterazioni

il numero

è di determinare

obiettivo

Il primo

0n ,

8n

n,

n

n

e per

z

il caso

Q

g n Ogb

n

l,

n,

2

o

El ni a

8 n b Ign

g

np

n

l

n ,

b 1,

Perilcaso3,lacondizioneaf nlb Di

cf n

implicachef n

Q noti.

Si

vedal

b

b

b

4.4-3 .

l

l

n

.

Esercizio

conseguenza

7-

g lag a

In generale,

gfg

f

n,

4.4.Z

Base

e tetto

j0

b

n

Per

completare

situazione sia

in cui

definita

Tn

e

la

dimostrazione

nella

su tutti

ricorrenza

limite

Tn

superiore

ricorrenza

Si

in modo nel

su

usati

base

esatte

potenze

e tetto, di b.

Un

estendere in modo limite

l analisi che

alla

per

infatti, e il

sarà

presentato

sugli

come argomenti

ottenere

per

limite

tecniche

4.10 ,

ricorsive

la ricorrenza

iterare

ora

Si può

n

1

bl f

b

01.

ottenendo

4.10 ,

f nq

aT n

f nq

a fn

a T nq

f np

a fn

a-

4.11

richiede cosi

i

quando

Tn

caso

la ricorrenza

applicazioni

e quindi,

la ricorrenza

inferiore

4.10

semplice

primo

4.10 ,

itera

solo

deve

per

4.11

ricomnza

sono

principale e non

si

principale,

fn

si ottengono zr/b

teorema

fn

aT n/bJ

t nlb1

interi

gli

aT fn/b

un

del

1

b

bi

il risultato n/h

Lnlbj a ialoghe solo

già

nel

a quelle

per

il lemma

per

Limitare la

limitazione

si può

usare

il limite

inferiormente superiore

8 rt

4.2

Tn

a

n-

jiog nj

n

ogb

della

f n,

f n jog

la

4.13 a

g

limite.

quest ultimo

fatto

desiderato,

secondo.

a

f n, ,

j0

si ottiene

una

sequenza

di

simile

cche e è molto

seguenti

soltanto

esatta

una

potenza

ora

valutare

doveve

4.6.,,

all equazione

n puuò

erò però

es essere

un

intero

qualunque

e non

di b.

n,

Si

f /b1,

può

Ifn/bll 1,

i

tog n -

sn

tfr /b1/b1zb1,

la sommatoria

4.l4

f

g i-o

dalla

Si

denoti

l i-esimo

n n

i/b

elemento

se

i 0,

sc

i

della

sequei z

con

n,

4.là

in

modo

a11a

analo ao

del

dimostraziune

n

dove

ern

4.3.

lemma

b

u n eriliaso iihaf n 0

.

4.l2 cchef ne O ll i

lKl

O

ll

Il

2

l

llorollprovidelcaso2dellemma J

l

,

l èunacostante,

1 ,dovec

bl b

i

sesiriei t .I11111il

. an ill

bI

59

Ricorrenze

osservi

che

costante

e

Llog nJ

j

0 tale

implica

che

n

per

b ln

1.

Il

limite

sufficientemente

Ono,

fn

implica

che

esiste

vale

grande,

Tn

7T n/3

n.

Tn

7T n/2

n -.

Tn

2T n/4

n.

g

Tn

Tn

h.

Tn

T n

una e.

f. lOQQ g

.

c

fn

1

b

bi

. .. ..

.-

infatti

c1

del

quella Sono Per

h

1 4

b

identica.

La

è una

chiave

cosi

i limiti

caso

dimostrati

inferiori

il limite

2, malgrado

i limiti

il caso

quindi

è di dimostrare

comspondente

stati

costante

la dimostrazione

del

La

On

fn

i calcoli

superiori

2 è dimostrato.

algebrici

teorema

con siano

principale

del

prova

una

complicati.

per

qualunque

1

simile

prova

più

caso

a

in tempo

On.

4-3

Costà

4.4-2

un espressione un

Mostrare come

che

che che

8n

n

Te

8n

un

Ig n , o

g

n,

per

che

dove n.

de11 equazione

k

Per

4.12

numero

qualunque

0, allora

semplicità,

per

i caso

in

reale.

la ricorrenza

che

limitarsi

all

analisi

di poten-

la condizione esiste

del

di regolarità

una

costante

e

3 del af

n/b

0 tale

che

teorema cf f

n

per Q

n

sono

principale qualche

,

eccessive,

costante

nel c

array

è passato

tramite

2.

Un

array

è passato

per

3.

Solo

l, implica

l algoritmo

ordinato

veda

ricerca

binaria

metodi

descritti

b.

Esempi

Dare

limiti

Tn

sia

di ricorrenze

inferiori

costante

per

n

per

2. Definire

a.

Tn

2T n/2

b.

Tn

T 9n/10

n.

c.

Tn

16T n/4

n

n

Tn

per i linsiti

ognuna piit

delle stretti

seguenti possibile

ricorrenze, e giustificare

assumendo le risposte.

che

inferiori

limiti

costante

per

rr

a.

Tn

3T n/-l

b.

7 t

37

a

per

di tre

p

buoni

procedura

chiamata

q

di

per

quando

gli

limitai

superiori

alle

e con

originale

dell array.

passati

soluzioni

paragrafo

è passato

array

passata.

numero

in

di

esecuzione

usando

ognuno

tempo

n la dimensione del

MEac -Soet

l algoritmo

un

trovare del

sono

arniy

stesso.

W è la dimensione

è la porzione

ricorrenze

le

Dare

è valida

l array

di parametri

alla ..

ricorsiva

binaria

ricerca

dove

procedure

ipotesi

81.

richiesto

8 iV ,

Ap

e non

di passaggio

Tempo

dove

Quest

all array

puntatore

necessario 1

di N elementi.

strategie

richiesto

problema

di un

array

un

della dei

tre

Indicare

ricorrenze.

delle

per

sottoproblema.

1.3.1.

di ricorrenze e superiori

per i limiti

8. Definire n

n/3

un

puntatore.

peggiore

del

passato

1.3-5 .

e dare

prima

esempi

Altri

Dare

di

caso

nel

passato

essere

l Esercizio

la parte

Ripetere

.

.

mancante

di

le chiamate

durante

parametri un array

Tempo

Oq

N la dimensione

4-4

e superiori

si

il suo

potrebbe

richiesto

dei

implicazioni

valore.

che

il sottoarray

Considerare

.

Problemi

le

Un

senso

viene

in realtà

esamina

Tempo

se è stato

anche

perché

problema

con

4-I

intero

parametri

il passaggio

che

1.

a.

caso

dei

passaggio

costante,

sistemi

molti

valore.

le ipotesi

l

determinare

ancora

si può

operazione,

questa

si assume

tempo

ha

principale

del

il libro,

Questo

di b.

Mostrare

4.4-3

e precisa invece

positivo

se f

soluzione

ze esatte

*

semplice

intero

solo

tempo

un

richiede

che

di A i ,

bit

il j-esimo

di

e la soIa

in binario.

rappresentati

di A sono

quali

elemento

intero

a un

è analoga.

in

b sia

se si usa

che

richieda

Dare

accedere

registrare

per

n.

Esercizi

cui

si può

n

costante.

In tutto

4.4-1

è

accedervi

per

permessa

elementi prendi

gli

8 0.

determinare

facile

Sarebbe

ausiliario

non

però,

problema, infatti

operazione,

array

uv

usando

uno.

0 a n tranne

da

interi

gli

On

tempo

in A. In questo

singola

operazione

tutti

contiene in

appaiono una

Mostrare

intero

n

mancante

numeri

mancante

/ iirtero

..

Al

array

Un

i intero

A con

è quasi

l.

Trovare

4-2

n.

1

5

Ig

11.

n/

.

ognuna più

delle stretti

seguenti pnssibile

ric orrenze, e giustificare

assumendo le risposte.

che

Tn

sia

70

Capitolo

4

c.

Tn

2T n/2

d.

Tn

Tn

7I

e

Ricorren

n/1gn.

I

i

I/r .

Ks

-0.61803....

2 e.

f

Tn

Tn

Tn

/n

1

Ig

n.

c. T n

che

Mostrare

n.

Estensione

dalle

Spesso

si riesce

a limitare

Questo

problema

fornisce

a.

Siano

T ii

n è una

e hn

potenza

crescente b.

Si

nel

per

n

due

funzioni di una

di

che

avere

n,,

dove

Tn

monotone costante

per

ricorrenza

è monotona

e si supponga

Provare

crescente

costante

a tutti

che

Tn hn

n

che

Dimostrare

d

0.

del .

crescente

Usare

teorema

a

dove

iniziali

siano

a T n/b

il lemma

principale

perii

fn

1 e f

1, b date

da

Tn

. Dimostrare

n

caso

in cuif n

che

Questo

considera

problema 2.13 .

Fibonacci.

La funzione

Fz

Si

sia

la tecnica

proprietà delle

monotona

o

generatrice

serie

dei

numeri

di Fibonacci,

generatrici

di potenze

che

fonnaEi

sono

risolvere

per F

è definita

definiti

la ricorrenza

z

a.

Mostrare

che

b.

Mostrare

che

z-

Z,

Fz

z

3z

Fz

Sz

8.

13 ,

21z

è attivato,

sono

pz 1

-

un

Conclusioni

B dice

Il chi

sono

Entrambi

8 è funzionante

A è guasto

almeno

uno

è guasto

B è guasto

A è funzionante

almeno

uno

è guasto

B è guasto

A è guasto

almeno

uno

è guasto

sono

o entrambi

funzionanti,

A è funzionante

guasti

z F .

che

Mostrare

se

di

più

quali

a coppie.

controllo

n/2

sono

chip

una

Assumere

guasti

un singolo

chip

possano

inconfutabiln1enw,

può

cospirare

tipo

su questo

basata

strategia

qualunque

i chip

che

non

il professore

guasti.

usando

i funzionanti

sono

il

imbrogliare

per

p

, .

professore. b.

di n/2

siano ad

il probli.ma c.

uno

che

assumendo

2 di

cotstrolli.

più

di dimensione

funzionanti di

iil2

funzionanti.

a coppie

chip,

che

assumendo

sono

sufficienti

8n

controlli

a ridurre

dimezzata.

pressoché

possoiso sono

trai

funzionante

controlli

cheLnl2J

Mostrare

fut zionanti.

i chip

che

Mostrare

numern

di trovare

il problema

Considerare più

1.61803...

di un da

risultanti

...

dove

i vs

buono

la risposta

ma

risposte

possibili

B è funzionante

di l

le quattro

il

Quando chip

Un

o guasto.

o guasto.

è funzionante

chip

di controllarsi volta.

alla

chip

due

se è buono

e comunica

Pertanto.

affidabile.

verifica

seguenti

A dice

Il chi

a.

1

professore

se l altro

sicuro

essere

in linea

del

in grado

sono

di principio

che

l altro

verifica

chip

ogni

può le

Z

e

di controllo

in modo

non

guasto

VLSI

chip

ha

sempre

determinare

4

VLSI

chip

z

-

0.

di

come

i0

0

Suggerimento

dalla

i

F

di

Diogene

dispositivo

4.4.

funzioni

i

per

p

Il dispositivo

l altro.

l un

controllo alcune

userà

F,

Controllo

4-7

di Fibonacci

ricorrenza

vicino.

più

T ii

chip Numeri

all intero

0, arrotondato

i

per

è

gn

comunica 4-á

qV/d5

che

Dimostrare

Il professor

la dimostrazione

F,

hn quando lentamente

sia

crescente.

Semplificare lentamente e

p z

Ohn .

n,

f

i

$

b.

intera

i reali

e. Tn

le condizioni e g

una

che

inoltre

che

aT nlb

che

di

il limite

1. Si supponga

Tn

inoltre

esatte

estendere

crescenti, b

g ,o

i reali

potenze

per

O h n/b .

Supporre

gn

a tutti

sufficienti

hn

la

intero

ricorrenza

esatta

crescente.

è monotona c.

una

un

condizioni

senso

supponga

monotona

di

potenze

i

i

Pz 4-5

identificati

essere D

ire

e risolvere

cnn la

ricorrenza

che

a

coppie,

descrive

il

Note

al capitolo

Le

ricorrenze

hhanno I P

furono il nome.

ppreso

4-6-

ob1 J,

C

generatrici.

Il delle

De

fin

e

Ofrliscono

lavoro

di

1202

metodo

L.

le e

Fb

è adattato

contiene

usando una

d 4.4-2.

il

di Fibonacci

eneratri 8

funzioni

llell Esercizlo

lineari 164

l e i numeri

I

delle

principale

presentato

ricorrenze

Brown

d

il metodo Il metodo

esteso

risolvere Purdom

da

introdusse

le ricorrenze. il

come

dsI

M Moivre

o.. per 1...risolvere

mostrano

risoIuzione

studiate .. A.

metodo

discussione

d

B

1 Kll

Hak h

delle estesa

121

funzioni sulla

ricorrenze.

capitoli

Nei

delle

panoramica ed

grafi

5.1

sono

precedenti

Il lettore

alberi.

materiale

su questo

preparato

capitolo

Questo

funzioni, il capitolo.

a sfogliare

limitarsi

può

una

presenta

relazioni,

di insiemi,

elementari

e proprieth

notazioni

già

di analisi.

elementi

introdotti

stati

definizioni,

Insiemi

S che

insieme

scrivere

di S si può

caso

in tal

elementi

B

A

A e B sono

uguali

pu6

2, 3,

l,

esempio,

per

speciali

notazioni

le seguenti

lo stesso

oggetto

alcuni

insiemi

contiene

alcun

per

contengono

2, 3

1,

l . usati

saranno

che

stessi

gli 2,

3,

ed

volta

di una

più

se essi

1

è un elemento

4 non

che

S, e dato

2 c

contenere

l, 2,

S

scrivendo

definito

un

esempio,

per

graffe

parentesi essere

scrivere

insiemi

Due

ordinati.

si scrive

si adottano

libro

Nel

non

insieme

S. Un

sono

non

elementi

i suoi

4 e

di S. ci puo

elemento

2 è un

che

dato

Inoltre,

3.

scritti

un insieme

descrivere

S. Si può

e

tra

l, 2 e 3. può

i numeri

esattamente

contiene

elementi

suoi

dei

elenco

l esplicito

attraverso

legge

5 si

di 5, si seri ve

è un elemento

non

è in 5 sere

brevemente, x

insieme

di un

elemento

x è un

oggetto

x e

S. si scrive

Se un o elementi. membri x di S , o più k un elemento

chiamati

distinguibili,

oggeni

di

collezione

è una

insieme

Un

più

frequentemente

l insieme

degli

R

denota

l insieme

dei

numeri

reali.

denota

l insieme

dei

numeri

naturali,

tutti

Se xe

B,

gli

di un

elementi

allora

si

A c

scrive

di 8,

sottoinsieme proprio c la relazione per indicare valeAaA insiemeA Perogni tre

A, Be

insiemi

insieme

B c

definire

l insieme sono

autori

Alcuni I. CIA

0.

se A c

una

A stabilendo

letti

dei cnme

iniziano

i nu

nunteri tale

i eri

me,

per

due

Be

B c

che

noiunli

pari

con

1 aniicbi

w B.

A c

v uiuri

con .

dato

un

insiemi idui

gli

elementi

.r z

Z e x/2

usann

ima

l.a

lemki1zu

è un harra

m wlerm

A

insieme

di sottoinsieme solo insieme

insieme di 8. intero verticale

iemhra

seA

proprio . c

B e BcA

A si ha che A, si può Per

csccre

8 A.

pn to

quella

un

definire

si può

esempio.

in questa al

è u

il simbolo

usano

autori

Bsee ogni

A implica

se x c

un

B

Alcuni

per

C

.

cioè.

8,

la relazione

che

... .

...

di

sotto insieme

B mA

invii

2,

insieme

A e B, siha4

altri che

Alnwsi

m

è un

C, allora

propriet, i

in un

piuttosto

insiemi

mediante

interi .

A

B. se A c

l,

0,

elemento.

l, 2,

0,

l insieme

contenuti

che

dice A c

di sottoinsie

insiemi

descrivere

Si pnssono

i

C.

e si

B

scritto

-2,-1,

...,

cioè

A sono

insieme

non

he

l insieme

cioè

interi,

X denota

N

per

l insieme

cioè

vuoto,

l insieme

denota

notazione . dei

ùi

iniziare

gap

j

Dati

due

insiemi

operazioni

su

A

degli

8

x e

.r

unione Lu

degli

AuB d ff

si

oss ono

eren

insiemi

A e x e insiemi

definire

nuovi

insiemi

anche

applicando

I e seguenti

a

tra

A e 8 è l insieme

due

A e B è l insieme

8

operazioni

Proprietà

sugli

insiemi

dell insieme

rispettano

le seguenti

la

illustra

che nn

con

pinno

u

A-8 di

legge

prima

DeMorgan

A,

insieme

5.2 .Ciascan

cerchio.

A,

A

An8 , Au A.

AuA

Idempotenza.

Le

8, U. di DeMorgan

leggi

A. B c

insiemi

A.

5.2

i complementi

con

riscritte

essere

possono

di

coppia

ogni

per

si ha

U.

AnB Au8,

AuA A.

B A B.

Av

Commutatività

8. senonhannoalcunelementoincomune.cioè.seAnB

DueinsiemiAeBsonodisgiunti AnB BnA, A u

A-C

o leggi.

proprietà

vuoto AnA

A nA

nel

è rappresenrato

e C

Venn

di

diagramma

Un

5.1

Figura

C

A- Br

8nC

A

8. insiemi

QC

Q QQ

A e B è l insieme

B .

Aoxc

x .rc

La

e B

insiemi

L intersezione A n

Le

75

e a ni

Insiemi Cdpil

B

collezione

Una

BuA.

A n Bn A v

A

C C

v

B

nB A u

B

n

C,

u

C.

s

S

S.

cioè.

disgiunti.

n coppie

e

8

a

5

implica

S e

insieme

di un

partizione e i c j

,

5

e

è S. cioè

unione

la loro

ana

forma

vuoti,

non

di insiemi

S

ono

insiemi

gli

Associatività

S

ps, S,gS

Distributività. ln altre A n

u

B

C

A

n

8 ,u

A n

C

, 5.

Assorbimento

Leggi

u A n di

l

B

A,

8

AS . Due

B

n

C

A

B

u

C

A

B

u

A

C,

A

B

n

A

C.

i DeViorgan

p

cmga eG -gli

insiemi

B

rso D i, a

ora

che

è illustrata f..iva ne ,, si stanno

per esempio, insieme

i un insieme

nella

l qquale 1la

-.

considera

figura

5.1.

usando B

un dia

i i gliliinsiemisonoraftieuraticomere .. r.n d osnnosottoinsie . .

se sistanno

considerando

Z è un

universo

A come 1

U

a A

ro ero-ni

P

B

A u

i on i d e I piano. DB

B

Dat .

o un

n eA

A

universo c

U,.iihannc

cui

8

A

-A

n

l insieme Per

numerabile.

è non

l identith

vale

5.3

B, che

concludere

si può

con

stainerabile.

non reali

R dei

l insieme

mentre

uniti,

si dice

altrimenti

si dice

altrimenti

finito,

la

Se

0.

8

biunivoca

in corrispondenza

rumerabile,

è

B

Up

ire,,n n u. ,,-o riato.

da

B

l insieme

allora messo

essere

è numenbile,

interi

A e B di insiemi

coppia

ogni

Per

puo inferito

si dice Z degli

l in ieme

esempio.

che

si dice

essere

possono

vuoto

dell insieme

cardinalità

naturale,

è un numero

infinito

naturali,

numeri

la

dell insieme

elementi

se i loro

cardinalità

la stessa

hanno

o dimensione

cardinalità

è chiamato

insieme

insiemi

biunivoca.

insieme

Un

infu itn. N dei

A

S p, esso,e

elementi

da

di un insieme

cardinalith

DeMorgan

di un

degli

corrispondenza

in

messi

A.

in un

esattamente

di S appare

elemento

di S se ciascun

partizione

S.

Il numero eà è denotato

A nA A u

c

S

AuB n Avg.

Au BnC

una

forma

S

parole

lese

u A

Se

U. si defini. uenti

8

A B

e

allora

dis iunti.

Buono

A

n

BA

0

e

A

quindi

u8

A

Se

8.

Al

ill iei U1s

di

L insieme iliiso. ,8.

i c, .

i

tutti

denotato b.

,r.

b

di

sottoin iemi

da

2

.

L

ed insienlc

i

k cleilldlltl

di

è

chi nato potchla

rn

l,

f insieme di

un

è chi 1111QLO

l-insieme

k-sottoinsiente.

Chiamato

iniicme

un

r-insieme

talvolta

è chi amato

e1ementi

M lt0111Sieme

Ull

SlllgOIC EEO

n

di

tinito

insiell3e

allora

c8

a

poten itliienle

vuoto

l insiemc

inclusi

lillitO

di S

5 ll,.l

per c,.lrJin..llitl

e

ecempin.

S

l iniiense 2

Spesso

si considerano

esempio,

una

formalmente è uguale

ordinate di B

come

coppia

ordinata

cartesiano

tali

che

simili

ordinata

definita alla

Il prodotto

strutture

coppia

di

l insieme

il primo

a,

nelle

elementi

a

b

a,

a,

gli

elementi

e b è denotata

con

quali

b

sono

ordinati

b

a,

e può

la coppia

ordinata a,

è l insieme

di tutte

quindi

per

5.I-á

b

A e B, denotato

della

coppia

da Ax8,

è un elemento

di A ed il secondo

l insieme

che,

per

dei

dispari

numeri

è numerabile.

Mosuare ci sono

le coppie

2

insieme

ogni

sottoinsiemi

S finito,

l insieme

2

potenza

ha

2

clementi

cioè,

di S .

distinti

è un elemento

formalmente

più

5.1-6 A x B

b

a,

Peresempio, insiemi

che

non 5.1-5

insiemi

elemento

Mostrare

essere

a.

b,

di due

ad insiemi,

due

a c x

fa,b finiti,

A e b e

Dare

8.

una

definizione

ordinata

a,b,c

fornita

induttiva

da11a

estendendo

n-upla,

di

degli

teoria

la

di

definizione

coppia

insiemi.

a,a , a,b , a,c , b,a , b,b , b,c .guandoAeBsono

la cardinalità

deI

loro

cartesiano

prodotto

è

gxa g - a

5.2

Relazioni

5.4 Il prodotto

cartesiano

A,xA,x la cui

...

tutti

singolo

xA

A ...,

a,.c

A

A.,

i

è l insieme 1,2,

...,

di n-uple

Se

jA,

.. fA

jA,

sono

insieme

b

a,

finiti.

A con

Si

il prodotto

cartesiano

ripetuto

n volte

di un

è un

la

che

b

a,

si dice

a R b. Quando di A x A. Per

sottoinsieme

N e a

a, be

di A, X A X

...

del

A e B è un sottoinsieme

insiemi

scritto

sarà

R è un

sottoinsieme

b.

su A,

binaria

relazione minore

la relazione

esempio,

A x B.

cartesiano

prodotto

R è una

che

di

sui

numeri A,

Unarelazionen-ariasugliinsiemiA,.A ...,

X A,

l insieme relazione

Una A

R su due

naturalièl insieme denotare

può

birraria R, talvolta

e

si intende

x A,

insiemi

rela--ione

Una

n,

è

... gli

A,,

a,,a ,a

cardinalità

A, x A x se

di n insiemi

binaria

R c

A. Per

esempio

A x A è riflessiva

se

AxAx...xA, cui

cardinalità

sequenza

è AA

finita

se

jAf

di lunghezza

n

a Ra

A è finito. veda

si

Una

n-upla

il Paragrafo

essere

può

anche

vista

come

una

5.3 .

per

tutti

è. La

a e

gli

relazione

e

R è siininetrica

su

riflessive

relazioni

sono

N,

non

mentre

lo

se

Esercizi a R b implica

5.1-1

Disegnare

5.1-2

i diagrammi

Dimostrare finita

di Venn

pertutti che

illustrano

la prima

proprietà

distributiva

5.1 .

delle

leggi

di

DeMorgan

per

qualsiasi

A

A

per

A

A

A

uA

tutti

A

A, vA,v...

a, Una

A

Dimostrare

la generalizzazione

inclusiosre

ga

Ch

Q

ed

b, c e

A. Per

b

a, b c

N e a

relazione

- ,

le relazioni 1

riflessive,

non

e

lo è, in quanto

sono

è una

e transitiva

simmetrica

la relazione

mentre

transitive,

3 R 4 e 4 R 5 non

3 R 5.

implicano

- A,

J,

dell equazione

5,3 ,

che

è chiamato

principio

di

esempio,

. h e

a

h

se

si definisce

A e a R b, R

n,

di tutti

I insieme

cioè b

a,

b c

N

e a

gli

elementi

b è un

numero

ad

equivalenti pari

.

a.

Per

R è una

allora

.5,7,...

aiA,

Un

a f

aA na,

A, AA

J

...

per

tutte

le coppie

per

tutte

le triple

teorema

delle

base

Teorema

...

elevasi

5.f

è il seguente.

di equivalenza

rela ione

Unn

di

eqscivatei

a

con

coincide

rna

purti ioide insieme

-I

Per

di equivalenza.

relazione

iA,uA u...va i

CENTRALE

P

sia

b

vA,

eselusioire

A,f A, . BIBLIOTECA

che

esempio,

À

gEIg

g

a R c

glia,

I insieme 5.1-3

se

collezione R

Larelazione

nonlosono.

e

A. Peresempio èsimmetrica,mentre

s

glia.b

R è transitiva

a R b e b R c implicano

la generalizzazione

di insiemi

A,uA,v...

b R a

fA,nA,n...nA, .

equivalenza

su

A

in

cui

le

classi

di

equivalenza

sora

li

insiemi

della

partizione.

A

Dimostruzione.

Per

la prima

equivalenza

di R sono

è riflessiva,

a s

elemento

a e

e quindi

a

da

che

stesso

insieme.

Partendo

modo

Per

su A. La

di equivalenza

non

di equivalenza

a,

di

equivalenza

un

c

della

a

cui

per

e

A

eh

è soddisfatta,

dato

vuote,

l unione a coppie

e tre

elementi

gli

Per

osservi

che

sono

vedere

se ac

nello

che

a e

A

stesso

alloraxe

a.

ognj

si ha

che

fatto

relazione

binaria

a R b e b Ra

R su

implicano

un

a

Dj

5.2-4

A

una

A,

esempio,

implicano mento

che

relazione

a

b.

tutte

Per

esempio,

le persone

In un

A

implica

a R a

e quindi

la simmetria

a R c per sono

partizione A,

ex

nessun

elemento

ci potrebbero none Un se per

è una

y e

messa mentre in quanto

in

su cui

l ordinamento

A sf avrà diverse

singola

scatola

A

cui

classi

è soddisfate, R beh

anche

gli

relazione

la relazione

A

implicaxc

la transitività

. Per

si

5.3

individui

non

due

R a, cioè

massimali.v

b

se ogni

coppia

la relazione

ersa

per

è un

ordinamento

non

discendono

totale l uno

sull

valore

numeri

insieme

distinti

. a c

N e b

0,

che

la relazione

di inclusione

parziale

ma

non

w

insiemistica è un

ordinamento

essere

delle

è una

Data

Mostrare è una intero partiziotia

che relazione q

tale gli

per

qualunque

intero

di equivalenza che interi

a-b ..

pnsitivo

sugli q .

In

interi. quali

l

tale

Si

dice

classi

di

che

di 8.

0, b

che

persone

n i cot toinsierni

1

di 7.

1.

equivalente modulo

equivalenza

b

mod

ni questa

con

la scelta

di

8

add ogni

ma

lo stesso

8 e. se

b

a.

eli di si

e f.

di a. di A

elemento

nessun essere

di 8 può

elemento binaria

esempio

questo

a ch è esattamente

naturale

numero

ogni

per

2. Per

a mod

0

1

0,

f

0

1.

f

un

solo

-

ecc.

f

binaria b è pari

dato

che un

c è esattamente funzione

una

A -

f

dominio. sequen-a .pspesso.s

che

ie

eiiitc relarione

i

2n

una

si rappresenta

la ..sequenza al,

cchi

parent ii scrive cchi i,.ima nato la n-urla

bf i

di

tm

it è una

. ., clelia

nrgw rento a,...,.

n

n,2

ff-

di

dominio.

del

e se,

codominio

lo . I stesso

f il cui

funzione finita

sequenza

elencandn

detrnita

di Fibonacci

n

funzione l iri umento

racchiudoiw a.a,.....a

a,.

di f e b è il valore elemento

p er ani si unifica

E

N. tutte

per

in

è l insieme

d ominio i .suoi

valori

i

è l iniieme

2.13 . .

1, ....

0,

f 1 ....,

f0. N dei

numeri

intuita

. q uenza . è la se

0.

... .

13, il dominio

Quando

g. a è l argomento

dominio, .,

lo stesso

i ir

che

scegliendo

ga. di lunghezza

finita

. esempio.

per

I. 2,3,5,8.

c

il suo valore -, . e N, che pern

specificando fn

a,

b si dice

a

se hanno

b

di conseguenza.

in g

entrambe

sono

5

l.

b tale

unico

definire

f a

e

B. se f

funzione

uguali

f e g sono

3

l,

,

n

A m

f

la relazione

esempio

Per

il dominio

2

l . dato

che

N e a

totale.

n, la relazione

di A.

. p ertutti

A è chiamato

si scrive

elemento

un

elementi

su A x B tale

insieme

determinato

distinti

a mod

una f in a. Si i può definire ,. si potrebbe eresempio, erede

uro naturali na 5.2-7

f

funzione

1, non

a

naturali.

dall altro.

su tutti

f. . L

e

b

di f. Talvolta

. f assegna a due

binaria

relazione a,

b è univocantente

elementi

N m

a c

b

a,

Una

ordinamento

che

il codosninio

relazione

la

le a del

Provare

, B tale

b c

funzione

a due

b in

non

lineare

di A può

sui

è corretta

dimostrazione

La

allora

a R b implica

simmetria

per

e tuttavia

o ordinamento

di elementi

a R a.

f è una

finzione

solo

che la

f

V iceversa,

grandezza

scatola

e un

dato

a

f

b

a.

g

è totale

implica

di A è assegnato

.

che

altrascatolapotràentrare. totale

la transitività

A e B, una

Intuitivamente, n ui i,

f

tali

di dii

in nessun altra

la seguente

di

massinso

elemento,r

di scatole

e quindi

dimostrazione.



e transitiva

R è simmetrica

relazione

se una

che

afierma Egli

8 è chiamato

assegnato

insieme

Esercizi

è un

singoletti.

di R sono

di equivalenza

le classi

che

su 5 x S. Verificare

di equivalenza

relazione

allora

Narciso

uno

Due e funzioni u...-

5.2-1

R una

ed

antisimmetrica,

riflessiva.

insiemi

A. . esiste

elemento

di se stessi .

singolo

A è un ordinamento

che

insieme

Funzioni

i

parzialmeitte sull

parziale

elementi

entrano

b e b è un ordisca-

insieme

discendenti un

diversi

qualsiasi

esempio, non

come

si dice

in un insieme che

a R b oh Per di

essere

è un ordinamento

esistere

a

quanto

e transitiva

di

esempio,

in cui

riflessive.

non

ma

Il

a e

in

è definito

anche

massimali

simmetriche,

è

di R.

se

parziale

invece,

A su un insieme

R.

finito

b R a,

a.

sntisimmetrica

non

può

ci saranno,

x R

A, si ha che

ci possono

individui

gli

massima

secondo discendente

5 un

R c.allora

equivalenza

di

è antisimmetrica

riflessiva,

discendente

scatole

parziale a, b e

sia

ordinato,

gli y c

essere

ordinamento tutti

che

si considerano

tutti

naturali

relazione

A parzialmente

y R x per

Sia

Il professor

5.2-5 equivalenza

b.

la relazione

se

insieme

che

Una

e transitive

transitive,

non

non

ma

simmetriche

è anche

A è antisiimnetrica

numeri

sono. ma

c.

f e l insieme

sui

e l insieme

parziale

ordinato.

tale

la

e transitive

di A e si definisca

partizione

scrive Per

riflessive

R è anche

x c

insieme

e simmetriche

Nelln

b.

Dati Una

riflessive

lo

a R b,

a

aj

se due

di

che

di relazioni

esempi

pare

5.2-3

R

b.

insieme

implica

n

sono

R a sea

della

che

cioè,

esse

e transitivith

Jj

che

di equivalenza

disgiunte,

allora

classi

dato

classi

sistabiliscecheRèunarelazionedi

che

insiemi

gli

le

è A. Dato

inoltre,

delle

R b,alloraaebsononellostessoinsiemeA,equindib

soddisfatta.

che

unione

xRaimplicavRbepercib

a

A

sono

simmetria

sia

c

mostrare

c in comune,

a,

dimostrazione,

itaLechea

riflessività

c

b

deve e la loro

sono

elemento

a R c e b R c, per

che

parte

esiste

perchésea tutti

si verifica

b

a,

disgiunte

le classi hanno

si

a due

genericoelementox

la seconda

R

dimostrazione

due

classe

b

da

conseguenza,perogni stesso

e

a

sono

le classi alla

mostrare

di equivalenza

della

parte

vuote,

A appartiene

è A. Rimane classi

non

79

e a ni

Insiemi

.

f

i ùi f

. i itivece . ,...,... funzione f, benché

un

. cart prodotto i iusef s f per eieiupiu,

.. A

p

.. so

si

le

omettono

XAX...XA

B

ii

,.e tecnicamente

il

. sine lo

ar omento -

dif f -baia

gg.

Capitolo

5

Sef

A m

A

f

. b

a

f

funzione La

pari.

Una

da

funzione

Una

funzione se

che

a

B

a

m rango

2n

coincide

per con

da

n c

il suo

N a N,

che

dato

argomento

di f può

una

funzione

descritta

insieme, se

ad

allora

Per

ogni

distinti

non

funzione

argomenti

2 e

3.

Una

funzione

3 come

suo

naturali

che

f k surgettiva.

iniettiva

di A

corrispondono

valori 2n

fn

è talvolta

f

funzione -

A m

f I n/21

1

0

8

è biunivoca

è biunivoca

da

se

è iniettiva

e surgettiva

è

chiamata

esempio,

per

5.4

la

inversa

sua

funzione

Z a Z x Z.

da

biunivoca

Grafi

Questo

una

la

funzione

N a Z

orientato

sono

chiamati

i ertici.

elementi

sono

chiamati

archi.

insieme

gli

vertici

dei

L

con

5.2

3, 4,

dove

E,

V,

come

V è un

insieme

dei

l itrsieme

se.

i gr

di G ed i suoi

archi

di G ed i suoi orient no

di un grafo sono

disegnati

cappi.

archi

i vertici

sono

tinito

vertici

degli

l iitsieine rappresentazione

figura

che

noti

Si

frecce.

è una

i ella

6.

5,

coppia

chiàmato

a

mostra

calcolatore.

E è chiamato

insieme figura

La 2.

1,

disegnati

sono

archi



certe

anche

paragrafo,

23.1

Il paragrafo

G è una

V. L insieme

su

binaria

di un

in questo

che

troverà

Il lettore

orientati. date

quelle

minime.

memoria

o di-grafo

o diretto

relazione

da

sono

nella

rappresentati

e non

orientati

di grafi differiscono

differenze

queste

elementi

con

-1,

parte,

essere

una

tipi

in letteratura

presenti

la maggior

Un grafo

due

presenta

paragrafo

definizioni

un a

0,

I

tale

in modo

binaria. allora

biunivoca,

funzione

funzionale.

l inversa

con

coincida

una

Dare

5.3-4

ed Eè Una

se

una

relazione

di una

l inversa

per realtà

è in

relazione

ai numeri

comspondenza

funzione

naturale

definizione una

va-

uno-a-uno.

n

una

ap-

è una

possono a due

È

la

di N

2n

Wa

di f la

esempio,

elemento n

f

numeri

come

esempio,

Per

per 1 comsponde

L.

sono

il codominio

Z

sono

il codominio

.

produrre

dai

si intende

argomenti

cf a .

fa

ed

il dominio

quando

ed

il dominio

quando

funzione che.

N

funzione

surgettiva

B è talvolta

della

codominio.

che

è iniettiva

l è biunivoca

x

fx

relazionale

la

nessun

il rango

qualche

Viceversa,

qualche

implica

m

esempio,

Dare

3

5.3

Per

A.

f

surgettiva

A m

funzione

biunivoca

argomento.

è, tuttavia,

f è su

A m

f

cioè,

il suo

f

cioè

N

dato

surgettiva

si dice

è f

La

5.3-2

da

A .

dominio,

funzione

2n

f è definita

a c

qualche

N a N,

fn

funzione

B. Quando

iversi.

2n se

di f per

surgettiva

lore.

suo

n

è una

Lnl2J

valore

A secondo

qualche

del

è surgettiva

n

f

come

c

per

da f

funzione

funzione pare

8

N definita

Una

su

e

insieme A

di f è l immagine

W

f

di un

b

Il rango

f a ,alloratalvoltasidicechebèl immaginediasecondo

Bèunafunzioneeb

I immagine

f

81

e a ni

Ensiemi

possibili

con

cerchi

e

un

vertice

a

da

se stesso. -

2

1,

In un

-2,

3

2,

4

La funzione

è iniettiva

èsurgettiva

dato

la funzione uno, da

un

f Per

dato

che

tutti

gli

è biunivoca.

Una

in quanto

accoppia

insieme

su

una

Quando b

che

a se e solo

esempio,

f

f

-2m

I

immagine è chiamata

dominio chiamata

la

sua

e del una

inversa

di più

di un

di qualche

elemento

talvolta

corrispondenza

codominio.

Una

funzione

elemento

f

è definita

f

n

-1

vertici

dei

se

in

biunivoca

un

abbiano G

b

notazione u

e v,

sono

proibiti,

è una

rappresentazione

V,

si dice

B,

v. Per

esempio.

mentre

gli

v

u,

per

di un

Siano

gli

u.

0, Quando

G

i

è un

la

V,

vertice

arco

a.

se f è iniettiva.

b.

se f è surgettiva.

insiemi Aloe al1ora

fi niti AA I A

e sia f

A m

fB 8

.

8 un i

l unzi irte.

iAostrare

che

di d insieme

tulvolta

vertice

nella

che

grafo

G la

2 neIla

u.

è incidente

l.

2

e

F.

V.

u

S.

i,

v. Nelle

si dice di

un

e

2, sui

snno

52 a 2.

Se

vertici

u,

v

fi

ur r

poiché

l arcc

che

il vertice

adiacenza

e b

a

.

termini orientato

grafo

nel

n cit tra

u ed è incidente

figura

sinsmetriea. parti

di

arco

un

2.

2.

2,

arco

è un

u e v. Nella

vertice

e 2. 3 di un r fo 4

5. b .

figura

5.

Z,

è necessari u ente

si scrive

2

l.

v

relazione

è

vertice

dal

2 sono

v

u,

certi

benché

coincidono.

orientati Se

vertice

vertice

2 sono

nrientato non

relazione

orientuto

di un

è non

il,,rufo

nel

sul

dal

escono

si dice

E.

non

n esce

è invide te

che

entrano

che

incidenti

v

u.

archi

gli

orientato archi

orientato

A e 8 due

la In

arco.

con

orientato

non

della

Se figura

mentre

i è adiacente 5.2.

il vertice

I

nnn,ippartienc

al grafo.

n.

al vertice

v è adiacenre

è simntetricz.

Esercizi

53-1

che

piuttosto

esattamente

consiste

grafo

. doi e

u,

lo stesso

essere

arco

ogni

wn

coppie

da

insieme arco.

un

considerati

sono cui

per

diverso.

leggermente

che

archi

e

orientati

grafi

per

significato

come

0.

5.2

la v

u,

è un

arco

1,2,3,4,5,6 . definizioni

Molte

u to-a

I n I 21 è

i cappi

figura

usa

si inoltre

un

di

Se er

La

v

a,

cioè,

ordinate,

E è costituito

archi

degli

l insieme

E.

V,

da coppie

convenzione

orientato

distinti.

non

funzione

se

non

grafo

di N, quindi

pennuta-ione.

piuttosto

insiemistica

vertici

b. della

2

di Z è l immagine

di Z sono

del

è talvolta

sef a

elemento

biunivoca

f è biunivoca,

l. inversa

j

fu nzione elementi

gli

se stesso

funzione

nessun elementi

G che

V e u c v. Per

notazione

N

orieetnto

di vertici,

u, i c

un

ton

grafo

ordinare

quando

a n in

un

gr to

2 è adii ente

c

b

Figura52

e non

orientati

Grafi

orientali

Un

a

G

orientato

grafo

V

E ,dove

V,

j l.

2,

4.

3,

5.

6

b

a è isolaro.

ll

c

del

sottografo

della

grafo

indono

a,

parte

di

dall insieme

l.

vertici

3,

2,

6.

5.3

Figun

jj g pn e

di

vertice

un

vertice

un

il vertice è il numero

uscente.

vertice

Il grado

Il vertice

Un

cammino

sequenza v, z q h

v ..., v,,v v

2 nella

...

figura

è il numero

ha

2. In un

mado da esso

5.2

figura

vertice

un

u ad v,.

v, diverticitaleche z è il suo

numero

u tramite

u

vi

Se

talvolta,

è un

se

G

u

G

grafo

v e v,v

c

cammino

Eperi

è orientato,

si

u a u,

scrive

si

come

sa,

...,k. v,v

Due

u

è

cammino

semplice

di lunghezza

3. Il cammino

5, 4, 5

2,

non

è semplice. s

Unsottocamminodiuncammino vertici.

Cioè,

per

sottocammino In

lunghezza

In

1. Due

è un

se esiste

è semplice. cappio un

un

cammino v , . Ilcicloèsesnplice

n r Ungrafo

grafo

non

Un

cammini un

ma

Up

p fo

ciclo.

raggiunpbi1e

sottosequenza

contigua

vertici

di

sottosequenza

l,

da

ogni

v

...

fo

1

cappi

m

v ...., ....,

v.,

v

....

dei

suoi i

v

è un

w, f

1

f

l o se

v,, sono

v

ve

U Un

non

0,

i,

...,

k-1.

fg

N

senza

cicli

cammino

2,

formato

2

dall arco

2.

5.2

2

forma

un

ciclo

se

semptice

l

3.

seogni i

g

se Ila

es.

tt tinente

altro

vertice.

I

i

è acielic o. ..

copppp/ l

d i ver t -ivi è co 11egatQcollutlcalllmino. 1 d i vertici sotto la relazione

connciia, ..-,,

cioè

orni ogni

f

di

G,

4,

2

1.

sono

5

connes-

parole

con

G e G

di G

E

V,

insiemi

da

V a V data richiesta.

V

se

in

archi

biunivoca

da I

5 vertici

abbiano ha.

non

in basso

V ed

c.

G

V,

E ,

figura

5.2

a

V è il grafo

possono

rispettivi

i grafi

entrambi

quello

si

i corrispondenti

corrispondenza

La

biunivoca

funzione

altre

In

E.

sebbene

da

in

è la funzione

sottografn

ha

se

connesso

ha tre componenti

a

una

esiste

isomorfi

4 che

sotto

fortemente

mantenendo

6

y, f

di G indotto

vertici

c

v

u,

infatti,

è un

E

E

Dato

E.

g

dove

V .

ve vertice ite

se ii w v e

se e solo

la versione orientato

Cioi

soisu

vicini

di un

i i unvicino se

sono

dipinti.

nrientati

rato

gli

verliCe ia,

v

s

che

iono

u

,

i

e v.

v.

G

t

C E.

E ,

V, gli

arco

nella

In un

grato

in

sola

una grafo

dove

archi

lo stesso

In un

in G

un grafo

Dato

contiene

ada

siù ldi ente ,

u.

e i.

orientato u.i

non

lo contiene

orientato w.

Eoppurc

u,

nrientata

non

irchi

i

orientato

G è il grafo

di arco

ogni

orientato

non

è

w,

di un

w è qualunque di i si

archi

a figura

nell

appare

. orientata

E. Cioè

e

i

n.

è

versione

la versione

entrambi

contiene vertice

ce

Poiché

orientata

non

2, la

eli G è il puto

E. Cioè

cappi.

e senza

riimosse

di G.

c

i

u,

2, E.

da due

orientata

sion

l. V.

e solo

orientata

versione

nella

la i ersioire

V,E ,

E se

e

v

u.

G

frecce

è

dove

G

orientato

nella

3. 6 2, 6,

1,2,

vertici

di archi

insieme non

dei

insieme

dall

è sostituito

un viciiro ..se

u, v e

grafo

E .

G V,

il grafn 1 componente

V,

5

di

Le

altro.

vertici

dei

fra.

lo

3. se

grafi

di grado

vertice

V, il sottografo

come

ha

un

orienuto.

.,2

un

E

G

grafo

indotto

ed

c Dato

1

c

ll sottografo

lo è. Il cicln

l

c

v

u,

è semplice. 1

V

r, f isomort

un

ha

.2

l un

insieme

non

b

in alto

un

che

4

sono

w, f

3

di

5.2

gr

non

da ogni

componente

vertice

w, x, y, . .

u, i,

e V

5, 6

f

tigura

1 due

b

basso

in

il grafo

è fortemente

una

dal

.

á

di equivalenza

nella

con

in corrisponden -a f

è raggiungibi1e

isomorfi

coppia

una

mostra

a

formano

se

y

le coppie

Tutte

i vertici

siano

5

f

orie,itato

non

solo

e

E se

e

messi

4 mentre

vertice

Il grafo

sono

so to

è un ciclo

cappio

E peri

x

4

le classi

grafo

raggiunto E

V.

di G perché

5.3

figura

il cammino un

d istinti.

v

u.

v, f

il grafo

e 7 archi,

G

e

5.3

2

nella

grafi

v, v,

che,,

senza

nononentatoeeotutesso

è connesso

. v v. se v,.

2, 4. 5, 4,

orientato

orientato,

grafo

j tale

il ciclo

v,

u,

v,

intero

Lecomponehticonnessediunerafosoisolech . d raggiuneibile da . Il rof

orientato

l , la

j

è una

grado

6.

3, 6

essere

puo

l, 2, 3, 4,

V

Si dice orientato,

stessociclo

è un

i

v,

...,

figura

La

di p.

unpafo

ciclo

0

qualunque

ccontienealmenounarco. di

v...., v,, v,.

no p

che

i vertici

vertici

di

V,

tale

V

G e G. è un

G

E

rietichettare

n . Un

u

6 non

e

3

I vertici

raggiungibili.

V m

f

45 ,

1,2

il vertice grafi

. Un connessa.

fortemente

componente

poiché

....,v

che

dice

di

sono

grafo

raggiungibile

connesse

mutuamente

è una

E

V, 1,2,

i vertici

da

p

una

soltanto

5. Un

fortemente

in un

f

se ogni

di un

connesse

fortemetrte -mutuamente

relazione

la

isolato.

Il camminoconttene

di archi.

v .

ciò

p

vertice

un

w

verrice

connesso

è forte trente

orientato

grafo

componenti

che il suo

più

è e grado

uscente

Un

di

di archi

entrante

grado

2, grado si dice

b,

è il numero

è il suo

grafo

3

f un

ha

alto

in

il grafo

cle

dato

,.

2

f

in alto

Per

uscente

il grado

entrante

entrante

5.2

su di esso.

incidenti

orientato,

orientato

ha grado

a

di archi grafo

ed il grado

mafo

in un

4 nella

..., v...

da

orientato

escono

k da

, ,, ,

raggiungibile

b

il vertice

di un cammino

za h

1

che

di langliezza

v,

5.2

di un vertice

0, come

di mado

non

grafo

figura

di archi

nel vertice.

entrano pado

in un

2 nella

grafo

u

1

f

del

l ienici

isomorfi.

grafi

da

basso

in

isoinog7,

sono

non

di

coppia

Una

a

del

i,,errici

esempio,

83

e a ni

Insiemi

u.

un

ionc

non se

an he G

nun

le

con

grafo

volta,

nonorientat .

E

c

i

di G

orientato s ii

orientatn

V.

E

orientata u e i

Alcuni in cui in cui V ,e

tipi

ogni

V può i e

Vi come è come un

essere

e non

ero

acyclic

sono

due

varianti non

un grafo

dei

pafi

orientato,

non

ma

orientato,

essere

un

adattati

rafo

non

che

si possono

può

v

u,

acicIico

le prime

E

c

impl

orientatò V,

che

o u

ica

e

Ungrafo 1be è un directed

orientato

nome

E

G

viceversa.

e non del

lettere

non

grafo orientato

V, a V o

connesso

aciclico

grafo

avere

inglese

occasionalmente.

muMgrafo

Un

è

tra i vertici

multipli

che

cappi.

Un ipergrafo

algoritmi

eseguiti

che

piuttosto per

su queste

connettere

due

ordinari

grafi

strutture

vertici, e non

orientati

una



libero.

I partecipanti

ad

risultato un

grado

Dimostrare

ha

mani

fine

streno

la mano de

ogni

lemma

delle

salutarsi

per

ricevimento

Mostrare

professore.

strette

e ogni

il direttore

di mano

se G

5.5

del che

agli

E

V,

Alberi

il è

allora

Come

.

in

grafo

che

are vertici

alberi

gli

11.4 di

memoria

nella

rappresentati

essere

possano

Questo

I paragrafai

di alberi.

tipi

un

calcolatore.

un

non

orientato.

lunghezza

la

di

un

ciclo

deve

essere

che

se

rafo

pn

contiene

contiene

un

orientato

o non

un cammino

ciclo,

allora

orientato

un

canarino

tra u e v. Mostrare

semplice

contiene

contiene

un

ciclo

tra

semplice.

Mostrare

che

imi

non

grafo

qualunque

connesso

orientato

G

E

V,

soddisfa

Molti

che di

relazione

di di un

in

un

orientata

orientato

vertici

la

vale

del

raggiungibile

relazinne

in generale

grafo. per

delle

Quale

albero

la relazione

di

del

orientata grafo

del non

grafo

orientato

orientato della

della figura

5.2

figura

5.2

a

he

un

ipergrafo

puo

essere

r ippreientato

con

da

sui

Qual

è la

Sia

libero una



foresta

5.2

alberi

degli

Proprietà

un

è

I.

Q Due

3.

G

E

V, un

grato

grafo

si dice

allora

e

connesso è un

La

foreste. nella

albero. è una

che

5A

figura

figura

5A

c

riguardano

che

gli

alberi.

liberi equivalenti.

sono

affermazioni

seguenti

libero.

àlbero

vertici è

un

Le

un

ciclo.

proprietà

alberi

orientato.

non

orientato,

che

Il grafo

fc restn.

una

contiene importanti

non

sulle

anche

operano

mostra

b

perché molte

raccoglie

teorema

G

2.

in

quvlsiaii ma

connesso,

G

se

un

sono

arco

qualunque

un

da

connessi

è

semplice.

cammino

unico

E,

da

rimosso

il

grafo

risultante

è

contiene

un

sconnesso.

b

un

e la figura

5A

dice

sconnesso,

essere

puo

una

orientato.

non

sugli

è una

da

tre proprietà raggiungibile

4. s r are

un

è né

Teorema

sui

equivalenza grafo

non

grafo

equivalenza

è la versione

versione

albero

un

mostra

operano

che

algoritmi

grafo si

quando ma

è aciclico.

orientato

è un

5.4,

paragrafo libero ,

l aggettivo

omette

non

grafo

Il seguente

V erificare relazione

Qual

foresta.

non

ivi-,.

verticf

Quando

un

a

si

Spesso

aciclico.

se un grafo

che

nel

definito

come

libero,

albero

Un

due

liberi

Alberi

5.5.1

u e v, allora

orientato

il

come

descrivono

23.1

e

2 jEj

definizioni

presenta

diverse.

leggermente

di molti

matematiche

e proprietà

ma

correlate,

di alberi,

nozioni

mo1te

ci sono

i grafi,

per

paragrafo

3.

5.4-3

5.4-7

dell ipergrafo

vertici

ai

bipartito

grafo corrisponda

vertici

di

insieme

e l altro

del

vertici

dei

insiemi

degli

uno

che

supponga

Si

Suggerimento

V

almeno

5.4-6

si stringono Alla

stretto.

iI seguente

orientato,

v

ha

quante

provando

non

di facoltà

mani

quante

calcola è pari

grafo

g tr/

un ricevimento

ricorda

dipartimento

5.4-5



è perciò

e nmt

ciclo

in

conriene

iperarchi.

professore

5.4-4

che

grafo

orientati

Esercizi

5.4-2

Un

c

foresta.

foresta.

corrisponda

5.4-1

Una

b

connette

ai grafi.

simili

albero

Un

a

atbero

an

Molti

5.4

Figura

archi

c

b

orientato.

incontrare

sia

iperarco,

ogni

essere

per

è un

è un grafo

V, ta1i

si usano

che

ma

completo

archivannoda

e un

di vertici.

arbitrario

V,,

insiemi

Spesso

indicare

grafo

bipartito

V,. Cioètuttigli

5.5 .

per

Un

Un grafo

è una foresta

dag

un grafo

specifici.

in due

il paragrafo

graph

nomi

partizionato

orientato

veda

si

dei

è adiacente.

V,eva

sottoinsieme

possono

hànno

di vertici

V,oppureue

aciclico i

di grafi

coppia

85

e a ni

Insiemi

grafo

bipartito

se

si

G

è è

aciclico

S.

G

6.

Ci è aciclico. C

I CI .

e

connesso e

ma

V

E ie

l.

V

E

un

l.

qualsi imi

areni

ag

giunto

d

E.

il

roto

risultante

e a ni

Insiemi



Capitolo

5

0

profondith

P

4

altezza

2

8

profondità

1

profondità

2

profondith

3

P Figura

5.5

Un

della

passo

dimostra.-ione

del

Teorema

5.2

se

G

1

è

un

albero

libero.

allora

2

4

profondità venice,v

e

considerato

verso

da

cui

m

almeno

semplici

il primo

vertice

a partire

il primo

vertice

dopo

z che non

attraversa

x

condividono

ottenuto

allora da

Se

3

sono

e sia

da

4

3

P Per

ha n con

3

si separa

Sia

in tutte

4

E m

E

s .

un

vertice

Si

i due

quale compare

che

E

che

2 componenti

ma

connesso

n

V

connesse

in

e che

i grafi

1. Rimuovendo realtà

k

2.

un

Ogni

ii a e p

p

si

qualunque q

coppia

un

arco

è al

più

k

AV

2.

AV

Ag giungendo

ciclo

tutti

in cui

arbitrario

gli

w e

Se

archi

tranne

stati

u e v sono

u a v, e poiché

da

cammino

un

nd E.

di G.

scelti

ordinati

alberi

ed

radicati

Alberi

da

radicato

rimosso

radicato

albero

x di un

nodo

un

La figura

vertici

5.6

mostra

a

dagli

si distingue a un

si fa riferimento

un albero

altri.

vertice

radicato

Il vertice

di un

alberi

su un insieme

7.

radice

con

dei

uno

Spesso

dell zlbero.

del l albero.

a un chiodo-

come

12 nodi

di

in cui

libero

albero

la radice

è chiamato

diverso

soddisfa

è un

radicato

albero

Un

oidi

soddisfano

I arco

u,

crea

arbitrari

G è connesso.

Si consideri combinate

vi è un

Quindi

v

arco

qualunque

u e v vertici

Siano

h

n 1

2 i.

ci 5.5.2

componente

a G.

arbitrariamente,

non

dell arco

l aggiunta

adiacenti,

già

appartengono

un

aggiungendo

che.

G è connesso.

che

mostrare

ma

aciclico,

G sia

che



Perciò iò l aeeiuntadi ice. . P

semp

cammino

unico

da un

Di

vl- ,

implica

1

radice

T con

r

nodo

qualunque

y sull unico

.v è un discenderete

si

l. supponga

c

,

che

G sia

cnnnesso

V

E f

V

1. Si

deve

mostrare

che

G

. è adiacente

fanatiche

. a qualche

al ,

E,,

vertice

I I.

Se/

v. c

i,

1

n.

e

perché

si può

radicato

deveesistere G è connesso.

continuare

Si

.ipotesi

che

E f

V

I. Quintali

y è un

ee.z z w y,, allo ica radicato ra

,

V che

,.

e che

antenato

nei

nodo

proprio

indotto

r è l albero

oidiii

u in reo See l ultimo,

l della

figura

di un

cami1aino

dai

x è un di x e .,, di.v. discendenti

5.6

al dalla

contiene radice

. discendente radicato

i nodi r di un

ddi . y.

proprio in.v.... Per

esemp o, i

llsottoalbero ilsottoalbero

8, 6, 5 e 9. albero

T ad un

è h,. . x .allorai nodo i x èh

nelln Un

contraddice

sono

è in

e G

la

Poiché

albero.

un

realtà

di G

connesse

le componenti

in tutte

ciclo.

un

a G crea

Si deve

cicIo.

l

è collegata

di vertici

Si supponga

l

un

i

u,

h

che

m

si crei

G.

con

i ersr .

è

ordinato

albero

come

ma

a,

nel

è diseg raw

L albero

differente.

ordine

un

archi

gli

k

avere

deve

arco

qualunque 6

semplice.

G, allora

it

in

a ll atbero

è identico

caro

di tutti

la somma

5,

conseguenza

v non

5.4-4,

tutti

è

un cammino

da

connesso

grafo

cioè da

la

implica

vertici.

di

l Esercizio

Un

3 vertici

jE

v

u,

la sconnessione

il Sia

il cammino

rappresenta

radt

4.

aire- a

di

radicato

albero

Un

a

trovano

3 si

nodo

del

i figli

che

ordinari.

albero

Coine

radicaro.

albero dato

di,. cg.

cammino

radicati

Alberi

5.6

uro

ed

dal

contraddizione.

due

unico

arco

per

c

di p,

è una

si rimuove

induzione.

h p,

percorso

tra

un

Questo

e,

a partire

y, dove.

è

G

distinti

y. I cammini

questa

da

in

due

conseguenza,

semplice

provoca

G abbia

. V,

in E.

p

Di

ciclo,

sia

stesso

attraversa

u a v. Se

p

vertici da

il sottocammino

che

cammino

arco

cammino

vertice

vertice

e finali.

G è connessa

da

anche

Sia

w a

un

un

in

è un sullo

in p,

di

erti ,

in p,

iniziali

coppia connessi

w il primo

convergono

I per

soddisfino

in I

rim

sarebbe

è

V

Si supponga

Iv i il

rimozione G

g grafo

Sia

vertici

cammino la sua

il

5.5.

che

al più

qualunque

un

figura

in p,

il

Fi

ogni v vertici

successore

con

cohtraddi--ione.

u e

di p da

s

la

è connesso,

cammini sia

essere

l unico

deriva

cioè

il cui

concatenato

p,-

Siano

dalla

di vertici

ipòtesi,

V 5

x ed

u a v e quindi

le componenti

ottiene

mostrato

co ppia u

di n vertici

il grafo

albero

ci può

essere

l archi.

meno

un

cammino

cui

semplice.

ad eccezione dei e rovesciato p

. Si proverà 2 vertici

che

il sottocammino

p

albero

deve

cammini

Dato

vertice

ualsiasi

G è connesso.

u a v e cosi

da

a di er re,.

dal

vertici

se G è un

2

ciclo

w, che

concatenando

Quindi,

un

come

è un

Il

.

forma

comi cim

in p,

vertice

cammino

e p,

p,

successore

2 un

ammim

quale

nel

opposto,

1

connessa cammini

riconvergono

poi

nel

Dimostrazione.

la

b

a

dal

nodo

G i aciclico. lerinine il termine

nnn

.nn

c un

fogli

r

i ipeiio

man per

iitdicare

nodo

intentai.

-,,

...,,,

ui,,, w1 vctticc

di

ur

alti ro

radicato.

J

-vertice,

Noi

uscrvA o

-e fnsiemr

altezzá

a Figura

5.7

al

alla

Il numero del

Un se un I due

nodo

ordinato ha

alberi

lo stesso

in

k figli,

nella

5.6

sono

lo nodi

un

attenti

In

sinistro

mesttre

ma

u

come

albero

á.8

nella

figura

Un

albero

Gli

alberi

destro

sono

m

contiene

L albero

della

radice

che

wc.

5.7 a



chiamato

il grado

di x in

i figli

figlio,

un

se sono

nodo,

T

di x.

deIla

e un

contiene

albero. dell

o mancante.

binario

non

di ciascun

secondo

nodo

figlio,

considerati

in un

che

albero

il grado

radicato

di

il

un

più

e

fg g

,rado

è il numero

eo

dei

una

fo lia

grande

f

alberi

sono

...,

ordinati.

ed un

ordinati,

s

Cioè.

/-esimo

ma

vo.

Un albero

di

posizione

in

un

albero

un

nodo. o. no

g i

figlio.

b

ri con

una

L albero

o ha

esattamente

fieli

di un

nodo

interni.

considerati

essere

puo

come

rappresentata i e

non

che

ig

a

si

i

ottiene ue,

grado

in

mantiene

ch e d. distineue n

di -

più

rappresentano



7nodi

Tuttavia, u a

binario

r q uadrati.

pos zhw

g i perno di

alberien

ai

dis

i

i

i

n

qu è un

a

que

i or

non

con

più

-

struttura

.Q

o

o

i

alberi

or

.

binari

da

un

o èa

Inunulheroposi -iona

tinti. . L i-esimo

albero te

etichetta

8

do.

gli

o.

figlio

di

e, i no

g

ina

oe.

i

i p

i g

.

,m

o

n

è un albero assenti.

un

Quindi

a

ina

ero

.pi

in

ero

p letoconaltezza

ioco

p

i e fooogliehannolastessaprofondità ie

k. . Lafi a ura5.8mostrauna .

berok-

e in c

posiziona

o èun èunalberok-arioincuitutte

p

d

h

k-ario,.

di / sono

grande

etuttiinodiinternihannogrado

binario

ce

g

i

alcun

binario nodo

sinistro

La

non

radice,

chiamato

è vuoto

la sua

un

albero

radice

i.

zQ

ara

ic

nodo

In un

albero

mostra

un

ordinato. albero

nullo.

tal voIta

è chiamatafigEio

dal

di

fatto

t,gli,

chè

Tuia

il padre

di

un

n, do

un

interni

non

nullo

non vie,

nullo

si dice

l k k-

k

com o

I

conta

nodo

si distingue

radicato

per

oco

fogH

6 o

n. .

è k-l

abbia

ie

differisce

rado

al

del

fi

l io

un

hglio

o un

,

l1 equazione

3.3...

dvtcrmiru,rna

albero

un

Quindi,

binario

c o ha Iato

compm

2-

I nodi

interni.

Esercizi

da quello

alhro1ihero.

B. alberai

il

rock,.

ati

Il

nodi

con A.

j

-

radi

ordinati i nn

albero o/- -ariol

di un

albero

gk i0

che per

la posizione

che

alhi.o

l altezza

di un

sinistro

destro

ogni

figlio,

binario

considerato

In conclusione,

nodi

binario.

in cui un

h è P. dei

h-l

è l albero

ha solo

rofondità Il numero

chiansato

destro.

o albero

sottoalbero

albero

ordinato

se un

b

un

binario

sottoalbero

vuoto

di un

naostra

albero

il suo

Se un set toalbero

5.7 n

un

albero

la radice

albero.

figura

nodo

è ch i amato

Analogamente, intero

un

5.5-l dipende

con

albero

f

è semplicemente

nodo

ricorsi

di nodi albero

più 2. Per esempio, in un albero binario, -figlia sinistro o destro è importante. unico è destro o sinistro. La figura 5.7

Si noti

3

oppure disgiunti

radice

alte a

quadrati.

La Junghezza

la profondità

che

sinish o non

di

della

ei

in modo

di nodi

Se il sottoalbero

è assente

Un albero

3

,

a causa

7.

meglio

insiemi

dell intero

destro

il figlio

tre

sottoalbero

con

il figlio

finito

alcun da

binario

denotato

descritti

completo

ione

dei

e posizionali

insieme

è composta il suo

profondi

sono

V

binari su un

non

2

sotto

i figli binari

binario

emostratonellafigura5.7 c . o con un nodo che

radicato.

Alberi

definita

profondi

irodo

binari

con

Figura

h 5.5.3

th l

nodo

del

pieno

disegnate

un

il figlio

alberi

binario

sono

di appena

i1figlio

a,

albero,

sinistro

è disegnato

7 è assente

di albero

de l

Ilfiglio nodo

a.

nodo

stesso

Le foglie

in cui

primo

diversi

ir

del

radicato

radicato

vi è un

standard. di

quello

x è la profondità T.

di

albero

allora

figura

albero

nodo

I altezza

è un

2.

un albero un

da

dai

grado

modo destro

sinistro

rappresentano

ha

r ad Tè

diverso

rappresentato

a

nel

Il figlio

ilpglio

b,

alberi

intento

radice

nodo

albero

in

disegnato

sinislra.

binario In

di un nodoxin

dalla

qualsiasi

albero

questi

nodo

di figli

binario sua

è assente.

ordinati,

ciascun

cammino

di un

Un

b

binario

in cui

albero

nodo,.alla

destro

alberi albero

ordi tato

al

destra.

E

c

Un

a

sotto

il figlio

Come

diversi.

binari.

sua

7 è 5 mentre è 5.

profondi 3

Y

appena

nodo

0

nt

b

Alberi

è disegnato

profondi

e a

l

e

con

nodi ù C,

cnn

w i, r 3.8. A

i

qrj pi CO

p P

.

-

,,,

e

C.conilcomcradice. . c

cciiac

rustica

e

. ..

e .

Dive se narenaretu

C.

Dive

,. A,, ,, .1be tu

i

n re

tutti

gli

tnsiemi

5.5-2

Mostrare volta

che,

n

per

in volta

7, esiste

ciascuno

degli

un

albero

n nodi

libero

come

con

radice,

n nodi

si ottiene

tale

che

sempre

di

prendendo

un albero

diverso.

c.

colorato d.

5.5-3

Sia

G

un

d il massimo

Sia

un grafo

V,E

unico

cammino

orientata

di

acicIico

da

G forma

orientato

v, ad un

ogni

in cui

altro

vi è un

vertice

v e

vertice

v

V. Provare

c

V tale

che

che

con

Mostrare

Mostrare

5.5-5

Mostrare

che

al numero

induzione

per

L ig J.

5-2

non

La

lunghezza

dei

su tutti

presa

il numero

dei

di foglie

che

un

mente,

la

nodi

meno

albero

dell

albero,

binario

di

2 in

grado

esterni

lunghezza

che

i

e

albero

n nodi

ha

un altezza

di almeno

dei

è

binario

pienamente

di ciascun

profondità

esterni

di ciascuna

interni,

e. Provare

un

d arneuna

Si

associ

binario T.

peso

un

w

T. Mostrare

che

è nota

Questa

come

b.

Mostrare

che

la

somma,

foglia.

Considerare

cammini

interni

numero

ogni

di foglie

generico

amici

nel

su

presa un

è la somma. nodo.

2

x

a ciascuna

foglia

1, dove

x

w

binario

compreso

Una k

di

k-colorazione 1

tale

che

rappresentano

di c

ir

I colori

grafo r

per

e vertici

a.

Mostrare

che

qualsiasi

b.

Mostrare

i e lunghezza

Se l

d.

tutte

albero

le

foglie

i pienamente

che

le seguenti

tra

L/3

non

orientato arco

adiacenti

x di

la somma

L foglie

dei

d di

profondità

è presa

teorema

un

rafi

sui

di amicizia

sia

non

orientati

simmetrica

ma

vi sono

due

con

p nsone

di

numero

lo stesso

contiene

i oruppo

di persone

amici

degli

essere

può

di ciascuna

o tre amici

reciproci

in due

partizionato appartiene

persona

conoscenti

o tre non

i tali

o pp

sot

a cui

al sottogmppo

reciproci. almeno

che

p

q

appartiene. in un

ciascuno

gruppo uò può

gruppo uò

di almeno

è amico

fatto

essere s

Bisezione

su tutte

un

l

M

sedere

ad

un

la meth

tavolo

delle

in modo

persone o ognuno

che h

del

gruppo,

sia

seduto

allora tra

due

albero

due

le foglie.edi

e 2L13,

estremi

un

sottoalbero

che

ha

h.

G u,

v

V, c

devono

E. avere

E

è una

In altre colori

sono

funzione

parole,

c

i numeri

V 0.

0, I....,

simile

sui

operano

richiedono

grafi

un piccolo

rimuovendo

i

che

numero

rafo

sia

bisecato

i. Ques

di are

in

p

di alberi.

la bisezione Mostrare ostrarec binario

inclusi.

che

di dimensione

sottografi

un

di alberi divide-et-impera

l

,. un singolo

che er rimuovendo con

IVIostrare

n vertici

che di un

Mostrare

che

qualsiasi

albero

in due 314

semplice

albero

singolo

arco,

del

al più

n vertici

si possono .

cui

areiverticidiunalbero

partizion AA,

n

è ottima

nel

p iù

partizione

I

e caso

pe

e q uamente

n l4. iore

un

fornendo ottenuta

bilanciata,

3nl4.

Q n

O lg

in due

che

a

quesito la

fornisca

rimuovendo con

eco,

A e B tali

insiemi

la costante un

togliendo

archi,

insie,ni

s

.

p

A e 8 tali

i vertici

p artizionare L AA

che

di un

-I

J

-1.

1..... I

J

Note

al capitolo

diversi. G.

Boole

tu uno

dei

priini

studiosi

della

logica

simbolica

e intrndu .

e molta

della

notazione

equivalenti d d

fii

l

ita. ia

1874-1895. funzione

Il termine

Cantor

si interesso , a G. G.

agli

principalmente

è attribuito

W.

Leibnitz,chez, Leibn

la sua

limitataè

h

i . di lunghezza

e non

cammini

studia

contiene

è 2-colorabile.

affermazioni

2. G è 2-colorabile. ha cicli

come la relazione

che

2 persone,

di n

gruppo

1. G è bipartito.

3. G non

colori.

Q V

amici.

di Eraft.

con

ogni

albero

affermazioni

Si assuma

d iseiperspersone

l

non

uht grafo

un

w c

can

colorato

Analoga-

Problemi

Colorazione

essere

G può

gruppo.

esempio ese

5-1

allora

2n.

la disuguaglianza

albero

archi,

O V

seguenti

delle

Ognigruppo O

aa.

5.5-8

G ha

razio d imosostrazione.

Inn un

5-3

5.5-7

essere

G può

, a.

con

delle

cammini

profondità

n nodi

di

che

riflessiva.

albero

qualunque

l.

binario

dell albero,

dei

delle

con

interni

interni

lunghezza

se

ciascuna

la metà

cammini

i nodi

G. Provare

amichevoli

Graji

Q

5.5-6

di un grafo

albero.

induzione

per è uguale

vertice

qualsiasi

1 colori.

esiste

la versione

quindi d binario

d

che

RiformuIare 5.5-4

di un

grado

radicato

e a ni

ù

.

di formule

matematiche

definizione

stata

insiemi

ousòperò per

ge

disp ri.

una Un 94 .

vnlta

e tornando

utile erompevi uti compe idio

al punto io di i mnlte

di

p.irtenza. -. definizioni

. e riitrl ali

,iulla

teori

-

J

l i rafi

è il libro

di Harary

capitolo

e del offre una panoramica della teoria del calcolo combinatorio elementare su questi argomenti, Se il lettore ha già una buona preparazione probabilità. può sfogliare l inizio del capitolo e concentrarsi sui paragrafi successivi la maggior parte dei capitoli successivi non richiede tranne qualcuno in cui sono invece essenziali. nozioni di prababilith,

Questo calcolo

delle

Il paragrafo incluse della teoria del calcolo combinatorio, 6.1 presenta i risultati elementari formule standard e le combinazioni. Gli assiomi su11a pmbabilità per contare le permutazioni e i concetti di base che riguardano le distribuzioni di probabilità sono presentati nel paragrafo 6.2. Le variabili di speranza casuali sono introdotte nel paragrafo 6.3, insieme con le proprietà e varianza. continuato Infine,

il paragrafo 6.6 illustra il lancio casuale

l analisi

compleanno,

6.1

che e binomiale geometrica della distribuzione binomiale code di tale distribuzione. delle

Il paragrafo le distribuzioni 6A considera studiando di Bernoulli. Lo studio ie prove nel paragrafo avanzata 6.5, con una discussione

incontrano

Calcolo

di palline

attraverso

probabilistica in contenitori

tre esempi

e le sequenze

il paradosso

si è del

vincenti.

combinatorio

Quanti cerca di rispondere alla domanda senza di fatto Quanti si potrebbe chiedere sono i numeri distinti di n bit oppure in si passeranno sono gli ordinamenti distinti di n elementi In questo paragrafo, una rassegna Poiché della teoria del calcolo combinatorio. spesso si assume gli elementi conoscenza di base degli insiemi, si consiglia al 1ettore di rivedere il materiale del paragrafo 5.1. La teoria

del calcolo

contare. Quanti

Per c,sempio,

Regole

di somma

Un insieme insiemi

La regola imiti

scelte

k

di elementi

enza

che si desidera

o prodotto

del/a

clisgiunti

esempin. numero

e prodotto

disgiunti

insiemi

combinatorio

somma

cartesiano

elementi

di pussihilità ie è una letten

può talvolta di insiemi.

dice che il nuniern

è la somma

il numero

contare

delle

in comune, di targa

cardina

allora

di modi itè degli

IA u 8

di una macchina

essere

come

unione

di

un elemento da uno di due per scegliere insiemi. Cioè. se A e 8 sono due insiemi

AA ADÞ.che segue ha in ogni posizione

è allora per ogni posizione c IO scelte .ie è un i vitro.

espresso

26

l0

3á,

dall equuziane una lettera infutti

ci sono

Per 53 . o una cifra. Il 26 possibili

94

Capirofo

6

regola

La numero

del

il secondo.

Per

di coppe

il numero

il primo

se A e B sono

5.4 .

numero

che

scegliere

per

Cioè,

l equazione

dice

prodotto

di modi

due

esempio con

possibili

e1emento

insiemi

se

modi

di

nrm

una

moltiplicato

finiti.

di

28

coppia

che

AA j ,

cialda

ordinata

di modi

di gelato

gisti

e una

gelato

una

il numero

AA x 8

allora offre

gelateria

pallina

scegliere

per

scegliere

per

4

ab,

ae,

Si

è usata

hc,

ad,

hd,

di cialde,

112.

di un

dall equazione stringa

Una binarie

un

su

insieme

di lunghezza

000,

Ooi,OIO,

Talvolta

3 sono

011 , una

finito

100,

stringa

di

stringa

è una

sottostringa

3-sottostringa

che

comincia

su un

insieme

Una

k-stringa k-pie

binarie

è 2.

scegliere il

secondo

n

i

...

S puo

n

come

esempio, 4,

essere

vista

cosi

via

numero

una

ognuna fino

le stringhe

delle

è una

11 I non

Una

sottostringa

Una

k-sottostringa

s.

è una

sottostringa

un

elemento

del

esempio,

il numero

k

volte.

una

di

una

cartesiano

prodotto

n-insieme, si

n

modi

costruzione

Questa

ogni

di

elemento

Le

acb,

bac,

Una

di

n modi

n-permutazione

Il numero

un

S è una

esattamente

al

porta

ha,

una

sequenza volta.

ordinata

Per

di

esempio

tutti

elementi

gli

se S

di

n elementi

sequenza

volta.

ca,

cb.

Le cd,

k permutazioni

da, di

ut a dodici r/b.

un

in

ordinata

Quindi,

n-insieme.

sono

il secondo

2-

di 5.

ci sono

b, c ,

tmché

n, t

dato

che

i modi,

il primo

il terzo

di / elementi

di S in cui

permutazione

ordinaria

permutazioni

dell in ieme

elemento

in n

è

della

2 modi

2

gli

elementi

esattamente

k

formula

n

è simmetrica

k. cioè

n

k ed

per

iono

n

modi

di

scegliere

selezionati

cr mbisiazione

di clcl

un

4-insieme

á.

nello

a causa

hinosniali,

coefficie rti

come

anche

conosciuti

sono

numeri

Questi

del

che

fatto

binomiale

sviluppo

g .

e-

.

6.5

ci,

/

sono

-insieme n.

.

k

note

Sono

i

n-stringhe

di

modi molte

scegliere identitè

pwagrafo forniscono

le

a contare

corrisponde vi sono

contenerono

è

leinento,

il

l

y

quando.v

binarie

k posizioni che

che

contengono

in cui

mettere

tramite

1 tra

le n posizioni

i coefficienti

Gli

di dimostrarne

alcune.

gli

di

il numero l vnlte

esattansente

binomiali.

riguardano

l opportuniù

binarie

n-stringhe

2

un

1 che

I, perché

possibili. alla

esercizi

di

t ne

6.1

e

5 b.

si verifica

binomi le

6.6

formula

Questa

questo

elementi,

sviluppa

C vi sono

k

il primo

di

speciale

caso

Un

non una

b. c. d

k1

n

vengono

-combinazioni

Questa

e cosi

il

n / -esimo

I

nodi

vietare

di

liere

sce

scelto

tra

u

il secondo I-

e coii

semplicemente

un

I -suttoineicmc

di

binomiali

I.imiti

l e en enti.

COI114lll 1ZlOlll

Una

k

6

de.

i-insieme

n

via

k

k

compaiono

a,

di un

I -combinazioni

di

il numero

denotare

per

10

in n m di,

una

loc, bd.

delle

vi

L

su

si ha

6.2 ,

6.3

prodotto

x,y

insieme

scelto

di un

1 n

poiché

Dall equazione

per

n nn

n

legga

si

scegliere

per

k-stringhe.

finito

di S è una di

più

ad.

1a notazione

usa

Si

c a.

k-permutazione

ac,

insieme

cab,

essere

può

compaiono

ab,

un

compare

bea,

permutazioni

sequenza

binomiali

di S

permutazioni abc,

da un n-insieme

0 elementi

scegliere

. - .- .

pennulazioae

in cui

per

l.

0

di A-stringhe

si hanno

hanno

di modi

il numero

che

dice

formula

0, questa

infatti

Coeffiéienti

Permutazioni

Una

P.

n-insieme.

su un scelte,

di

6.2 k

n

è l,

l

diviso

di k-permutazioni

è il numero

è

quantità

questa

dell n-insieme.

k-permutazione

diversa

n-insieme

di 0110i001.

Per

queste

6.1 ,

una

è

quali di un

di

I,. permuta-

esattamente

vi sono

numero

del

in termini

espresso

essere

diversi .

n

di 01101001

S .

I -stringa

s

3-sottostringa

come

di a

di 010

ma

I- sono

costruire per

k-stringa.

consecutivi

k. Per

di lunghezza per

e

chiamata

elementi

in posizione

elemento

elemento n

di

di lunghezza

Intuitivamente.

il primo

esempio

Per

k sarà

ordinata

le stringhe

quindi

di S. Per

111.

lunghezza

s è una

S di

di elementi

k

101.110,

sequenza

sequenza

8

stringa

la

S è una

dei

ognuno

può

l-

una

costruire

può

distinti

k-combinazione,

ogni

Si

b.

a,

I elementi

in esso

ii-insieme

Per

di k-combinazioni

il numero

Quindi,

Stringhe

di un

n-insieme.

elementi,

suoi

dei

il 2-insieme

denotare

per

sceg1iendo

n-insieme

di un

k-permutazioni zioni

ab

di k-combinazioni

Il numero

il

cd.

l abbreviazione

combinazione

è semplicemente

e 4 tipi

è 28

è il

S

Vi

sono

ivi

Si

ha

talvolta

si

ha

il

limiate

la

neceisithdi

inkriore

limitarc

l gr,mdezxudi

un

cocfticiente

binomi ile.

Per

l

kL

g

n.

. n

.

..,

--

In

6.I-3

n n-i . n-g

,

,

In quanti

6.I-4

la

disuguaglianza

i limiti

n

che

deriva

dalla

formula

di

Stirling

si

2.12

superiori

nn

1

k j

k/e

k

k

n

k /c

che

cosi

6.7

ottengono

si

professori due

identiche

sedere

possono

cui

in

situazioni

una

a

attorno

Si

tondo

tavolo

un

ruotata

essere

può

97

probabilita

formare

per

l altra.

Sfruttando

n

modi

quanti

considerino

e delle

combinatorio

Calcolo

Provare

6. 1-5

modi

si possono

la loro

somma

100

...,

l, 2,

dall insieme

numeri

tre diversi

scegliere sia

pari

l identità

. -- . . -

1

...

6.14

n

6.8

I

Provare

é.l-é

é Per n

ogni

-

kg

dove,

0

k

n, si può

k, n

riscritto

-

I induzione

veda

si

I Esercizio

6. 1-12

dimostrare

per

che

6.E-7

1.

0

Per

/,-

kr,

dove

il, 1,

0

limite

questo

essere

può

n.

0

Per

scegliere

viene

scelto.

quest

6.1-7,

costruire

e conside-

oggetti

degli

approccio

Usare

per

che

provare

-

C- .

.n

uno

contraddistinguere

su n, si puo

k oggetti

se quell oggetto

rare

n j

gg

I

per ro

s. si assume

come

J

.- . -

.

il limite

khan-,

comodità,

n Rl

usare

n

per

l identità

6.9

gg l

,,

Usando

6.I-8 6.11

l,.

0

via.

e cosi

H . pn

deII Esercizio

il risultato coefficienti

n dei

Tale

binomiali

di coefficienti

tabella

tabella

una

sulla

z è chianmta

l,

0,

n

per

e ,

in alto,

con

binomiali

linea

di

triango1o

6

e

successiva, Pascal.

6.12 dOVP.

Provare

á.1-9 -

Ig R

è la fiinzione che

R

1

1g 1

di entropia

H0

Hl

g

6.13 e dove.

binaria

per

comodità,

si assume

che

0 1g0

$

0, in modo

0.

quando Quante

I,--sottostringhe

identiche

che

ha

si trovano

una

n-stringa

in posizioni

Si

considerino

diverse.

d i ver e

ha in totale

Una v vE, quelle

per Lnl2J

á. I-l

l

Dedurre

che

una

n-stringa

6.1-2

k

qualunque

n

o l

I.

per

hooleasta

r ,sssr . con,

Quante input

e,n

con anno

n le

input funzioni

c m

output bouleane

è una con

funzione n

input

da e

vRur.-. l output.

rwcsr

a

Fornire

sia

cc,.licl

C j

Qu,nte

n

qualunque

,-

fiat-icvte

I ir/2

le I,--sot tostringhe

sottostrin oche

Quante

che

Mostrare

á.l-lO

Esercizi

á.l-l

che

I

O e 0

0.

0. k Ocon

j

valore

ir. il massimo

j

k

n,

, una

è raggiunto

di

6.15

su

i.

una

che

algehriia

prova

I. clcl11c,lti

e

Forllit

u,l

basata

motiv azione csc.,llpio

ill

cl,i

su

un

metodo

per V,le.

I ugu l li,n/a,loil

output

6.1-12

su

l induzione

Ulnare re

6.4

per

estenclerl l

A

n/2 cr a tutti

pr vare i k

n.

l wlis i u t

li m a

6.1D

e usan.

l

l ljU IXlù-

Capitolo

6

6.1-13

Usare

l approssimazione

di

per

che

provare

2-

O l/n

6.16

valore

6.2

Calcolo

Il calcolo

e

e

Si

massimo

delle

r

b abilità

definisce

la

è uno

della

in

probabilità

i possi

su

assumere c

,

asta

Un

di

iiamato

c

Testa

come

evento

essa

raggiunge

Pr A

1

Pr A

U Bj

degli

di

uno

spazio

Ciascun Perla

prova.

campione

cainpione

evento

d

S, che

elementare

del

prova

composto

c sta

s

una

Per

az BZ

una

è un

può

di due

lancio

11

insieme

ess

i c dato

Alternativamente,

distinguibili.

114,

Pr cc

-

ed

una

se A n

8

8.

l even Talvolta

1 tutti i gli

definizione,

S. ., Per croce

eventi

esempio,

nell esperimentn

è le t onu

tc,

cr j.

dC

L evento

lE o. . S idicechedueeventiA

ogni

Pr

su uno iano

6.17 6.18

di

si

sopra.

cui

è

testa

una

almeno

di ottenere

even .i

i quattro

che

supporre

può

la probabilità

Quindi Pr cr

Pr vc

testa

una

almeno

di ottenere

testa

è

finito

o

314.

1/4

è l

una

nemmeno

senza

un risultato

di ottenere

la probabilità

che

di

discreta

si tratterà

un

elementari

evento

elementare.s

mutuamente

sono

di

probabilità

allora

campione.

spazio

per

campione

A,

evento

ogni

spazio

uno

su

è definita

se

è discreta

probabiliù

S uno

Sia

numerabile.

c

Pr A

S

Pr s , sCA

esclusivi. usivi. che

eventi

gli

evento

spazio

campione

soddisfatti

S è una

i seguenti

corrispondenza

assimni

del1a

tra

li

Pr

s e

s

si

ha

l/

S ha

evento

ogni

ed

S è finito

Se

esclusivi.

mutuamente

in A sono

elementari probabilità

descritto

o a i i à probabilità

A.

in genera1e,

due

a due

per

qua

sequenza

qualsiasi

mutuamente

siisi

coppia

di eventi

mutuamente

o numerabile

finita

esclusivi

di eventi

A

. A,....

che

spazio

sono

essere

rappresentato

esclusivi.

Pr .c,

risultano

v,

v era

e

di n i. i e.

niib l , .ità.

prnb uesta

Il requisito

s

possono

k Ite

c mai,lemento

un

numero

encnt

r,

come

,

una 1/2 .

probabilith

ed

n

iirotoin iemidèll iipaziocampioi e.La

ra

reve.

tm

eccczi me.

J

numerahilè

rannosonosu.i xizieampionefini

i

di

ivn

,

l,

e ciascuno

c

essi

di

può

l croci

n A

/

.

v. Lv

dato

che

prnbabillitè

ci sono

stringhe

di lunghezza

n su

A è quindi

dell evento

12 .

, .

uniforme

contimi t

Distrihuxione

di

prnhahilità

i

g

i i ii

esattamente

cnntengono

su

sullo di 5 può

elementare

evento

una cioè

S v.

un

che

c

Pr A

i

di S di cardinalith

sottoinsieme

n

lunghezza

di

stringa

croce, definita

di probabilità

Ciascun

cioè

perfetta.

di ottenere

L evento

l teste

esattamente

2.

di cardinalità

moneta

a quella

uniforme

distribuzione

si ha una

un insieme

di una

lancio

n

l ii sieme. di

tn ito

alcuni

esiere

si verifica

principale lei di

rappresenta

vi

situazione

zioni i cavolo interiezione vive

a a

c

è spesso

l esperimento

caso

S

è uguale

testa

.

. distribuzione

venti

con

verificarsi

è un

una

S

campione

da

del

tal .

In

S.

elemento

il processn di ottenere

n volte,

la moneta

A e 8.

un

casuale

in modo

su

probabifità

cons derare

la probabilità

la quale

per

di

uniforme

si può

esempio

Se si lancia

A Q

S,

distribu-ione estrarre come

una

Come

per Più

c

complemento

B. che

e B

l/2.

per

114.

la probabilità

distribuzione

Una

S è

I.

In g, generale,

S

A a

si ha

di A ,

probabilità

O per

Pr S

A

seguono Se

. e

moneta 2

0.

314

.d

monete

5.1

Pr 8

fl 8

monete

delle

Prjm

cr

vc,

l evento A e 8,

il paragrafo

probabi1ità

.

panoramica

d

io campione

è chiamato

uzione

Pr A

Pr B

lancio

denotare

veda

si ha

8

di eventi Pr A

probabilità

Distribuzione

testa

e l evento

di probabilità eventidiSedinumerirealitalechesi I.

Pr A

probabilità

Croce

per

deIlo

ottenere

esclusivi s.

della

distrib

Pr 8

abbiano

elementari

elementare

Una

Pr A

del

Nell esempio e l analisi

dato Assiomi

coppia

ogni

. Per

Pr A

A per

Usando

Pr B .

Pr A

allora

H lf2

risultati.

diversi

immediatamente

il suo

Pr m,

termini

sottoinsieme

certo

l evento

che

essenziale per la progettazione . ra f o presenta Questos o para par

randomizzati.

mentre

monete,

snutuamente

sono

mostrare

la

.

è un due

strumento

di una

spazio

per

evento

lancio

vale

Quanto

elementari.

i i esiti

uno

TT, TC, CT, CC

S

H it ,

probabilità.

a i even

si può

1/2.

e di quelli

a teoria

e

di entropia

A

per

probabilistici asi

funzione

probabilità

delle

algoritmi al ontmi

la

nullo

L evento

1 come

di

requisito

2 è un

l assioma

a scegliere

insiemi

degli

base

di

teoria

e dalla

assiomi

questi

99

probabilità

e comodo.

è semplice

che

il fatto

che

Si noti

obblighi

che

è niente

vi

non

realtà

eccetto

certo,

dell evento Da

Differenziando

in

di A.

la probabilità

è chiamato

Pr A

normalizzazione.

.

l

6.1-14

di

Il valore

. - .. 2nS

Stirling

e delle

combinatorio

Calcolo

ir

u. litè

in

cui

non

tutti

i

io t iinsiemi

dello

ip vio

canspione

sono

considerati

venti.

La

100

. Capitolo

distribuzione

continua

numeri reali, equamente sia

dove

i punti

la stessa

2 e 3.

Per

Cf

che

d,

che è non

si possono

associa

siano dove

c

chiuso

dell evento

i...,

ad

alcioni

b

b,

la

distribuzione

c,

d

come

continua

che

d,

c,

d J, per

che

l intervallo

3 si ha Pr

di x è 0. Rimuovendo

aperto

d j

c,

uniforme

ottenuto

la probabilità

x, x ,

ottiene

continua essere

può

Pr x

punto si

l assioma

distribuzione

sono

Pr c,

d

di probabilità

dalI unione

d.

e,

che

finito

estremi cJ

c,

l insieme

degli

intervallo

qualsiasi

numero

d

c,

. In generale,

è un

di un

Dato

i punti

o numerabile

v

d

c,

eventi

a,

b

di

intervalIi

A AI

jA,

Pr

Pr

A,

u

ir. B.

J

P

condizionata

si ha a priori

si supponga

che

di queste

un

L informazione

eventi

elementari

alla

di

del

di numeri

f -sottoinsieme

P

un

evento

Pr A

,

n B

volte

che

o

probabili

Si

dice

soltanto

uno

di questi

due

no

mo

h

se

a coppie

indipendenti

eventi

inoltre

A, l evento

dà testa.

due

teste

la nozione

Laprobabifità

B, è definita

di avere

a priori

condizionata

di

una un

Pr a,

1/2,

Pr Ago

1/2,

Pr Ago

1/2, 1/4,

i tre

Pr Ago

A Aq

1/4,

una

Pr Ago

A Ag

1/4,

n Aq

0

n A.

Pr A,

parziale dato

A,

i,

ogni 5

...

.

due

monenere e p erfette. dà testa

la seconda

percui

Pr Ai

e la risposta

conoscenza

evento

l i,

ne

se

indipendenti

mutuamente

2l

, . Sia

A

e A,l evento

l evento

per

cui

la prima a l tatisiano

p

Si ha

R Ai

con

presentare

mostra

sono

essi

almeno

mostrassero

croci

si possono

che

lanciare

di

si supponga

Perer esempio,

esempio.

che

le monete

uscite

cui

detto

abbia

entrambe

siano per

Per

che

si è

come

.

a, gli i eventi ev n tt tuttavia,

a coppie

non

sono

indipendenti

mutuamente

pe

A,

,

0.

1/8

Pr A, Pr A,

Pr A,

mentre

6.19

dato

dividendoli

almeno

Pr f B , in modo tra

una

Pr AAB

sono

in cui

la

che

i

verificano

moneta

somma

che

testa.

indipendeirti

sia

dell evento

probabilità

mostri

sia

Quind ,

A che

8.

di tutti

B e la

le monete

Pr A

anche

Poiché gli

dato

teorema

Bayes

di

i

eventi

8 .

è A n

risultato

B.

è uno

elementari

condizionata

di 8

definizione

Dalla con

non

probabilità

mostrino

testa

evento

e B è I evento

8 esempio,

Pr A

che

si

a

di ottenere

due

dite teste

mnnete i

I/2

e che

perfette 1/2

1/4.

i risultati

Si SUppOllgù

siano ,1llCY

A Pr A B ,

indipendenti. i

nu

CllL

lll1

l

V Ill

. ottiene

si

Aj

.1

8

formula

conosciuta

che ciepu

empiere ........ .

eventi

di lanciare

o

B

Pr A Pr 8

.

si supponga

la probabilità

condizione

A e 8

nulla,

rispetto

Risolvendo

Pr f

0, alla

eventi erdueeventiAeBoenuno due per

B.

1/3.

se

-

se Pr B

che

di A dato dell

probabilità

segue

condizionata

probabilità

Pr B Pr i

Pr cAB

Pr A Pr B ,

è equivalente,

della

6.19

Pr A Pr 8

l/4 l 3/4

AB

A

A si verifichi

1. La probabiIità A n

entrambe

di

probabilità che

le probabilità

la loro

A è l evento

precedente,

eventi

risultati

B, l evento

Il

la

come

AB l evento

di B, si normalizzano

il rapporto

Nell esempio

Pr A

Leggere

si è verificato dei

elementari per

B è perciò

w 0.

che

eventi

allora

che che

possibilità

formalizza

Pr B

degli

Per

la

esperimento.

e che

perfette

è la probabilità

qual

di un

Pr B

A A B è l insieme

Pr A

risultato

monete

equamente

esperimento.

Cioè

che

o

B

le

Due

due

elimina

Di conseguenza

altro

Intuitivamente,

che

lanciato

sono

del

parziale

testa

condizionata

un

A

tutte

abbia

fornita

probabilità

verificato

amico mostrava

1/3.

di

ae 1

Pr A Pr A ..pr A,

Pr A AA A...nA

reali aperti

è 1/3.

risultato

venga -ac testa

a

ora entrambe b

testa

di una

indipendenza

conoscenza

rimanenti

domanda

La

ed

una

monete

testa

probabilità

una

dell insieme,dove

A

A,A,,

differenti.

una

mostrino

Ago

di un

moneta

Talvolta

che

si dicono

insieme

un

A di

chiusi.

Probabilità

di testa

. i i.

q uamenteproba

indipendenti.

A A ...,

eventi

h

o

a ogni

per

non

entrambe

sono

cadano

che

robabilità i i

che

gli

g i eventi

ipc

in modo

entrambi

che

l/2,malaproba l evento

Di conseguenza, .,

112 .

C

b

d,

b 1tàcheocnimonetamostritestaè

è 1/2 w l/2 èl/

i

even

gli

siano

mostrate

facce

di indipendenza,

entrambi

101

probabilità

e la probabilità

1/2

insieme a saldate Vtàsianoe i i possibi

le due

e che

/ le

l e due

che

e l altro

, siano

n nete

eventi.

Gli

Si noti

g

contemporaneamente

croce di icroce

che

g

gpjg

la definizione

pensare e

g gggf

probabilith

con

in accordo

si potrebbe

up o

,

con

de

quindi. se

anche fi

.

v

i

g

testa

mostri

moneta

la prima

ll4

endenti,

indi

Pr c,d

intervallo

che ,q

g d

se a tutti

solo

tali

di

contemporane-

probabilità per

d

e quindi

soddisfare

una

b

a,

dell intervallu

punto

numerabile

soddisfatti

a

la probabili

intervallo

ciascun

non si

assiomi

un

di punti

ragione,

c,

definisce

si vuole

e positiva,

gli

chiuso

di probabilità

è che

il numero

questa

tale

intervallo

qualsiasi

intuitivo

su

al fatto

onda

corris

è definita

probabilità

finita

probabilità

di S in modo

uniforme

di

a

assiomi

gli

sottoinsiemi Per

uniforme

b. Il concetto . Tuttavia, probabile

è data

amente

j

QgQg

6

puri 8

rQ

A

come

e

B

A

A

di

teorema anche

esprei a

SOllo

nel Allltuatllente

Ildenominatoreèunacostantedinormalizzazione

Bayes.

mndo

se

ucntc.. c.

L clusivi.

c Datoche8 RnA si

Il 1

v Bn 8

ecce

no

102,

-

Capitolo6

Pr 8

Pr B

tl A

Pr A

Pr 8

Pr B

A A

A

Pro

A

.

pr z

Sostituendo

formula

questa

nella

si

6.21 ,

ottiene

una

forma

equivalente

del

teorema

103

probabilità

che

Provare

é,2-6 Pr 8

e detle

contbinatorio

Calcolo

1.

IB

8 Pr w

di

Bayes

Pr A Il teorema

Si

monete testa

può

semplificare

di avere

una

moneta

eseguire

è scelta

un

a caso,

entrambe

a

Pr 2

di Bayes

può

Si risolve e

A

Pr B

Pr

A

esperimento

usando

truccata,

B

Si ha

e. ia

una

volta

e dopo

Pr A

1/2,

è lanciata

si ottiene

indipendenti

di nuovo sia

testa

BfA

una

si supponga

che

1, Pr A

4/5

all

volte.

Si

e Pr BavA

s

1/4,

quindi.

r1 B

Pr A

/4

D imostrare

l a disuguaglianza A,,

di Boole

per

sequenza

qualsiasi

finita

Il professor

Pr A

Rosencrantz

due

monete teste

Vn

mazzo

Tre

carte

siano

una

moneta

è la

Qual

Il

perfetta. che

probabilità

il

rimosse

dal

ordinate

con

guazzo

in modo

un una

numero alla

distinto

volta.

Sia

data

una 0

osservando due

moneta

lanci

volte

e poi

l esperimento .

multipli

per come

dello

determinare

cui un

si ottiene lancio

moneta

gli

da

1 a 10,

viene

è la probabilità

Qual

con

che

Y o Z sarà

a X che

le tre carte

Descrivere e che, a/b

una

usando

che

e croce

moneta.

che

probvbilith

dovrebbe

l essere

aperta.

i

dietro

nnn

si eanabia

Se

scelta.

non Y sarò

saranno

Y e Z.

con

Dopo del

duttore

c è il premio. varierà

come

porta

gli

X chiede

già

alcuna

rivelerh

si conosce

sua

sulla

sulla

sua

si sente

X adesso

sorte.

di loro

ma

liberato Si indichino

quale morire.

deve

dice

Il secondino

sorte.

sollevato.

più

la

restituire

al secondino uno

almeno

che

sarà

sa quale

privatamente

informazione

Il priginniero

giustiziato.

a cui

prigionieri

Il secondino informazioni

prigioniero Il prigioniero

poiché

tre

fra

uno

a cuso giustiziati.

si

poiché

di salvarsi

del

la risposta

con

probabilità equo

lancio

equo

accetti

Ha

o le sue

ragione

/6. polinomiale

essere

lanciare simulato

simulatn lu moneta

oppure

6.3

ripetere

discrete

casuali

Variabili

è corretta.

numei-,t

come

Dálle

1/3

rimangono

possibilith

sconosciuta

possa

S ggerimeiito

1/2.

è adesso

la risposta.

input

due

interi

a e b teli

che

0

a

l

del

lt

casuale

variabile .

i

.

discreta ...,

X

è una

che

funzione

v

la

uno

...

un

...,.....,,

limite

al numero

atteso

di lanci

in Iglò. ohicttivi.

Per

cui,

si

iiiumerh

che

le

vari ihili

c iiu rii

si mo

sp rio

discrete.

S

campiisne .....b.

lane con

che

che

procedura

X,

giustiziato

il secòndino

mescolato.

Una

6.2-$

porte.

ha scelto

due

a qualsiasi

dare

è proibito

lVIotivare

testa di moneta

truccata.

il risultato

Dimnstrare

ien a

rivelando

sia

premio

giusta.

crescente

truccata

I . Mostrare

p

e che 1a porta

che

prima

la porta

cambiare

prigione

gli altri

mentre

libertà

Rosencrantz

professor

di una

Il direttore

Guildenstern

professor

i prigionieri

ognuna

due

un

televisivo

19

Guildenstern

professor

di 10 carte, sono

scelte

p, dove

evento.

di vincere

probabilitè 6.2-4

terzo

j

6.2-11

lancia

perfette. del

più

.

altre

del e

se si vuole

la probabilità

Pr A

tra 6.2-3

non

un

se si sceglie

gioco

il premio

ma

scelta

è stata

una

apre

Si vince

fra tre porte.

porta

chiede

quindi

u

certa

una

di un

concorrente

un

essere una

dietro

programma

o numerabile

A ...,

u A.

di

supponga

Si

che

lancia

indipenden-

sono

che

dato

.

nascosto

ottenga

eventi

di due

condizionato.

in modo

indipendenti

sono

che

ti ma

.

banale

non

ma

semplice

se

C,

dato

condizionato,

modo C

Pr B

C

Pr A

C

un esempio

in

i rdipeszdenti

A e B sono

eventi

Due

6.2-9

6.2-10

Pr Ago

che

tale

mutuamente

siano

non

questi

It-

desidera

Esercizi

di eventi

ma

a coppie,

indipendenti

2 elementi,

k

di

sottoinsieme

suo

qualsiasi

per

esca

Fornire /-

.

indipendenti.

le

1/2

n A.

A

Ap

na a

di n eventi

insieme

un

costruire

come

Mostrare

á.2-8

due

che

comsponde

entrambe

Pr

A

A nd n

sempre delle

l

6.2-2

Pr

A

esempio.

truccata

SiaA1 evento

ottenere

Pr

Per

cui

per

eventi

la moneta

di Bayes. di

condizionate.

truccata

di tre

che

l eventn

probabilità

moneta

consiste

il teorema

sia

Pr A B .

che una

delle

ed

è la probabilità

qual

il problema

moneta

il calcolo perfetta

è lanciata

le volte,

determinare

6.2-1

Pr

A,,

A ...,

A,,

di eventi

insieme

qualunque

n A

n

A A.

A

un

per

Pr A A,

si supponga testa.

Pr B

che.

Dimostrare

6.2-7

Pr A Pr B A

p

is,iltato

finito di

o u1

104

Capitolo

Per

una

c

s

5

variabile.

Xs

casuale

xj

X

ed

un

numero

reale

x,

si

definisce

l evento

X

quindi,

x

Pr s

g

r

f

di densità

di una

variabile

casuale

X.

Dagli

assiomi

della

probabilità,

Come

e

probabilità.siá

Pr

s

mostrano

sono

elementari

lancio.

36

possibili

si hanno

cioè

variabili

casuali,

ogni

eventi

che,

un

s e

S

esempio,

definite

Pr

X

3,

1, sullo

comuni che

equamente

il iridassimo

e cioè

casuali

di dadi

Assumendo

sia

X come per

coppia

campione.

evento

elementari

variabili

allora

spazio

casuale

Si ha quindi

diverse

di lanciare

nello

la variabile

ogni

3 a 5 dei

Spesso

eventi

Si definisce

dopo

x,

Pr

y

X

è la funzione

i due

5136,

3,

2,

si

probabile, tra

3

stesso

a sei

3,

spazio

valori dato

3,

3.

facce.

Se X è una

la distribuzione

che 2

ha

che

casuale

che

x e Y

E gX

campione.

X e Y

di X e Y. Per e

un

un

fissato

valore

e

Yy

y sono

e

Pr X xe Dato

un

definire

di

variabili

variabili

casuali

iitdipendesrti se per

se per ogni

atteso

di

una

ogni.i-

e y, gli

eventi

X

.v

Il più

semplice valori

che

variabiIe

e più

casuale

EX gx

utile

assume.

casuali

definite

sullo

somme,

discreta Pr X

di esse

ha

una

speranza

stesso

spazio

o altre

prodotti

funzioni

campione. delle

si

In generale,

possono

variabili

x

distribuzione o

Y

y

valore

Pr Y

x

Pr X

di una s edio,

s ari bile

o sperai-a

y

x

Pr K

cwu le matemati a

è la

fF

P r

y

X,.....

X

Xn

IXi

variabile

una semplice

.

n variabili

quando

date.

Quando

della aleso

e

/3

casuale

compendia Il valore

Y

y

-.

e Y

formula

dei

x ggxvPr X

EXE

variabile

e ciascuna

indipendenti

X e Y sono

x e y, si ha

El i a

Valore

Xe

6.26

casuali

xy

y

come

coppia

si ha

Pr X x Pr Y y .

insieme

nuove

ogni

allora

x

o, equivalentemente,

Yy

per

EY

variabili

due

è lineare

matematica

casuali

di variabiIi

a

Vy

X e Y si definiscono

indipendenti

variabile

nuova

6.25

aE X

E XY

casuali

una

definisce

.

condizionata,

probabilità

Pr Y variabili

gx

allora

a,

costante

ogni

per

la speranza

Y

Quando

valore.r,

Pr X x

Due

finite

sommatorie

.

x

X

si ha

costante

ogni

E aX

V

della

funzione

qualsiasi è definita,

di g X

alle

si estende

proprieth

.

a E X

conseguenza.

e per

v,

Yy,

fissato

Pr X x Pr X x

6.19

Pr

ax,

gx

definita,

la

speranze

loro

matematiche.

casuale,

variabile

gx

g

Ponendo

Di

congiunta

per

de11e

I .

Se

y

di densità

analogamente,

Usando

la

i dadi

X assegna

e 3,

Questa

di speranze

la speranza

Se

definite.

sono

e E YJ

generica

gX.

è la somma

casuali

variabili

la funzione

Pr Y y gPr X x

ed

testa

6.24

convergenti

e assolutamente

E a X f

ogni

rappresenta

E Y,

EX

ogniqualvolta l esperimento

uniforme,

1l36.

E X

Y

1.

si consideri

36 possibili

di

valore

Pr X x

g

esempio,

V i sono

cr

di due

somma

della

speranza

EX 0

Pr cc

X che

casuale

variabile

l. La

Pr X x

-4

3$ per

Si guadagnano

perfette. della

4 1/4

1 lfZ

6 1/4 x

è ia funzione

atteso

1 - Pr vc.

Pr n

6

E Xj

funzione Pr X

monete

il valore

.

sÉS X s x

La

per

due

si lanciano

croce

ogni

105

probabilità

è

vincita Pr X

2$

si perdono

ma

in cui

un gioco

Si consideri

.r come

e delle

combinatorio

Calcolo

6

casuali

sono

indipendenti,

mutuamente

l n1

6.27

Xassume

. vièuna

E Pal

casuale

X.

maui numeri

valori

naturali

N

0,

. 2,

...

sperano.

per

la sua

Pr X

i

-me lie di

un

X è

i

EX

gi r0

x,

i

i Pr X

Pr X

i

I

6. 3i r0 che di

X

risu

t

è

deno denotata

con,

p,.

o,

quando

la

variabile

è

chiara

dal

intesto,

semplicemente

con,u.

Pr X r -I

t,

6.

ZiS l

1W

Capirolo

dato

6

che

Pr X

ciascun 0,

termine

che

Pr X

è aggiunto

i

0 volte

è addizionato

e non

è mai

i volte

e sottratto

i-1

volte

Varianza

e scarto

Un

6.3-3

di una

E

X

E E E

variabile

casuale

X

E X

X-

2XE X

La

2E XE XJI

X-

2E

giustificazione

una

a

con

casuale E XJ .

speranza

di una

z fs- j

vai x

Var

EX

è

63-4

X E

E

X

6.3-5

Sia

EE-Xj

E X

un

6.29

z x

numero

essere

può

e E XE XJ reale

riscritta

E-X

e quindi per

è che

si può

ottenere

EX

applicare

non la

a Var XJ

YJ

un espressione

per

Lo varianza

casuale

Xe

casuali

indipendenti,

Var YJ

.

casuali

X,

r

il

il

questa

variabile

perde

dadi.

k

per

matematica

è la speranza

Provare

che

sono

e gY

fX

f e g.

casuale

t

per

Sia

S uno

e si supponga

negativa,

non

che

sia

EX

definita.

ben

di Alarkov

E X /t

t ogni

ogni

la varianza

di aX

sono

cosi

correlate

0.

s c

can pione

spazio S.

Pr X

t

Qual

è più

che

Provare

e siano

Xe

ogni

costante

reale

matematica

del

per

Pr X

casuali

X variabili

tali

che

X s

Xs

per

t,

.

t

6.3-8 X,

...,

X,

sono

indipendenti

a coppie,

allora

la speranza

grande della

il quadrato

á.3-9

6.31 medio

scarto

di una

variabile

medio

quadratico

casuale

di una

con

a quando la variabile la varianza di X è denotath

notazione

tre

volta

sola

indipendenti. funzioni

delle

su k dei

Mostrare

che.

V ar X

E

Provare

che

sua

variabile

qualsiasi

per E

X

variabile

di una

quadrato

o

casuale

speranza

1

X che

casuale

solo

assume

0

i valori

e

l.

X

.

quadratico

o semplicemente

casuali

scelta

la disuguaglianza

n

QVar X,

di X. Lo

una

Qual

allora

dado,

su nessun

esattamente

k dollari.

è la

. variabili

gi

scarto

altri

provando

variabili ogni

per

appare

compare

e vince

dolIaro

giocatore,

Y due

non

giocatore

numero

un

puntare

e la conclusione

la

6.30

se n variabili

n

e

dal

può

giocatore

è agitato

al quadrato

Var X

In generale,

il suo

del

X una

Pr X

è

6.25

.

variabile

X

scelto

Un

barattolo.

l a 6. Il barattolo

da

se il suo

tiene

guadagno

Provare

6.3-7

Var

altrimenti.

in un

dadi

X

6.29

casuale

107

probabilità

X j

semplicemente

L equazione

X e Y sono

Var E

se il numero

il dollaro

Siano

di tre numero

un qualsiasi

indipendenti

le eguaglianze ma

variabile

di una

faX

Quando

su

seguente

del

á.3-6

varianza

La

speranza

ivi .

per

variabile

E

X

E x-

X con

l uso

prevede

gioco

1, 2, 3, egli

varianza

Var

medio

quadratico

e delle

eccetto

sottratm .

dollaro

La

combinatorio

Catcolo

X è la radice

variabile

casuale con

casuale

quadrata

X è comprensibile

è denotato

con

contesto.

Con

dal

dalla

a- V ar X

detmizione

6.29

varianza.

della

della

positiva

X talvolta

Var nXj

6.4

Distribuzione

e distribuzione

geometrica

binomiale

cr- . Il

di

lancio

una

moneta

è

un

esempio

derivano

dalle

di

di

prova

Bernnulli.

è

che

definita

come

un

Esercizi

6.3-I

Si lancino

due

valori

si ottengono

che

comuni

dadi

a sei

con

facce.

il lancio

Qual

è il valore

Qual

è il valore

atteso atteso

della

somma

del

massitno

valori

6.3-2

Un

array

ciascuna atteso dell indice

A1

..

n

contiene

i

degli

permutazione dell inclice

dell

delI

elemento

numeri

distinti

n elementi

elernentu minimn

massimo

che

snno

equamente dell array

ordin. ti

caiualmente.

prnbabile. Qual

Qual è

il

dei

due

di

tali

con

distribuzioni

importanti

distribuzione

binomiale.

La

distribuzione

Sia

Ii

ptOVC

d

la distribuzione

BCfllC Ulli

geo netrica

geometrica

è il vahire valore

att, ,

f

dell array vari bil

casuale

X

il

nunlcro

di

piove

neccswrie

per

ottencrc

un

iud

ceisu.

e la

l b

bk

15, 1/3

0.25

0.35

0.30

0.20

0.25

0.15

0.20

0.10

0.15

0.05

k

0.10

0.05

Figura

6.2

ciascuna

IO Figura

6.1

Lata L na

fallisniento

ddistriLu L I

q

p.

La

-

ione

ll

della

13

14

probabilità è

disrribic ione

binomiale di

bg

successo

15. 113.

p

La

1/3

che

ottiene

si

speran a

del1a

con

n

15

disrribu ione

e di

pro

è np

Beiv oufli,

5.

15 Per

con distribn ione

geoir etrica

speran-a

12

La

cover probabilità

di I/p

successo

p

1/3

e

di

probabilità

esempio

undici.

3.

si supponga

Dei

36

di successo

probabilità

di lanciare risultati,

possibili

è p

ripetutamente 6 valgono

8/36

219

due

sette

dadi

e si devono

si ottenga

finca

e 2 valgono anciare

undici. i dadi

Di

l/p

un

sette

o un

conseguenza

912

la

volte,

4.5

in

media. Allora

X assume

Pr X

valori

k

qa-ip

prima

di un

nell intervallo

1, 2,

...

, e per

/

1 vale

che La

distribuzione

binomiale

633 perché soddisfi istri

successo

l equazione

6.33

si hanno è detta

k

l fallimenti.

distribuzione

uzione.

distribuzione La

di probabilità figura

6.1

che

illustra

successi

Quanti

tale

l

la s peranzadi

una

come distribuzione

geometrica

3.6

può

essere

calcolata

usando

si verificano

p e un

probabilità

Assumendo l identità

Una geometrica.

il numero

e per

Pr

l

X

0,

gkq kl

glcq

...,

su

ii prove

di

probabilità

n prove

Bernoulli, 1

q

dove Si

p

X assume

quindi

un

successo

definisca

valori

si verifica

la variabile

nell intervallo

ognuna

di esse è detta

binomiali

6.36

modi

di scegliere

si verifichi

I delle

quali .

è p

distribu -ione

usando

P

n

c,

aq

perché

X

1, ...,

0,

p

vi sono

con

casuale

n,

k

6.36

40

con

di successi

p

EX

durante

fallimento

q

bisromiale.

n prove

distribuzione

Una

Pn

sono

successi,

di probubilith

comodiù.

si definisce

che

e la pmbabilità soddisfi

la famiglia

che

l equazione di distribuzioni

la notazione

-e k,

l/p

.n

6.37

iati

6.34 Di

conseguenza

la risposta Var

X

in m intuitiva.

q/p-

La

i a, occorrono varianza,

I/p che

può

prove essere

prima calcolata

di ottenere anelo

un

successo.

amente,

che

è anche

La

tigura

che

6.37

si

è

l

.

6.2

illiistra

è il I--eiin o

una

distribuzione

termine

binomi il .

della

sviluppn

Il di

p

binomiale nnrne e .

ha Di

conseguenza,

dato

origine che

dal p

fatto q

ha n

6.35 g

bk

n.

p

I,

6.38

I 0 come

richiesto

dull aisioma

2

de

li

assiomi

ululi

prohahilitiL

l,

Capirolo

á

Si può

sia

calcolare

la speranza

e 6.38 .

6.14

I

q

combinatorio

Calcolo

Sia Dal

p.

X una

di una

variabile

la definizione

variabile

casuale

con che

di speranza,

distribuzione

segue

binomiale

la distribuzione

dalle

binomiale

equazioni bl,

n, p .

Come e

si ha

vedere

si puo cresce

dalla

finché

distribuzione

n

EX

0 a n.

/

figura

si comporta

la distribuzione

6.2.

il valore

raggiunge sempre

in questo

modo

decresce.

e poi

osservando

Il.

probabilirà

bl

binomiale np

medio

e delle

i. p , Si

il rapporto

/ che

per

può

provare

l

va

da

che

la

succes-

di termini

S1V1

gkb k n,p I 0

k

b k n,p 1 n,p

bk

z ., ze-

pk-iqn-l l

n k

--

n

li

n q

p

Il

k

1 n

1p

k

n

1 p

k nq

k n

kq pp

k

1p

n

pkq n-I -k

g I O

6.42

aq

n-l

np h k n

za,

np.

b l-.

b/

6.è9

linearità

la

sostanzialmente

della

speranza,

inferiore

numero

di successi

speranza

6.2á ,

di

calcoli

dell i-esima il numero

si

ottenere

algebrici.

prova. atteso

può

Allora

di successi

Sia E X, su

X p

n prove

lo

stesso

la

variabile 1

q

risultato casuale 0

p e, per

con

una

che

descrive

la iinearità

il

bl

I

1p

1

intervallo

ip

tl seguente

di per

n. p 1p

n

per/

n

grande 1

n. np

lemma

/-

la

l

decresce . ha

raggiunge

k

Se due

un

ii

massimi

massimo

lp per

per

Di conseguen-

l unico

è un k

n, p

b l-.

mentre

allora

intero. i

intero

1p

e per

l che

1 p.

n

fornisce

cresce ,

distribuzione

distribuzione

altrimenti.

q

la

k è positivo.

1p

quando 1p

n

distribuzione

la

e cosi

p.

q

1 esanamente

un

superiore

limite

la distribuzione

per

binomiale.

è

n

.rxi

l

nell

della

hl

st. p

I

quamità

è più

r. p 1 n, p

bk Usando

rapporto

Questo

I,p

O

I

L8ITl11tQ

a

Siano

gx,

6.1

ir 0,0

p

1,

. -

E X,

e 0

n.

Allora

6.10 .

si ha

l

. a

s,

Dimostra ione.

1-p

q

n

Usando

l equazione

il

b ,.n.n

np.

Lo

stesso

approccio

I equazione si ha

f ,l

può

EX P

usato E X-

per

calcolare E-X.

la varianza Poiché

X

della può

distribuzione.

assunsere

.iolo

0 c 1.

PP

6.40 di X. si sfrutta

l indipendenza

delle

v prove

quindi.

d ll equazione Esercizi

6.31 , n

Var

K

Var

. g

6.4-1

Veriticare

l assioma

2 della

per

probabilità

la distribuzione

eeometrica.

g.

n

64-2 Var

,

7

.

la varianza

..

-

Us mdo valori

e quincli

p,

P-

calcolare

essere Var X

si ha

6.29 ,

EX-

Per

n.s.

X,

Quotaste e

3

volte

insediasi

dei

orni

lanci iri

/ n

I

6 inondate

prinsadi

pcrtctte

croci

n

6

gw il

npq

.

t i-ll

4-.3

Dimo ti

al

che

I l

i,

g

n.

q.

dove

q

I

p.

ottenere

3 tei

sta

Calcolo

6.4-4

Dimostrarè che

valere

il

approssimativamente

massimo

della

I/ nnpq,

dove

distribuzione 1

q

binomiale

bl

r,

è

p

* 6.5

Code

Dimostrare con

che

la probabilità

probabilità

l/n,

p di ottenere

probabilità

di non è

avere

successo

in rt prove

approssimativamente

esattamente

un

l/e.

successo

di Bernoulli,

Il professor

Rosencrantz

lancia

Guildenstern.

professor numero

di teste

ottenere

una

è

che

Dimostrare

anche

la

k successi.

In questo

regioni

la probabilità

. Suggerimento

14

il professor

per

lo stesso

schema

n voIte,

perfetta

perii

che

è un

di dimostrazione

essi

successo

verificare

fa

anche

ottengano

Rosencrantz

professor

Guildenstern

e cosi

il

lo stesso

della

limiti

0

per

k

bk

n,

somma

la

di tutti

un limite essere

dal

i termini coda

sulla

determinati

di

destra

una della

invertendo

dove

á.4-8

H

una

Considerare

n prove

probabilità

p

di successi.

di

Teorema

Sia

p

p

e sia

una

0

sequenza

p. Sia I-

n,

di n prove

X la variabile

la probabilità

di

casuale

Bernoulli,

che

dove

ciascun

per

i

per

i

l,

2,

casuale

1, 2,

...,

n,

..., che

n. Provare

l i-esima

denota che

k

I

ha

prova

il nunero

per

totale

k

di almeno

k successi

è

Dimostrazione.

Facendo

uso

della

disuguaglianza

6.15

si ha

.

pb i n,p i0

n

Pr X

l pb i n,p

6.4-9

Sia

X la variabile

casuale

che

denota

il numero

l i-esima

prova

totale

di successi

in un

insieme

A n-I

di i prove

di Bernoulli,

la variabile A

casuale

di n prove

Provare

che

dove che

denota

di Bernoulli, per

0

il numero

dove i-esima

ha

totale prova

probabilità

di successo

di successi

in un

ha

probabiIità

p,

secondo

di successo

e sia

X

p

bk

g

insieme

i

n,

p

i0

p.

n-k,

l

ki

n- k i

I- i/

Pr X

k

Sug

geriine to

to che

coinvolga

Pr X mostrare le prove

k

.

come

ottenere

di A. e usare

le prove il risultato

di Bernoulli dell Esercizio

di Ada

binomiale Si

bk

di successo

il numero

.. -.

ir,

k

Pr X

con

le due alcuni

pmveranno

coda.

dove

denota

6.13 .

X la variabile

np.

ognuna esattamente

n, p .

I limiti

sulla

e fallimenra

á.2

consideri

pb i n,p

Bernoulli,

di successo,

distribuzione medio

i ruoli

Pr X k

di entropia

di avere

croce .

l identità

n,

è la funzione

Bernoulli,

distribuzione

B Á/ -n

/7

di

probabilità

della

valore

ik / g.

n prove

della

le code

lontane

p

in

interesse

è un successo

ottenere

per

che

su

k successi

più,

di maggior si analizzeranno

paragrafo,

possono

probabilità

Mostrare

o al

è spesso

si fornirà

sinistra

Si

á.4-7

H3

probabilità

binomiale

almeno,

distribuzione

Innanzitutto coda

avere

p di successo,

probabilità

è 1/e.

moneta che

Dimostrare

testa

Utilizzando

una

di

probabi1ità

ognuna

importanti 6.4-6

distribuzione

e delle

p. La

á.4-5

della

combinatorio

,

un esperimen6.è-6 .

, n-k

g

b i. n

k,p

p

-z dato

che

g,

b i,

n

k, p

1 dal l equazionc

6.38 .

un

successo totale

si verifica di successi.

con Allora

5

Capitolo

all altra.

coda

una

da

limiti

i

per

0

bi

n, p

per

0

k. Iterando xe

si ottiene n, p

bk

i I.

e quindi

6.3

Corollario

una

Si consideri Sia

dei

bi nomiale.

distribuzione

della

sinistra

la coda

per

l adattamento

al lettore

si lascia

In generale,

l a il teorema

riformu

corollario

Il seguente

p.

che

casuale

allora

per

k

probabilità k

0

n,

k-l

l

b k n,p

la

Qx

pb i n,p

i0

i0

è

k successi

al più

di avere

con

si verifica

successo di successi,

totale

il numero

denota

un

dove

di Bernoulli,

di n prove

sequenza

X la variabile

probabilità

n,

bk

p

k

k

Pr X

ph i n,p

b k n,p

di successi.

totale

il numero

denota

n prue con

fallimento

p e un

np/2,

si ha

più

piccoli

diminuisce

sinistra

coda

1/2 e k

p

espo-

1

q

probabilità Allora,

per

0

un

dove

Bernoulli,

di

p.

Sia

np,

k

si verifica

successo X la

variabile

casuale di avere

la probabilità

n/4,

probabilità

ottenere

meno

Teorema

6A

l, il cui

k

di

dice

6.4

esattamente

di

ottenere

iilr

binomiale,

teste

della

è minore

anche

essere

come

il Lemnm

4,

è minore

teste

di

della

Il

teste.

n/r

superiori

i limiti

usando

la probabilità

esattamente

ottenere

con

insieme

monete

di n/4

r

di

la somma

limita n

meno ogni

per

di

probabilith utile

abbastanza

Inoltre.

n, p

lanciare

di ottenere

teste.

n/4

bk

di

supponga

si

la probabilità

che

il Teorema

è che

significato

esempio.

Per

l.

di

può

limite

Un

che

là coda

per

distribu-

di

6.1.

destra

simile.

in modo

determinato

essere

puo

meno é.á

è una

Si consideri p. k

Pr X

.

con

Corollario di k successi

kq/ np

k

zione di

sequenza

k

i termini

teorema.

il seguente

dimostra

una

probabilità

della

sinistra nella

successi

á.4

Teorema consideri

di

numero

il

coda

sulla

si concentra

tutti

binomiale.

distribuzione

della

come

nenzialmente,

np

. Quando

medio,

valore

kq

n. limite

prossimo dal

x b k n,p

g , Il nostro

1

-n

,, i

Lontano

x

g il

X

i0

Si

II5

e delleprobabilità

combinatorio

Calcolo

114

pb i n,p

Sia

casuale

di ottenere

probabilità

che

con

allora

probabilità n, la

I

np

per

è

di l successi

più

si verifica

di successi.

totale

il numero

denota

un successo

lli. dove

di Bernou

di n prove

sequenza

X la variabile

i0 n

gq

.

b k n,p

np

k

Pr X

k

kp

n

Si limita

Dimostrazione. nel

presentata

3.2.

paragrafo

hi

Per

g,

, bi

i

l, 2,

n, p ...,

con

l , si ha

una

serie

dall equazione

usando

geometrica

la tecnica

n

i

per un

1p

., U ., -

i lignite

che

bi

1 n,p

....

alla

i

Si

consideri

i

l, 2...,

n.

I corol1ario

coda

destra

1

E xl-

Allora

l xá i n,p l

X

Siu

p

per

p

di una

mostra

come

si possa

binomiale

distribuzinne

con

ciascuna

di Bernoulli,

lo regie

r

p. r

di

sequenza

n. il successo

P

n prove che

porgendo

p di successo.

probabilità

usare

tale

teorema

p

p per

nella

i-esima

fornire

per

ciascuna

prova.

6.6

una

q

Pr

segue

considera

teorema

l. 2,

Teoreaur

Ponendo

. , p-

.

p

np

6.42

iq

n,p

n,

bk

k

Il prossimo

1 n, p

bi

la serie

n,p

bi

n

prove

si verific i

X la vuriabilc

casuale

con

di

eh

dove

Bernoulli.

probahilità descrive

p

ed

il fallimento

il numero

totale

con

prova,

per

probabilitè

di successi

e sia

Dimostrazione. Pr

Dato r

p

X

dove

r

p

La

parte

ad

X un

i

l,

Pr

2, ...,

-

della

opportùno

la disuguaglianza

Usando

in x,

crescente

In r/p

a

Scegliendo

di

Markov

r

p

X

dimostrazione

consiste

disuguaglianza casuale

che

nel

6.43 . è 1 se l i-esima

e nel

valuterà

si

e

,

sostituire .

Ee è un

di Bernoulli

prova

r In r/p

exp r

i/u

-

Ee

limitare Prima

r in r/p

exp pe

si oniene

6.32 ,

si ottiene

6.5-6 ,

l Esercizio

veda

si

6.43

nella

la variabile

fallimento.

è strettamente

e-

e

n, sia X

e 0 se è un

e

Pr

in seguito.

importante

più

0 la funzione

a e ,

e

E

valore

ogni

per

determinato

a sarà

Pr X

che

Per

successo si considerano

Quando

Perciò,

coda

x x,

dal

allora

successo,

di una

destra

ha

prova che

corollario

il seguente

deriva

6.á

Teorema

ciascuna

in cui

di Bernoulli

prove

la stessa

di

probabilith limite

un

definisce

la

per

binomiale.

distribuzione

il

e

6.7

Coro/lario n

-u

ug

una

sequenza

fallimento

con

Si consideri p ed

il

un

1

q

probabilità

p.

Allora.

r

pn

con

si verifica

un successo

dove

di Bernoulli,

di n prove

probabilità

np,

n

Sostituendo

X

si ottiene

p,

Pr X

r

np

p

np r1

,

n

/l

QIX

b Ic,n,p

g k

n

n

Per

Dimostra -inne.

IIEI

6. 39

l equazione

binomiale

distribuzione

una

implica

che

p

np.

EX

D

il

che

segue

mutua

dalla

6.27 ,

indipendenza

la

perché delle

mutua

variabili

indipendenza

casuali

variabili

delle si

e

veda

l Esercizio

X

casuali Per

6.3-4 .

la

implica definizione

Esercizi

di speranza, -Pi a 1-P,

.t

6.5-1

8

cosa

Che perfetta

pe

di n teste

meno

testa

alcuna

ottenere

non

probabile o ottenere

quando

si lancia

una

la moneta

4 4n

quando

si lancia

q,e l

p,e

6.5-2 é

è meno n volte

che

Dimostrare

6.44

exp p,e ,

n dove

ezp x

dalle

denota

la funzione

disuguaglianze

disuguaglianza

2.7 .

esponenziale

u

0, q

Di

conseguenza,

l.

e

exp x e.

e

e.

disuguaglianza

La I

e

e

l ultima

6.44 linea

segue

segue

ai

dalla

rO

per

n ani

1

b / n,a/ a

a

a

0 e per

che

se

1

ka

na

i

che

I- tale

ogni

n.

I

0

Il X-p

exp p,e

E

p

6.5-3

Provare

I-

0

np.

0

p

l e

q

I

p.

allora

il

exp pe

, i0

dato

Pr

Che

.C

p

p

g,

r

p,.

exp pe

Quindi,

d llu

rr

diiu

.

u.tglianza

6.43 .

segue

che

6.45

6.5-4

che

Dimostrare

le

/n Pr l

X

r

elci

condizioni

p cl

Tevretn t

fi.6

implicaita

che

moneta v 1te vo

mostrare

Analogamente, Pr np

che

del

le condizioni

Corollario

è

giorno

n

b, r

e

Pr b b,

r

X

119

probabili à

che

implicano

6.7

lo stesso

cadano

i compleanni

entrambi

che

la probabilità

Quindi,

e delle

co inatorio

Caco o

QPr b, r rl n

6.5-5

Si

consideri

i

l, 2,

una ...,

n,

e sia

successi Pr X

E Xj.

p

p

S,rggerimento seguita

che

pe

il Teorema

dimostrare

disuguaglianza

rl

con dei

totale

0,

e-

qe- ,

6.6,

usando

la

applicare

Quindi

za

1n rlp

n

scegliendo

destra

la parte

si minimizza

disuguaglian-

della

6Aá .

tutti

che

probabilità

Analisi

probabilistica

Questo

usa

paragrafo che,

probabilità

in

esamina

Il terzo

tre

una

esempi

k persone,

con

esempio

consecutive

di

coppie

Q

dove

A

j per

ogni

di una

lancio

lo

dei

dentro

del

paradosso

buon

Un

esempio

Poiché

Pr Bq

c

ue

e

di

loro

siano

che

ogni

domanda,

anno

abbia

distribuiti

uniformemente ...,

r 1,2,

ed

La fatto

stanza

dell anno di meno

ci sia

perché

buona

moltiplicatz

numero

dei

Se

b,,

è

n-

risposta.

di un anno,

giorni

sono

b,,

t

probab 1

è la sorprendente

Poche. del

del

paradosso

una

come

b ..., k

Iterando

si indichino

n

36S con

sugli

le persone

giorni.

Per

b

n.

l

n giorni

dell anno,

i Si

nella

l, 2,

... k, sia

assuma cosi

stanza

che

anche Pr b

b

con

gli

il giorno

l, 2....

interi

l.

Pr B,

la

selezione allora

due

la

per

che

probabilità

I /n,

la probabilith vi n giorni,

distinti,

sono

b,

su

che

dato

b, c b

per

i

anno

dell

che

i compleanni

r

I/n

per

Pr 8 Pr 4

condizio wta sono

BA

B Pr A.

.

.

in cui

--. --

l

siano l, 2.....

i

persone

i e j facciano dei

casuale la probabilità

compleanni

che

il compleanno

il compleanno sia

indipendente. di i e quello

lo stesso Se di j cadano

giorno,

dipende

l

i compleanni entramhi

dal

La

disuguagiiunza

p

g

- k-l,

-l/ , -2/n

il giorno

, in

A C,-A

b, r

Pr b, r Pr b r l /-n

e.

1 .

2.7 ,

forisisce n

sono

I,

la

parole.

...,

n- k-I

/-

f /

l /an

b, c b

che giorni

si ottiene

6.46

la ricorrenza

rè e

altre

In

. .

Pr Aq

Bq

che

probabilità

1. dato

distinti.

Pr B

l

n. che

indipendenti,

Prjb, r

iniziale

condizione

come

assume

t

probabilità che

molte

è il classico

probabilistico in una

giorno

ne bastano

compleanno,

l i-esimo

cade

esserci

stesso

nello

alla

P er rispondere

assuma

il ragionamento

la ricorrenza

,

seguito.

di

si vedrà

nate

in realtà

è che

Il paradosso

8q

Pr Aq

2,

devono

persone

persona

6.46

moneta.

si

6.20

dal equazione

si ottiene

B,,

An

B,

scrivere

compleanno

illustrare

per

Quante

della

da quello

è diverso

pb, j 1,2...,i . si può

distinti

compleanno.

1

i

persona

i. cioè,

j

A, b,

stesso

contenitori.

dove Il

della

il compleanno

che

è l evento

Pr Bqj

6.6.1

k persone

la

determina

abbiano

persone

di palline

casuale

nel

Il primo

probabilistica.

alcune il lancio

considera

di teste

sequenze

l analisi

illustrare

per

stanza

Il secondo

compleanno.

che

k-I

a,.

il

6.á

uguali

siano

L evento

differenti.

siano

coincidenti

compleanni compleanni

due

è

distinti

compleanni

abbiano

a1meno

che

che questa

perché

però

su k abbiano

i compleanni

uguale

scelto probabilità

indipendenti.

siano

La probabilità

complementare.

della

è 1 diminuito che

Mostrare

6.5-6

giorno.

2 persone

almeno

che

la probabilità

izzare analizzare uò ana Si i può l evento osservando

6.44 .

dato

Attenzione

i compleanni

che

dall assunzione

dipende

un

in

cada

essi

di

uno

di

compleanno

coincidenza

della

al posto

disuguaglianza

questa

il

tecnica

venga

b

è la stessa

compleanno

lo stesso

i e j abbiano

che

la probabilith

Perciò,

che

la probabilità

scelto,

stato

sia

b,

che

volta

una

intuitivamente,

Più

.

,

.

I/n il numero

descrive

che

per

prova.

fallimento

è lln.

provare

per

r

per

il

-

e

r

Allora

i-esima

ed

p,

probabilità

casuale

X la variabile

Sia

p.

con

nella

dove

di Bernoulli,

verifica

si

successo

1

q

probabilith

di n prove

sequenza il

g l/n

per non

i

che

b,.

l. 2..... vengono

che

b ....,

kpresi.

I

l l

quando 1/2

1 12n k/

quando

k

In 1/2 . 1

La

2nln2

oppure,

l Sln2 n /2.

l sono

persone

in

compleanno

è almeno

31

per

marziani

Per

una

stanza, 1/2.

ottenere

che

probabilità

Su

si

Marte,

un

anno

siano

l equazione

deve che

probabilità

lo stesso

i k compleanni

risolvendo

n 365,

la

tutti

avere

è lungo

due

669

se

esse

marziani

giorni

almeno

abbiano

Quante

stesso

occorrono

quindi

zione

altro

metodo

Si può

usare

anche

se

nella

la linearità

della

I

se

speranza

del

si definisca

equazione del

paradosso

la variabile

la persona

casuale

i e la persona

6.26

compleanno. X,

1

per

j hanno

per

fornire

Per

ogni

i

è

si

che

dato

compleanno

che

probabilità

di speranza

due

abbiano

persone

lo stesso

compleanno

è l/n,

quindi

6.23 ,

E X

1

l/n

l/n Il numero

l/n

1

la somma

di individui

delle

speranze

con

lo stesso

matematiche

compleanno individuali

è. dalI equazione delle

coppie,

La

L

che

1 contenitori

dal

la

tappa.

lancio,

primo Per

vuoti.

sono

contengono

consiste

tappa

i-esima

è costituita

i contenitori

tutti

dell i-esima

lancio

in tappe.

Si

b centri.

ottenere

tappa

prima

quando i

sono

n lanci

pallina. vuoto.

palline di

probabilith

ogni I

i

e b

un

ottenere

n.

tappa.

dell i-esima

lanci

variabile

Ogni

n

g, successo

b

della

speranza,

i,

ha

una

di lanci

richiesti

distribuzione

per

avere con

geometrica

e perciò

1 /b.

i

il numero

Quindi,

casuale

b

i 6.24 .

che

ci ogni

per

di

è

probabilità di coppie

dei

il numero

centri

b

.

atteso

esattamente

n

Sia 0

Quindi

centro

un

per

una

contenitore

1 /b.

i

b

gli

centro.

e l i-esimo

tappa

richiesti

n di lanci

panizionare

per

avere

l i-esima vuoti.

è

centro

la definizione

per

usati

di

sicuri

durante

lancio

un

ottenere

per

abneno

in un

finisce

la pallina

cui

per

numero

del

1 -esimo

l i

tra

lanci

dei

lanci

conrestga

contenitore

ogni

perché lancio

un

ad

essere

possono

contenitori La

tanciare

la media

conoscere

I centri

di k persone

di

la distribu-

segue

pallina

atteso

numero

il

e quindi

1/b

una

una

contenga

contenitore

daro

un riceva

b.

è 1/ l/b

vuole

semplice

più i, j

l-, come

j

lo stesso

un analisi coppia

altrimenti.

0

perché

il

n palline,

è n/b.

perché

contenitore

dato

un

probabilità

si devono palline Quante centro dato il nome Sia

analisi

approssimativa

stanza,

f

di

con

geometrica

successo Un

lanci

di

Il numero

in un dato

cadono

lanciate

vengono

Se

1/b .

contenitore

dato

in media,

lanciare,

devono

si

palline

pallina.

risultato.

che

di palline

aneso

numero

23

lo

in un

cadono

n.

bk

binomiale

la distribuzione

segue

che

di palline

Il numero

eontenirore

in un daro

finiscono

palliare

contenitore

quando

Percio, di

Quanre

è al più

quadratica,

23.

I

almeno

distinti

E n,

è Per

la linearità

E4 b

kk

1 2 ll

Perciò,

l k

quando

se vi sono stesso

almeno

1 v 2n

compleanno.

compleanno trovare

è

marziani,

ma

si ha

La

prima

esista

una

analisi coppia

di persone

differisca

atteso

di coppie

stanza

ci si puo

28

I

1,0356.

di compleanni di almeno

38

cui

per nelle

uguaIi

aspettare

il

numero

Quindi,

con

uguali.

Su

è almeno

che

atteso

almeno

di

almeno

Marte,

dove

due

coppie

28

persone,

un

anno

abbiano

con ci

atteso

situazioni,

I/2,

necessarie

mentre

b

lo

669

E n lo

stesso

si aspetta

è lungo

affinché

la seconda

-Eb

di

consideri

il

h

che

ha determinato b in

di compleanni

uguali

asintoticamente

sia

è lo stefano

1. Sebbene

del

O In .

i

riga

L ultima

lancio

casuale

di

palline

iùentiche,

numerate

da

I a f.

in

probabilith.

La

probabilith

che

uno

pallina

finisca

in un

dntn

contenit ire

i

Ill .

limite

dal

segue

I lnb

3.

l..lnci

prinla

serie

sulle che

armoniche.

ci si pnssa

aspettare

In c.,e

con

o ni

possono

porre

parecchie

domande

interessunti

sul

processo

del

I ll1Clil.

abbia

Sequenze

di

successi

t

i

Si

ni tore

pallina.

i r

contenitore.

occonono

conclusione

b 6.6.3

la stessa

.

01

appro simativatlle,ite

i

con

b

il numero

e contenitori

processo

b

bg

una Si

b

giorni

la probabilità

analisi

g.,

1. Quindi.

j di persone

ecceda

il numero due

di compleanni

marziani.

il numero

di compleanni

di persone

Palline

se

36S

ha determinato

il numero

6.6.2

in una

n 365,

coppia

bisogno

il numero

individui

Per

almeno

l 2n,

27 1 2

28

E

E

si

pui

aipctt ire



ri posta

i

O1 v

.

cnnte

tni ilr

l analiii

ieguenb..

ste



lumache

122

Capitolo

6

Si comincia ia A moneta

o,

tutti

cui

per

più

una

la lunghezza sequenza

attesa

di teste

I evento

precisamente, teste,

dove

I

I

n e l

i lanci

siano

teste

ha

una

distribuzione

er ,

iz

della

lunga

che

solo

producano che

che

provando

l evento

i

k

-

i n

sequenza

almeno

l cominci

lanci

k

di teste con

consecutivi

1. Perogni

l,

pi ,

lancio ...,

eventoA,,

p

è Ol

l i-esimo

i, i

dato con

geometrica

lunga

più

l

laprobabilitè

k

gruppi

di Llpt

di almeno

sequenza

una

che

.

consecutivi.

lanci

j12

p osizione

non

teste

Llgn31

questi

che

ciascun

di lunghezza

sequenza

si,t una

non

gruppo

p endenti

ti

sono

gruppi

è Ig n-l

JJ

Ls

L l I /n

l

Poiché

la probabilità

esclusivi,

e mutuamente

Llp 12

6.47 Per

la probabilità

123

probabilità

di

i/-

1/2

q

Percio,

e del/e

combinatoria

Calcolo

l / n2n/

1

- 2n/ign-l / n

2f1gn ,

n

r A .fs1

ls 1

1/2

g -1g

O 1/n .

p2lgn

i

l/n , e cosi

la probabilità

che

2

una

sequenza

di teste

i la sequenza

di lunghezza n -2

almeno

l1g n

Pr

I 2 1gn

lunga

almeno

cominciare.

può

l cominci

da

una

La

qualsiasi

I 2 Ign3

cominci

probabilità

che

posizione,

è perciò

una

in posizione

sequenza

i è

di teste

I

Llg n J /2 1

il

6.á-E

l/n, che,

per

i Boole La

la disuguaglianza

vale

-O 1/n

0

anche

come

che

questi

sequenza

qualunque

la probabilità

6.22 ,

non

teste

di

dell unione

sono sia

degli

eventi

equamente

è

ed

dente

di Boole

eventi

per

che

probabilità

I/n.

Dato

che

ogni

è superiormente

La

contenitore.

è al piii

Qual

un

contenitore

Per

l analisi

è lunga

al più

lunga

almeno

2f lpil

è perciò

al



6.6-2

h, la lunghezza

attesa

deIla

sequenza

O lgn

che

probabilità

la p robabi

una se qt. enza ità che una

.

del

di teste

ecceda di

rf l en1 j

lanci

Ignfteste

diminuisce

cominci

rapidamente

dalla

indipendenti

rii

lo ariani

che

siano

p leanni

è inspirai

compleanno.

del

o è sufficiente

tre

p osta.

pp

6.6-4

i è

Qual

che

è la probabilità

si

Come

/,--permutazione

I -stringa

una

sia

p erché

te ta

ci

che

pprobabile

compleanno.

lo stesso

con

persone

nd una

invitate

essere

dovrebbero

con

.izione posizione

1/2

i,rpgn

almeno

palline

paradosso

persone

Quante siano

sequenza

qualsiasi

che

p ima

o

lunga

più

6. 6-3 jn

è indipenp un

in

finisca

pallin

oche ii - e

di lanci

atteso

due

contenga

ciascuna

lancio

C ri. Ciascun ,iri.

in b eonteniti

che

prababile

è il numero

da

l/n

l

O 1In

attes

indipendenti .

n1

r. Perr Pr

sequenza

limitata

2 fig n 1

I

è a1meno

. L ui - J12

ecce

lunghezza

le palline

lanciato

di avere

Si supponga

mutuamente 1

1unga

.

n

Q lg

I /n

più

0, la sua

almeno

lunga

sarà

la sequenza

1.

l/n

g

il

dato

che

1a sequenza

che

1a probabi1ità

2.7 .

Eser izi Ai,2 lgn

U

e dato

che

dato

Quindi,

la disuguaglianza

si è usata

a ciò,

arrivare

Per

correlare

può

di c nrdinalità

su un insieme

n sia

pr,b

questo

una

in realtà

dei

p aradosso

compleanni 1/n la probabilità

Quindi e

uivalentemente,

.

. che

la sequenza

-

la probabilità

-

piii

che

la

lunga

sequenza

sia più

alnseno

rl Ignl,

lunga

abbia

è aI più una

u/n

lutsghezza

I/

o.

minore

6.6-5

di

Si

che

supponga

ed

indipendente contenitnre.

Per 20

esempio,

teste

è al più

è al più I hi -

per

ir

1000

I/n

lanci,

I/1000.

La

la probabilitè probabilità

di avere di avere

una

una

sequenza

sequenza

più

di almeno lunga

di 3 I l

I

A,

jg p

Llgnjl2. 1/2 l/ n

.

Doli

cc ii izinnc

647 ,

ii

ha

c

RafTinarc in

consecu1ive

di lunghezza

che

probabile atteso

esatt..unente

una

ttnisca

na

p

.

di contenitori

Q ual

in

è

lancio

ciascun un

qualsiasi atteso

è il numero

pallina.

l/1000000.

che

Pr

equamente

è il numero

la

3ù 6.6-6

sequenze

con

di contenitnri

klgn1

è

Qu 1

dove

in n coiuenito,

lanciate

siano

n palline

t

il

lane i

di si 1

della

inferiore

limite una piil

moneto luil ,1

perfetta. di

l zii

1un

-, ltezza la lglgtt

ùella

. ei q

di

e uenza iche

nessuna

prolnbiliti è

lllitli

le

i ti

1/0.

successi sequenza

mnstrando di

teite

e.

Sia

s,

s

Problemi

6-J

Palline

In questo

problema

e contenitori

in b contenitori

di varie

l effetto

ipotesi

sul

di modi

numero

di mettere

n palline

Supporre

che

le n palline

importante. b.

Dedurre che

Supporre numero to

le

che

il numero siano

palline

di modi

di mettere

si consideri

diverse

siano

e che

di modi

diverse

e,

le palline

il numero

di moòi

nei

il loro di

in

ordine

menere

ogni

le

è b

n palline

contenitore

non

contenitori

è b.

un nei

palline

contenitore,

contenitori

di disporre

dentro

Provare

ordinate. n

distinte

1

/b

e b

1 .

1 barrette

sia

o øli

k

Suggerimen-

in sequenza . Supporre non

che

le palline

siano

identiche

sia importante. Mostrare che - . Suggerimenro quante

è

sono

palline

e quindi

il numero delle

che

di

il loro

modi

ordine

di mettere

configurazioni

della

dentro

un

contenitore

le sue

le palline

nei

contenitori

ripetute

Supporre

contenga

più

e.

le

Supporre

che

che

le

che

siano

palline

Mostrare

Mostrare

identiche

il numero

di

siano

palline

il numero

e che

modi

di mettere

identiche

di modi

di

nessun

e che

mettere

contenitnre le palline

nessun

è

è

una

.

Analisi

del

sia

2

determina

massimo

in un

presente

array

non

A l

ordinato

l1 j.

..

c

Confronta

Ai

con

then

ni

m

l

Ai j

a.

si veda

b.

Simun

x sia

i numeri

medio

di volte

in cui

in A costituiscano

una

viene

eseguito

l assegnamento casuale

permutazione

della

di n numeri



scelto

il numero

più

viene

eseguita

i ne

intervallo

c sua

mente

di /- numeri

distinti,qual

h.

5 del

programnm,

qual

è la

relazione

distinti.

è la probabilitè

che

ven

tra

Ai

Per

d.

Sia os,s,...,s

o ni

la linea

Eli -

S i iene

.

1

i

n,

qual ,,

è la probabilità

casuali, dove n nv ariabi.i esengj g durante l iterazione

s

-, * rappreienta i-esinia

a eseguita

n.

varianza

e Ajjj

per

ln linea

Note

5 4

il numero del

ciclo

for.

di Qual

vnlte

0

è il valore

hanno

di un il valore

il contatore

Con

di un

a scapito

gode

si

se

2

n

seleziona

1 con

probabilità

l

per

1, dove

2 il valore I cREt, m

l

un

n

gIi

del

iniziale

i - inala

1. al or

opera

in

errore

di

oppure

ll ll, ,

. è un

il contatore

0, allora

i

ogni

l.... -he

0. L operazion

1/ n,

l

probabilità

0.

2

i di

aumentato

i

per

i

contatore

Situazioni

normale. F il i-esimo

0 o n

di

numero

2.2 . che

si assuma

n ,,

sia

nde

sufficientemente

trascura-

da rendere

di overflnw.

errore

dal

rappresentatn

atteso

contatore

INCRE 1ENT

n npetazioni

dopo

n. della

L analisi

j

c.

sono

linea

CREME .

liite i

viene

con

i per

problema,

che

dell insieme

grande la

da un insieme

più

Si assuma

di n Se

contatore.

i del

valore

il paragrafo

la probabilità Mostrare

òegli

numero

J

il numero

che

Quando j

questo

esattamente determinare

Si assuma

che

si

interessanti

bile a.

5.

k appmssiqualificato

più

-1.

a

fino molto

di n

negativi.

non

il calcoln

rappresenta

com è ii

si seleziona

Per

5

sul

cosi

lasciato

di valnri

il contatore

altrimenti

nrax.

ma.x

Valore

a un

conteggio

un

rappresenta

quindi

probabilistico

overflow,

più

if A i

Si vuole

l aspiravate

solo

contare

fino

contare

si può

crescente

sequenza 0, che

sia

Fibonacci do

si puo

normalmente

t bit

contatore

i del

una

modo

il valore

1 ton

3

più

di assumere

possibilità

qualificato Montalpini

la proiessoressa - egliendo qualificato

probabilistico di

di R. Morris,

valore

Un

Se

4

l aspirants

meglio

che

Mostrare

positivo successivo

l/e.

b-l

C

fori

le sue

I aspirane

Se

precedenti.

intero

aspirante

il primo

di precisione.

po

vuoto.

lasciato

.

max

programma

programma

BIG.X

gli

un

di selezionare

e assumendo

n aspiranti.

di assumere e che

a n/e

contatore

probabilistico

viene l

aspiranti

gli

tutti

possibilità

Il contatore un

Con

n

contenitore

le palline

di

contatore

Il seguente

le scarti

immediatamente

se le

formano 6-2

i colloqui

Purtroppo,

identiche

che

pallina.

Ha fissato capaci .

loro eUa

la strategia

k aspiranti

i primi

scarterà

uguale

6-4 d.

alle

colloquio

ogni

di adottare

decide

approssimativamente

quindi

sono

b

parte

mativamente

assistente.

in base

soltanto

dopo

che

di tutti

qualificato k, allora

i primi

massimizza c.

fare

il colloquio

dopo

meglio

sia

è tra

durante

D lgn .

un nuovo

di assumere scelta

la sua

Montalpini

n, scartando

che

indistingùibili

eseguita

5 viene

linea

Es

il posto.

offra

La professoressa

il

la

che

che

Mostrare

richiedono

dell università

regole l aspirante

che

e vorrebbe

n aspiranti

con a.

volte

di

totale

ha bisogno

Montalpini

La professoressa

diversi.

il numero programma.

dell assunzione

Problema

6-3 si analizza

s del

...

s,

esecuzione

qualche

o 1

che

uneso

al capitnlo

varianza

Si

cnnsideri

del

valore

del

caso

emp1ice

rappresentato

dal

un

dal

rappresentato

conteggio

n registro

100i dnpo

per che

contatore

dipende

i

0. Dare

o.ni sono

.,-t , c .-,.suite

dalla una

sequenza stima

della

n operazioni

è

nel

1713

Laplace,

e di

Le somme La

A.

S.-D.

teoria

casuali

furono

121

di testo

171

offrono

e Spencer

e Liu standard

dati

Ulteriori

furono

140j come

contengono

sviluppi

studiate

sono sono

de11a

teoria

dovuti

buoni

sono

dovuti

a P.S.

99 .

Chebyshev nel

Molti

1933. lavori

e A.A.

de

Markov,

I limiti

sulle

code sulle

pionieristici

a P. Erdos.

riferimenti 28 , al calcolo

un abbondante

da P.L.

Kolmogorov

e Hoeffding

40

Billingslcy

introduzione

in origine da A.N.

da Chernoff

casuali

un ampia 179

1730.

Gauss.

fu assiomatizzata

probabilità

combinatorie

Knuth

nel

di variabili

delle

Libri

Moivre e C.F.

di distribuzione strutture

De

Poisson

il calcolo

per

Chung delle raccolta

4I ,

Drake

probabilità. di tecniche

combinatorio 57 ,

Feller

Bollobás probabilistiche

elementare. 66 30 ,

e Rozanov Hofri evolute.

100

Introduzione

Ordinamento

e selezione Questa

parte

Input

una

a,

...

a

La

dei

struttura

essi

fa parte

che

è il valore

che

sono

stessi sono

di un

questi

cninpleto.

essere

spesso

con

assume per

aspetti

che

ordinare in una

che

cui

delicati

una

sia

numeri

in un

che

situazione rendnno

un

programma

più

soltanto per

conten-

determina

di ordinamento

di ingegnerizzazione complessa

che

un

da

algoritmo

record

o grandi

costituito

ciascun ai record

dati.

ci si interessa

l input

Se

sateIlite.

dei

procedura

satellite,

dati

di puntatori

distinguono

numeri

quando

data

dati

un array

il movimento

singoli

Ordinare

sui

anche

clriave,

di ordinamento

un algoritmo

si permuta

minimizzare

una

dai

è costituita

record

di

ciascuno

spesso contiene

record

quando

implementativi

Di conseguenza,

sebbene altri

del

permutazione

al nretodo

elementi.

algoriimo

ma

da

dettagli

si

concettualmente ci potrebbero

rappresentata

essere

valori

singoli

in pratica,

satellite,

in.modo

rispetto

degli

semp1ice,

e propria.

di dati

dell nrdinamento

trasformazione

possa

Ciascun

rimanente

chiave

la stessa

eseguire

è irrilevante finale

benché

che

tale

concatenata.

record.

chiamata

alla

quantità

programma

numeri

lista

di input

sequenza

della

a

rappresentano

la parte

collegati

i record

ispondente

problema

di dati mentre

deve

senso,

certo

la posizione

l

collezione

grande

che

In un

a ....

di n elementi, una

come

raramente

ordinare

da ordinare,

le chiavi,

piuttosto

gono

da

di una

ha una

record

.

a ,,

un array

esempio

per

generalmente

permuta

a

di ordinai tento

proMema

dati

i numeri

In pratica,

con

modo,

il seguente

risolvono

a ...,

vi,,

è generalmente

di input altro

in qualche

che

riordinamento

permutazione a ,.

sequenza

La

di n numeri

sequenza

una

Output

algoritmi

diversi

contiene

al

strettamente

La

numeri.

da ordinare

del

la programmazione

è

record programvera

Parte

EI

Algoritmi

di

ordinamento

caso Nel

Capitolo

1 sono

impiega,mn

esso

ricordi

Si

un

Heapsort, un

saranno

parte,

di dati,

altri

due

in loco

Insertion

cicli

peggiore

il quicksort,

caso

peggiore nella

generalmente codice

se soltanto

heap,

che

MERCiE che

n numeri

molto

Insertion

l uno

in

in

costante

usa

non

tempo

On

coda

di In genere

tempn

opera

numeri

una

con

merge

l altro. di

esecuzione

nel

che

caso

concetti

in loco.

reali

arbitrari.

Ignei

esso

buchet Capitolo

u

coinvolge

con

heapsort

Il Capitolo

e merge

9 continua raccogliere

possono

sort

sono

tra

dell input

appartengano

alI insieme

tempo

n.

numeri

in

eseguito sort,

sono

n

interi

1, 2,...,

lineare essere

può

da

radia

conoscenze ordinare

so

sulla

caso

alla

reali

i numeri

uniformemente

d

distribuiti

k .

terzo

Un

algoritmo

in un

nel

intervallo

i numeri

sort

di

d è una

coartante richiede

sort,

input

esso

O, I

semiaperto

se vi

sort. nell insiense

buchet

array

n viene

correlato.

è

Quando

dal

ordinare

counting cifra

algoritmo,

numeri

che può

counting

se

diverso

di

di

ciascuna

Odn

Un dei

e

1pi

Qn

l ipotesi

del

di

ottimi.

indicizzati,

di input.

cifre

in tempo lineare.

probabilistica

fa

per

tempo mostrando

inferiore

di applicazione

ha

sul

qualcosa

l algoritmo

dell array

intero

in tempo

array

O it ,

l intervallo

ciascun

eseguito

I

Ign

asintoticameme limite

che

operano

di n input,

esempio,

per

di decisione

Qn

tramite

per

operano

che

confronto

questo

usando

dimensione

ordinare

può

sort, k

quando

è un

confrontandali

dell albero

confronto

l input

che

ordinamenti

per

per

2...,

estendere

distribuzione

n numeri nel

per e

viene

sort

cui,

rispetto

usato ordinare

I , il radix

e k è On

l,

e

ha un

è piccolo

di input

inferiore

migliorare

counting

Per

limite

ordinare

per

L algoritmo

01

in tempo

radix

On

elementi.

un

si può

informazioni

confronto

degli

ordinamento

che

array

il modello

ordinamenti

mostrando

1gn

8n

il quicksort

sort,

ordinamenti

di un

prestazioni

di qualsiasi

di esecuzione

è però

di esecuzione

tutti

elementi

dimostra

tempo

medio

puo

in tempo

medio.

Selezione

L i-esimo ovvio, sulla

numero ordinando distribuzione

dimostra Nel

più

pseudocodice

ed acceclen

dell input,

il limite Capitolo

di

piccolo

l input

inferiore

campano

che

insieme

Jo

che

nel

si puo

viene

di

sll i-esimo metodo

questo provato

10 ii mostra

un

Capitolo trovare

eseguit i

n numeri

può

elemento viene

clell

eseguito

selezionato,

essere initpcit. in

in modo ipotesi

Senzaalcuna

ten po

Qn

1pi .

cOtllC

9. l i-esimo

in tempo

elCI11vlltO

n-

nel

piii

caso

in temp i

piccolo

p

sort 6. L

io .

ma

Oill

in tc lllp

i.

non

parte

questa

sofisticati.

In

panicolare,

e dell algoritmo

di

selezione

usano

analisi

dell

di selezione.

algoritmo

concetti

matematici

presentate

in questa

un parte.

po

più

ma

matematiche,

difficoltà

presenta

più

matematici

priorità.

di input.

introducendo

si

il suo

l insertion tempo

sono

degli

delle

modello

peggiore

array

e quicksort

limitazioni

questo

Come del

finale

9 comincia

le

caso

nascosto grandi

heapsort

Il Capitolo

Usando

si

sort,

ma

nel

heapsort.

costante

la posizione

studiare

confronto.

dello

in loco,

esecuzione

di

ordinare

per

pie

i jppe

n

uito

sono

ha un miglior

esso

loco

numero

un so

ordinano

realizzare

per

n numeri

tempo

è migliore

determinano

consente

suo

il fattore

popolare

sort,

confronto

Il

cui

per

8, ordina

Capitolo

pratica

compatto,

algoritmo

cosi

nel è 8 n- .

ppp

cpmplicg p

più

è piccolo,

peggiore Anche nel

un alooritmo

O sr .

so

annidati

l input

quando

Il merge

algoritmi

ordina

chiamata

i suoi

veloce

dall array .

la procedura

7,

che

reali.

anche

Si fornisce

in tempo

Prerequisiti ordina

ma

Capitolo

struttura

dato in loco

fuori

presentati

nel

presentato

importante

Ign ,

ir numeri

ordinano

Tuttavia,

peggiore.

è memorizzato 8 ir

che

di ordinamento

di ordinamento

di input

asintotico,

In questa

caso

algoritmo

algoritmo

dell array

esecuzione

nel

un

algoritmi

due

presentati

8 n-

risulta

che

elementi di

stati

tempo

compatti,

nel caso medio.

in are

J31

e selezione

Ordinamento

le la che

complessi

del

analisi

tempo

rispetto

medio è stata

lineare alle

richiedono

paragrafi

caso che

probabilità, richiede

alcuni

altre

di già

nel caso analisi

quicksort, nel

ripresa peggiore, del

caso

- Heapsort

In

dall insertion

diversamente

un

denominata

di dati,

coda

dei

con

è utile

heap

di ordinamento

in ogni

istante

anche

Quindi

di una

struttura

l uso

algoritmo.

d ll

ef ttcientemen-

realizzare

per

solo

di input.

l esecuzione

di capitoli

algoritmi

in alcuni

riutilizzata

sarà

di dati

struttura

ma

l heapsort,

per

Co

lpi

discussi.

già

di algoritmi durante

e

sort,

il merge è O i

dall array

fuori

le informazioni

solo

in loco

ordina

di progetto

tecnica

gestire non

Questa

priorità.

l heapsort

delI heapsort

è memorizzato algoritmi

due

un altra per

di dati

La struttura

esecuzione

sort,

tempo

dell array

elementi

introduce heap ,

l heapsort

di

Come

ordinamento.

di

algoritmo

merge

dal

i vantaggi

presenta

Inoltre

te una

di

costante

numero

l heapsort

il

sort,

e diversamente

sort,

l insertion

altro

un

si introdurrà

capitolo,

questo

successivi. che

il termine

seguito

è stato

usato

fornita

dal

Si noti

7.1

memoria

di dati

i1o esso

libro,

in questo

come

un albero

in

ma quella

presentata

heap

allo

riferimento

viene

che

di dati

struttura

La

un

ci sia

e dovunque

il

con

gestita Lisp.

di programmazione

di memoria,

struttura

alla

rifà

alla

dell heapso , nel contesto garbage-collectorcomè

fu coniato

originariamente

riferirsi

per

linguaggio

tipo

è questo

heap

si

capitolo.

definita

in questo

binario

è un array

Heap

di dati

La struttura completo

si

veda

il paragrafo

a un

corrisponde completamente in poi.

heap

Un

i livelli

A che

rappresenta

il numeto

di elementi

nell array

A. Cioè,

dopo

è A I.

LFw i

e del

PE Ew-t

i

return

figlio

Li/2 J

Lr i return

eA ,

A lteap-si

dell alhero

2i

dell benché

uno

A1 dove

.. length A

Rione i

di un

possono

l indice essere

è un del calcolati

è riempito da sinistra

dello validi.

elemento

padre

dello

PARENT i .

semplicemente

quasi

dell albero

L alhero

di elementi elementi

binario

nodi

è riempito

attributi

contenere

lengrhjA , nodo.

che

due

con

oggeno

Ogni

nodo.

del basso

il più

il numero possa

heap-si-e A

e se i è l indice destro

è un

heap

7.1.

figura

il valore

contiene

e heap-si e A .

array

nella

eventualmente,

iranne,

su tutti array

che

dell array

visto

essere

può

mostrato

come

5.5.3 ,

elemento

che

che

len.. th A , heap

memorizzati

nessun he p. del

6 lio

elemento La

radice sinistro

è

134

Capirolo

7

Heapsotf

Esercizi

7.1-l ,. 4

7

1

2

3

4

5

6

7

8

9

10

16

14

10

8

7

9

3

2

4

l

b Figura il

7.1

valore

Uno

heap

visro

memori-.-ato

iir

un

come

albero

nodo.

quel

If

binario

nc lnero

e un

a

ricino

al

arra

nodo

Il

b.

è il

numero

dentro

corrisposidente

ogiii

is dice

nodo

h.

che

uno

7. 1-3

Mostrare

che

l elemento

2i

In molti

di

zione

binaria

buona

Gli

LEI

può

a sinistra

la

velocemente

può i di

PARENT

una

h cap

soddisfano

chiamata

anche

heapsort,

una

1 tramite

istruzione

1 nel

la traslazione tre

di

heap

Si

di un

del

la proprietà

di ordinai

bit

Analogamente,

è minore

dql

altera

è 8 lgn

tempo

di

di

Un

array

7.1-6

La

sequenza

dello

parziale

lieap

verso

La

7.2

destra.

realizzate

nodo

ogni

per

beai

al valore

e i sottoalberi

del

padre.

nodo

va dal

in

zio

al piii

un

nodo

l Eserci

in un

albero

a una

7.1-2 .

il numero

foglia,

Si vedrà

di

archi

e si definisce

che

sul

non

la proprietà

La

procedura

da

un

La

procedurQ

Le

p procedure usare

array

che

di ordinamento

non

funzione con

il sattoalbero

possa

essere

di HvwptFv radice

di indice

più

gli

con

dei iui i figli. ..vendere il

piccolo

è di lasciar

uno

i diventi

he

dell albero

di base

dell albero

I c

2

r

3

if

e in una

struttura

di dati

tempo

he p che

7.

di

esecuzione

O lgn ,

Ricca i

heap

hanno

impiegano

un

chiamata

then

è lu procedura

lineare,

produce

uno

chiave

heap

-

lávrgesl

i e Ar

eA

he -si

A

le rgest

j

coda then

8

if

lnrgest

largesr c

-

r

i

per 9

di esecuzione

r

Ai

I

m

largesr

else

5 if

e Al

heap-size Aj

/

4

1 .

ha tempo

LeFT i

l altezza

sugli

e quindi

1

i partire

IO

then

scambia H r ,xvir-s A,

A lar,usti

Ai fargest

ordinato.

HEAPSORT. Extzwcr-Max Extra

la struttura

ha

dello

Bun.o-Hz v, di input

La

A ij

A e

-. binm

alberi

i

HEAPIFY A,

7

mantenere

7.1 .

che

che

un

sono

input

I suoi

si assume

camminino

priorità. procedura

che

cosi

heap

nello

heap

dello

la proprietà

cosi di A i

ma

heap,

siano

heap.

gli

chiamata,

viene

HE ptvv

Quando

e Rtavv i

gestire

per

grande

valori

lungo

più

altezza

le operazioni

all altezza

proporzionale

algoritmo

HEAPIFY,

array.

i nell in LEi i

6

usarle

heap

dello

proprietà

sottoprogramma

importante

è un

indice

radice

radice,

più

contengono

della

lVIantenimento

un

seguito

dalla

I elemento

nodo

heap

è uno

12

come

nel

che

i diverso

Quindi

di qualunque

7,

l. 5,

10,

13.

la

basso.

più

spesso

6,

14,

17,

23,

heap

è uno

inverso

in ordine

stesso.

un

che

si veda

o uguale radice

nodo

esecuzione

come

La

iato

ch

assumendo

piccolo,

più

rappresenta-

ordine

posizione

sono

procedure

della

di

di i di una

tento

de1lo

proprietà

nella

discendente

altezza

mostra

nodo

valore

definisce

semplice

l elemento

risiedere

potrebbe

ordinato

7.1-5

valor

è memorizzato

maggiori

del

distinti

semplicemente

i.

la traslazione

e inserendo

queste

sola binaria

Ai.

il va1ore

nello

dove

heap,

In uno

violando A PARENT i j cioè

radice

è nella

heap

di uno

sottoalbero

sottoalbero.

è

HEAPIFY

semplicemente

più

2i

tramite

Lil2J

2i con

rappresentazione

a sinistra

calcolare

può

calcolare

calcolare

posizione

realizzazione dello macro -in-linea . o

procedure

sarà

posizione

di

procedura In una

la procedura

una

RtrHT

procedura

Llgn J.

1

calcolatori,

traslando

in un

grande

più

altezza

ha

di n elementi

heap

di

h-ap

uno

in

elementi

nell array.

tutti

return

di

altezza

di

minimo

e il numero

massimo

numero

il

Mostrare

Ricv i

con

sono

7. 1-2

7.1-4

un

Quali

di dati

che

ha

tempo

e lr svav. hevp

eotne

di esecuzione che

hanno

cocla

con

O ii

temporali priorità.

1gir , cc suzione

ordina

un O lp .

array

in 1 ivo.

permetton i d,

on

A .i

ir

h.

i.

r,.

l.

il i.ilare

X3á

Capitolo

137

Heapsort

7

7.2-2

Qual

è l effetto

di chiamare

Haetfv A.

è l effetto

di chiamare

HE tre A,

è più

Ai

se l elemento

i

dei

grande

suoi

figli

7.2-3

Qual

7. 2-4

Il codice

7

per b

la produzione

che

usi

7.3

Costruzione

per

a una

di uno

heap

7.2

heap

L

viola

la

di

a ,ione

Hh v,n A, dello

proprietà

dot,e

2, heap

Ireap-si,e A A2

poiché

aproprierà

ite l no d o illI

proprietàdelloheapèripristinataperilnodo2

10.

SCQttl

b

i

A4

o

A j

,

ulteriori

ome

m mostrato mo

cambiamenti

inn

2

non

il nodo

4 èsisremalo

struttura

della

di

e la

suoi

4.

ricorsiva

li.i.

Laa

a violùrè i e

0

cominciare,

Per

9

11011

trattati

proprietà

dello

Ai,

e quindi

il sottoalbero

heap. p. Di cánse uenza ,

con He wn H

radice deve

nel essere

nodo

largest

chiamata

potrebbe

ricorsi

violare

ia

su qeso qu

t

vamente

di esecuzione

di HeAetFv

su un

sottoalbero

di dimensione

n con

radice

in un

dato

1

heap-si

2

for

eA

i c

con

radice

a I più

2 n 13

a me metà à

La

T 2n/3

un

della

soluzione

Tn

O lgir . nodo

81

in uno dei due figli del nodn I i caso si verifica peggiore I e i tempo d i esecuzione di

La

di altezza

er

il

caso

si p u o definire d

del coine

teorema

principale

il tetnpo

O lr

Teorema

di esecuzione

4.1 .

è

più

Usando

la

fi ura A

27.

7. 17,

CUlllt ,

3.

16.

lllOGCllo,

13.

10.

illustrare i,

S. 7,

12,4,

Ic

operaziuni

pu di

Ht Af it

che

prima

varia rigorosa

limite

limite

sebbene

superiore,

0i .

sono

chiamate

e tali

O lgn

nel

di BA n.n-HEAv

di esecuzione

limite

Questo

e al

7.1-2

che

da

più

I nl2

quando B

di

tot le

il costo

annali

Hrxvlvv

uno

he.ip

eli altezza c chi un ta

w.n-Hi sv

per

corretto.

di h su

n elementi veci,

si un

t odo

sono ha

piccole.

altezza

l Esercizio di altezza

su un

Hz,ivivv

fnr eseguire

nodi

di molti

e le altezze

i eli lbero

nodo

del

il tempo

che

osservando

stretto

più

sullaproprieth

basa

richiesto

esprimere

ign .

On

è al più

tempo

un tempo

richiede

stretto. un

si

sul

superiore

a HEAPIFY

chiamata

l altezza

con

di Buri-HeAP.

dell esecuzione

di esecuzione

derivare

I Esercizio

sull array

Ogni

il tempo

Il tempo 7.2-1

i nodi

in cui

heap,

i sono

nodo

foglie

Buiio-HEsr

L ordine

di essi.

di un

tutte

sono

1

doivnto

semplice

un

calcolare

Si può nodn

Esercizi

n

procedura

i

esempio

un

è asintoticamente

non

di i Hz.z.st viF iFs ..u

h.

tigli

nei

radice

con

La

su ognuno

HFwvtFv

ed esegue

..

A Lnl- 1 elemento.

solo

un

di

nodo.

quel

HEAPIFY A,

seguente.

Quindi

ricorrenza,

con

A f 1 .. n .

array

un

convertire

le gth A

c-

mostra

7.3

figura Si può

.

In alternativa,

per

sottoarray

nel heap

i sottoalberi

Llengsh A 12J

do

modo Tn

è uno albero

su

eseguita

3 r eseguire HEavin su un sottoalbero p p i. I ssottoalberi dei figli hanno ciascuno dimension ne uItimo uan o u t livello dell albero è pieno esattamente quan EAPIFY può allora essere descritto dalla ricorrenza

cammino

del

Butto-Hne A

sottoalbero. Il tempo

essi dell che

garantisce

Venga

HEAPlFY di

nodi

dati.

sono

originale

di

i restanti

attraversa

bonom-up

in modo

elementi

gli

poiché

ognuno

dell albero.

HEa tFY A,

valori

heap.

in uno

length A ,

n

nodo

su ogni

di

heap

su uno assegnare

foglia .

HEAPlFY

la procedura

usare

Si può

dello fi

1110 ClOpc Pta

vnei

chiamara

dei

grande

CO11 A 4 ,

HEAvtn A,4 c,

ini iale

fi gura ioite è piir

fPlQilC I O 8 2 ,

elloheapperilnodo4.Lachiamataricorsiva

PECI1iede

La

efficiente

n nodi,

c Figura

He etw ricorsione.

di HEAerrv con

heap

ricorsivamente

chiamata

sia

uno

compila-

della

di esecuzione

il tempo

che

in qualche

procedura

invece

ciclo

un

Swggerime iro

fino

radice

iterativo

peggiore,

HEAPIFY

che

in modo

ai nodi dalla

caso

n è Q lgn .

dimensione

7

nel

che,

una

Scrivere

inefficiente.

di controllo

provocare

potrebbe

tranne

costanti,

di fattori

in termini

10, che

linea

di codice

costrutto

un

nella

heap-si e A 12

i

per

efficiente

è abbastanza

ricorsiva

tore

Mostrare

7.2-5

im

di Hsw

la chiamata

i

LlgnJ

Un

mialisi si

veda

7.3-è . li è O l ,

si

quindi

come

s A.

8, 9, 0 . ,

Oh

,

O

g n

7.2

13S

-

Capirolo

139

Heapsorr

7

A

4

1

3.

2

16

9

10

14

8

di BUILD-HEAP

di esecuzione

il tempo

Quindi

7

limitato

cosi

essere

può

-

3

.

0n

uno

costruire

si può

In conclusione, 7

un

da

heap

lineare.

in tempo

ordinato

non

array

Esercizi

7.3-1

b

5,3,

8

9

10

2

8

7

c

d

7.4

2

7

Se ..

A1

esso A1, cancella

si

il

via e

a

HEAPIFY

lo

ltella

La

HEAPIFY A. al

modo

viene

i. 4.

b

ultima

3 di

La

struttura

Le

irera

sr

un

BuLD-Hewv. m,rsrra

figura

cl- e

chiavtata

Buco-Hz a

L

livrea

rappresene.

di ioidi

irodo,

a che

Un

arra

I indie,,

successive scrttoall eri

esso di

i de1

risultante.

dati

i due

attrai

del

cic di

1

quel

input

cicfo

l. iildlce

la A

nodo

di

nel1a sono

di

10 al

pm,ra i del

for

struttrira

cick

elementi odo

Bciio-HEwv.

defla

prinra e l albero

5 pri na l itera

per

heap

dati

Si e rrambi.

ivi e

Lo

f

a

.re

h

1/2

E

I

hO

2.

n

1 /2 -

essere

valutata

sostituendo.v

1/2

nella

formula

3

henp

.6 ,

uno allo

I fino

sua

radice

grande

heap.

violare

la

I figli

ripete

della

che

rimangono

radice

HEAwrv A, processo

questo

con

si osserva

7.1

proprietà chiamare

con

n,

scambiandolo

l cap-size A ,

sufficiente heapsort

ima e

..

A1

è memorizzato

array

d ll

posizione

in uno

puo

è comunque

di dimensione

heap

più

corretta

di input

sull array

heap

decrementando

L algoritmo

heap.

uno

trasformato

nella heap,

dello l

1

Borio-Hne A

2

dcipr

c lie

for

per

cui

downto

2

m

A fi

i m

lengrh A

do

scambia

A1

4

lieap-si

eA -

5

HE, vivv A.

3

può

elemento

HF vivY

è terininara.

sommatoria

di

I nodi

I 12

più

Per

heap.

dello

rende

1 , che per

lo heap

2.

H vson A

a punta

c1re

al

sono

cl e

chia,nata

successi

r vse si

vi

Llengrh

clriamara l inario

della

può

n

nella heap

essere

nuovo

A 1-..

dimensione

0 mostrata

via

il nodo

la proprietà

ripristinare

posto n dallo

essere

può

facilmente

1

i ma

heap,

Buco-Hz v,

n elementi

l elemento

Poiché

Bun.o-Hip.

usando

radice

nella

di

di

il costruire

con

comincia

heapsort

length A ,

A nj.

heap

qualunque

da

2 di Butt.o-HE v

linea

nella

1 a Llengrl A 12J

heapsort

L algoritmo

L esecu-ione

ciclo

da

/l.

L algoritmo

n

in

che

Mostrare RllCZZR

7.è

crescere

4

7.3-3

Figura

i del

l indice

di farlo

a l invece

A 12

array

sull

di B v Lo-HEwv

le operazioni

illustrare

modello,

19,6,22,9 .

10,84,

si fa decrescere

Perché

7.3-2

3

7

17,

come

7.3

la figura

Usando A

h ap

si

eA

l

1

vale La

fi cura

7.4

mostra

un esempio

dell opervziutse

di heapsort

dopo

che

lu lleap

è stato w

costruito pt

l

di

141

Heapsort

10 7

8

9

3

7.5

10

4

con

Code

3 Heapsort

2

priorità

2

è un

Capitolo b

c

enorme.

algoritmo,

uso

Una

con

valore

IxsERv S,

Q

MAxwvu S d

e

3

2

3

1

applicazione

1

Q1

Q Q

Qy

l

Q

Ql

g

5

5Q

Qf

Q

coda

è selezionato aI1a coda

con

Gli

elementi

in cui come

nella

deve

coda

avvenire,

ordine

la simulazione Qy

lineare 4

Q7

QS

7

8

9

10

14

MAXIMUM

Q9

sceglie Q

11

il

essere

usata

eventi

che come

valore

7.4

di

L

i in

esecu ione

di

HEAPSORT.

La

a

strrisrura

di

dari

heap

subito

dopo

che

è s ara

zione

costruira

nella

nella

con che

Nel1o

/ cap

rimair

prono

solo

i chiodi

chiari.

ll

k

ri sultante

array

A

del

ordinato.

ciclo

for

da

Gli

l

il valore

A 1

3-5

della

if/teap-si then

7.4-1

Usando A

7.4-2

Qu Q

Ia figura

5.

M s

2, 25,

. tnt

7.

,

è i tcmpodi

in ordinè

7.4-3

13.

7.4

il

17,

modello,

20,

ci

E se

I ordine

tempo

eli

illustrare

l operazione

di HEAPSORT

SU l

állTBp

8. 4 .

esecuzioné

crescente

l che

come

. ciecurionc

lwapsort..-

su un

irrayA

di lunghezza

i o in gihordinato

o

eA

3

l lCIX -

4

A1

5

heap-si

6

Hv,iwrv A,

7

retuns

Al c

una

coda

via

di

hevpi rt

è Q-

n

Ipr c

nel

caso

pe

procedura

Hr vsoRt

underflow

A ltecip-si..e A eA

l

1 n a.v

iore. costante

di

lavoro

iltiv

al

scritta

tempo

OI

calcolatore

un

eseguiti

essere

con

il processo nuovo

processo

e

priorità essere

puo

essere

devono

il tempo

associato simulati

evento

di un

è naturale

seguendo

può

provocare

invertire

l ordine

si

eventi

di

invece

e ExtRwrr-Mtw ad

ExTRAcr-Mie,

eventi.

dagli

guidato con

ognuno

nuovi

priorità grande

è decrescente

.

eventi

che

con più

La

heap.

procedura

heap-si

su

di un sistema simulati,

usa

l elemento dello

Un

di simulazione

i

A

essere

devono

o è interrotto,

Mwtwt w

1 heap

error

ognuno operazioni.

grande.

processi

che

processi

operazioni

Via

più

di

quest applicazione,

le

HEAP-EXTRACT-Max A Esercizi

heap

ogni

passo essi

presentano,

sono

Issen.

usando

restituisce

linee

Per

simulare.

chiave

la simulazione

perché

futuro.

realizzare

per

dello

grande.

simulazione

chiave.

e offrire

priorità

HE v-M xtwuw

utilità

L sew .

essere

Il programma

evento

coda

semplicemente

istante. quel1

nel

priorità

C EXTRACT-Max.

sorprende

ha un

le seguenti potrebbe

ExvRwcr-MAx.

devono

di occorrenza.

eventi

dei

usando

momento

serve

più

termina

usando

in attesa

puo

con

j Non

Figura

coda

il prossimo

inseriti

i

di altri

della

nel

presentato heap

S di elementi,

offre

priorità

è l allocazione traccia

g i

applicazioni

di S con

un processo

sono

tempo

conosciute

un insieme

con

chiave

priorità

mantiene

quelli

che

il loro

coda

l elemento

con

in qualunque

priorità

Q

di dati

S, guest operazione

di S con

Quando

tra

coda

quicksort,

mantenere

per

x nell insieme

priorità

relative.

più

del la struttura

x.

code

con

delle

Una

e restituisce

delle

priorità

aggiunto Una

Q

h

loro alta

più Qg

Q1

delle

La

di dati

l elemento

rimuove

condiviso.

2

iQ7

restituisce

ErrRwcr-Max S Una

4

S u

una

chiave.

l elemento S

nonostante,

priorità.

struttura

chiamato

inserisce come

il,

è una

priorità

con

realizzazione

buona Ciò

presentata

coda

associato

x

sarà

efficiente

una

in pratica.

paragrafo,

come

coda

un

ma

è migliore

In questo

il suo

con

buon

8, di solito

n

di

Hi nwnv.

si possa dello

heap

He,v-Ex Aa-Max

usare it

tempo

uno

heap. 01

L operarestituendo

è simile

al corpo

e

142

Capito1o

7 Heapsort

La

Hmv-INSERT

procedura

aggiungendo

una

trovare

per

HEAP-IxsERT A, l

un

i m 3

figura

radice Per insieme

m

7.5

l e A

A. Per che

al nuovo

eA J

farlo,

espande

prima

rirorda

il ciclo

lo heap

di inserimento

uncamminodaquestafoglia

vers o

elemento.

1

m

i-

Pa RFvr i

A

à

I ey

Pmem i

A ij

PARENT i

key

mostra

Sll uno ha

heap modo

J. l,percorre

paragrafo appropriato

heap-si

i

5 Ai

nello in un

Ireap-si e A

do

6

Poi,

key

while

4

un nodo

all albero.

posto

Ireap-size A -

INSERT

inserisce foglia

dell INSERTION-SORTdel

linee5-7 la radice

La

nuoùa

un esempio

heap

di operazione

di n elementi

lunghezza

HEwe-INSERT.

è O lgr ,

Il tempo

il cammino

poiché

di esecuzione

seguito

dalla

di HE. v-

nuoi

a foglia

alla

O lg .

riassumere,

uno

heap

di dimensione

offrire

puo

n in tempo

una

operazione

qualunque

di coda

con

su un

priorità

O lgli .

Figura

Usando

la figura

sullo

7.5-2

heap

A

Illustrare 12,

7.5

inoltre

8, 7, 4,

come 13,

15,

modello,

9, 5,

12,

illustrare

l operazione

8, 7, 4, 0, 6, 2,

di Hzav-IissRt A.

7 3

coi

c

alla

radice

Mostrare coda

come

con

so,io

FIFO

Code

risistemati

si

trova

ah

4a

fig r n7 -

non

finché

L il eapdella

a ,

posto

per

prinrachesiinseriscc rmnndn -.

. In clrian

miniitr

I

da1ln

La

l ..

nwn u 15

i Itiaie

fot lia

è irrserita.

10

I.

di

He ,v-ExvRwcr-Max

sullo

heap

A

15.

13,

9. 5.

1.

realizzare

una

Mostrare

priorità.

ionediHewp-IwseRT.

.

7-1 7.5-3

L esecu

Problemi

l operazione

0, 6, 2,

j

c

Esercizi

7.5-I

143

e pile

snno

coda

come

primo-amvito-primo-servito realizzare

definite

Costruzione

La procedura

neI

una

pila

con

FIFO

usando

una

coda

con

una

INSERT

per

di uno

Ru io-HEAP inserire

gli

keap

ewr

del

pwagrafo

elementi

nello

l inserzio re 7.3

può

heap.

essere

realizzata

Si consideri

HEAP-

ripetutamente

usando

la seguente

realizzazione

priorità.

I l. I .

paragrafo

Buia -HeAv A 7.5-4

Realizzare

una

e aggiorni

1a struttura

Hni -1NCREASE-KEY A,

procedura

heap

i, l . che

appropriatamente

e che

Ai

ponga

richieda

max A i .

O lgn

1

lreap-si-e A -

2

for

tempo.

3 7.5-5

L operazione

HE v-De.me A,

Realizzare heap

una procedura di n elementi.

i

cancella

Hne-DELETE

l elemento che

venga

del

eseguita

nodo in tempo

i dallo O l,n

heap

su unn

a.

h. Descrivere ordinate in

input.

un in

una

Sugge

algoritmo lista

con ordinata.

in e ro

tempo dove

usare

uno

di ir è il heap

esecuzione numero per

On totale

lu

fusione

1gl di delle

per

elementi /

fondere di

liste .

tutte

i do

2 to

length A

HE P- NSERT A,

Ai

.4. Le

procedure

creano

7.5-6

l

l

I

lift,

le

liit

Mostrare he p

BCico-Hpwv

sempre che.

lo stesso nel

di n elementi.

caso

e ButLo-HEAP. he p

peggiore.

Dimostrare BuiLn-Ht...iv

se anno che

eseguite

lo faimo

richiede

sullo

un ten po

stesso un

o fornire Oi

arra/

di

input.

coi troesempio.

1gn

percoitruire

una

7-2

Analisi

Uno

heap

d-ario

a.

Come

b.

Qual

c.

Realizzare

binario, uno

ma heap

d-ario

i nodi d-aria

hanno in un

di n elementi

d figli

di Exmacr-Iub

efficiente

di Issai.

di 2.

Quicksort

array

espresso

efficiente

invece

in termini

x. Analizzare

di n e d il suo

tempo

di esecu-

di d e n. procedura

Analizzare

il suo

tempo

di esecuzione

in

di d e n.

Realizzare

tempo

heap

procedura

in termini una

heap

rappresentare di uno

una

Realizzare

Ai

uno

è l altezza

termini e.

d-ari

è come

si potrebbe

zione d.

di Jreap

c

una

efficiente

procedura

max A i ,

k

di esecuzione

e

aggiorni

in termini

la

di

struttura

HEAP-INCREASE-KEv A,

i. k ,

heap

Analizzare

appropriatamente.

che

ponga il

suo

di d e n.

è un

Il guicksort su un array il quicksort

Note

al capitolo

è spesso

notazione

na

coda

heapsort con

priod

fu progettato tè r remi è

ana

da h cap.

Williams La

procedura

202 ,

che

descrisse

B viro-Hhav

anche fu p ro po a

come

da Fio d

f 69 .

8n

veda

si

realizzare I

il

l

Ign

fine

del

di numeri

8.1

una

nel caso

peggiore.

Una

mostrato

che

il suo

come

quicksort,

1.3.1.

paragrafo richiede

le tre

Il fasi

Divide l array

Impera

versioni

molti

nel

provoca

caso

del casò

il comportamento

1gn

dove

8.4.

paragrafo

e On

peggiore

di

tempo

Il loro

vantaggi.

nel

è analizzata

encratore

un

usano

che

del quicksort

nel formale

l anali. i

rimandandone

input

quicksort

è O ir

sul

è basato

il merge

sort,

divide-et-impera

sarà

medio.

ida

nel

un

ordinare

l

. p

sottoarray

tipico

nel

introdotto

divide-et-impera

paradigma per

descritte.

..

r

è

ripartito

in

tisistemato

due

1 . Ap

sottoanay

q è calcolato

r . L indice ..

e Aq1

q

r

..

vuoti

A

..qj

e

q siaminoreougualeaqualunque

da questa sono

non

sottoarny ..

r inmodotalecheognielementodiA p di A q

i due

prestazioni.

particolare del

processo qui

1 ..

elemento

sue

per

quickèort comincerà

quieksort

Ap

Aq

e nessun

randomizzate di esecuzione

tempo

del

Descrizione Il

versioni

delle

dal si

complesso

è

presentano

è buono,

medio

delle

quicksort

due presenta randomizzati

8.3

algoritmi

Questi

del

virtuale. usato

sottoprogr sma

nella in loco

di ordinare

memoria

con

in ambienti

anche

olmente

nascosti

costanti

il vantaggio

inoltre

peggiore,

è note

in media

perché

è 8/

peggiore nel caso

lento

e i fattori

1gn ,

e un impanante

intuitiva

Il paragrafo

8n Offre

comportamento

discussione

capitolo. casuali.

esecuzione

il

è

piccoli. bene

l algoritmo

Poiché

di ordinamento

pratica

esecuzione

e funziona

descrive

8.2 con

di

caso

nel

di esecuzione

tempo

questo

sufficientemente

I. 1

partizionamento.

alla

medio

sono

8.1

paragrafo

scelta

la migliore tempo

il paragrafo

Il p grafo

Malgrado

di esecuzione

tempo

il cui

di ordinamento

di n elementi.

il suo

efficiente

L algoritmo

algoritmo

di input

procedura

ordinati

coi

di pzcizionanlellN. chizinate

a

ricorsive

quick ort. Ricombina

realizza

A.

Ql ICKS RT

I

l intero il quicksort.

l /.

c

C

Ql

Ql I K i llkT

I

P xl ic vsoin

rl I ioN

A,

A.

p.

A.

/

in

ordinati Ap

array

ifp r tllen

3

on i

i sottoarray

poiché ricombinarli

p.

r

I.

I

q

..

r

i

loco. subito

non

è richiesto

ordinato.

La

alcuno seguehte

catorzo proiedura

per

147

Quickson

array

l intero

ordinare

Per

è Qutcxson

iniziale

la chiamata

A,

l,

A,

A p..r

length A .

t

dell array

Partizionamento

t J

a r

..

Ap

il sottoarray

risistema

che

PwRvtt ow,

è la procedura

dell algoritmo

Il cuore

b

c

in loco. A p.. qj

PARTITION

332 1

xmA

7

5

3

3

2

1

4

6

j

i

5

7

p

2

i -p

l

3

j c-r

l

1

retum

j

d

while

4

r

A q 1..

r

A, p,

e

TRVE array

do

5

repeat

j

i

repeat

7

if i

9

figura

da A p

r

..

Ap

..

cosi

r

..

Aj

r

corpo

Nel

del

finché

5-8, grande

per

regioni.

A

x

Ai

ripartizionato elemento

di A

restituito

alla

in

due

p

..

alta. Per

esempio

dai

limiti,

perno.

sottoarray

Ap

Il tempo l Esercizio

indici

gli nsa

elemento

andrebbe

tecnici

aspetti

cio

non

in ciclo

r, per

di esecuzione 8.1-3 .

sono

ne fa

5, e gli

elementi

loro

s mo array

dell

cfriaro

grigio

ancora

L

a

parti ione.

i

j,

e Aq

q

10,

lo scambio a questo

nella che

di

essere

r,

8.1-2

linee

è troppo

Ai alla

minori

sonar

j

az

c wgsia1i

A fj

dopo

dell array

scruta

5.

r

..

Ap

che

dove

p

q

r,

tali

di A

q

1 ..

r.

Il valore

basia

.cndono devono dal

venisse P RTITrot

pero nni

iu

e se esso

array

mow

del

anche

fosse

u QuicvsoRt di

8- I richiede un

grandi

è importante

Inoltre,

A r

più di P w

a elementi

riferirsi

re tituirebhe

Il Pr hl ma

di P Rrrno

lo pseudocodice

Ap

..

r

che

A fp

sia

l elemento il valore

più q

gli

che

Pi

nttos

è 8 ir ,

dove

n

r-p

sull arrai

valore

hanno

lo stesso

q restituisce

di

PAR11TIOV

SC tutti

gli

Ap

nell array

elementi

. r

valore

r

.

brevemente

perché

di PARTITlotl

di esecuzione

il tempo

su

un

sottoarray

n è 8n.

usatn

mòdificure

potrebbe

sbil J11Ciato

tuori come

i corrct

del

Prestazioni

Il tempo

Qcicasoet

per

in

ordinare

ordine

decrescente

quicksort

di esecuzione e ciò

a sua

di quicksor volta

i

nel

grande

I si

si

t

regione

r

r. e Qutcwsow

provare

Quale

Come

8.1-4

complicato.

Ap

sottoarray

ton

21 .

11,2.6.

j è

q

pone

un po

di PARvn

le operazioni

illustrare

modello.

è stato nessun

nella

di.v

12,8,7,4.

5,

di dimensione

8.2

semplice.

funzione

e quelli

dell array

codice.

usato

una

come

8.1

19,9.

Spiegare

8.I-3

le due

comunque .

eseguito

la figura

13,

regione

estendere

array

l intero

punto

1.

esegue

partizione

regione

è evidente

sempre.

a x

Usando A

in

nelle

appartenere

si possono

può

elemento

di qualunque

grande

allora

o ugnerli

vuote.

sono

strette.

siano per

piccolo linea

nella

strette,

A p..

i e j non

invece

Se ..

A

e inclndoiro

precedono

8.1-I

di

fine

elemento

i è incrementato,

disuguaglianze è troppo

e dalla

regioni

l e le due

r

1ej

e l indice

è fatto

finché

procedura

di.v

piccnli

pih

Vi sono

elementi

Gli

sono

Esercizi

procedura.

la

Concettualmente, elementi

i on

vengono

Quindi

a x e ogni

o uguale

minore

rj.

dall inizio

rispettivamente

queste

e Ag

come

non

è più

q

r sia i p

che bassa

si ripete

della

fine

..

..

Ap

Ap

x

un elemento

selezionato

partizionare

j è decrementato

e Ag,

sottoarray

.. i

e Aj

Inizialmente

regione

le disuguaglianze svhile

i

viene

Prima al quale

in A p

Assumendo

j.

scambiando

ciclo

..

l indice

alla

del

attorno

ax.

o uguale while.

ciclo

che

PARTITlON.

Ap

appartenere

Se

Il corpo

arra .

un

j

elemento

ogni

Ai

Cos ,

alta.

che

maggiore

sia

Aj

tllQggiori

regioni

le due

crescere

fatte

-

funziona perno

elemento

come

Ai

return

come

mostra

8.1

scuri

x

scambia

else

11

La

su

PwRtmos e quelli

correrra

j then

10

messi

di

esecu-ione

nellaparti ione

l

i

Ai

until

8

stati

di

Esempio

8.1

Figura

x

Aj

until

6

l

j

t i. iena

bilanci minio

dell i

partizione.

dipende

dipende da quali

dal

fatto

e1ementi

che

il partizionamento

sono

usati

per

sia

bihnciato

il partizionumento.

o Sè

149

Quicksort

n

l

.q

n-I

I

Il

n-l

2

lg n

---1

I

n

n

Il-3

Il

2

T

1

1

1

1

1

1

1

I

l

1

l

1

-- - - .l

n/8

n/8

n/8

n/8

n/8

np

n j8

n/8

n

-

l

l

I

n

Ig n

On

1

On

Figura

Un

8.2

albero a

n

o

,o

nel

Si assuma

Per

o con

paragrafo

che

questo

Tn

lft

tl

Rlll10

.

M

O O

p

Tn

1

Un

8.3

Figura

in

ione

parti

il sottopro ramntadi o

quando

e una

con

un

solo

elemento.

sbilanciato tempo

On

avvenga e T1

ad

O

l

ogni

di partizionamento

delle

La

viene

è allora

ricorrenza

8n, 2 del

caso

teorema

migliore

il partizionamento di ricorrenza mostra albero

produce

molto nel

di quicksort

1gn . 8.3

figura

La

i eloce.

più

On

Tn

soluzione

come

algoritmo

un

l esecuzione

per

ha

4.1 ,

Tenrema

principale

Pertanto

. I

lari

1gn .

il quicksort

n/Z.

di dimensione

regioni

due

produce

velocemente.

più

2T n/2 dal

che,

dell algoritmo.

passo

caso

è 8n

risuhn

ire

che

i due

sempre

bilancia

PsRvmo

esecu ione

di

tempo

Il

cui

in

Qctcvsow

per migliore .

migliore

mig1iore.

caso

. si osseni

h

TI

81

e quindi

8n

della

i1 bilanciamento

come

nel

analizzato

sarà

come

al peggiore,

caso

nel

di quicksort

di esecuzione

Il tempo

8k

bilanciato

tizionamento

Par

si iteri

n

g

aguale

moch

molto

eseguito

n

Quest affermazi

ricorren-a

di

albera

Se la procedura

Q

art

Tn

richiede

decorrenza,

questa

avviene

partizionamento

8n

1

valutare

Tn

roced

8.4.1 .

il partizionamento

Tn

la

Partizionamento

del quicksort 1 ii 1 elementi

pe eiore

M

dimostrata

Poiché

cui

peggiore

Il comportamento c0

in

QctcwsoRt

per

aparti-ione ilcasopeggiore .Iltempodiesecu-ionechenerisalraèO ir .

e

Partizionamento

oc1

ricorren-a

di

Per

84.

paragrafo

al caso

vicino

più

cio.

comprendere

che

migliore analizzare

bisogna

di

il tempo

descrive

che

ricorrenza

sutla

si ritletta

partizione

è molto

medio

esecuzione.

s ga

Si

supponga,

di 9 a 1, che

suddivisione 8 n-

un .

l ultima

alberodi una

ri a

ricorrenza

osservand

o che

degli

alberi

è la serie

,l

uicks i quic sort

perl esec tzionedi

presentazione

nel

aritmetica . caso

La

p.2 .

pe

iore. . Si

figura

e

ori, a goritmo,

esecuzione8 es - rr - 8 insertion in ct,i

Allora

sbilanciata.

una

si ottiene

veda

nel

pura

foc

per 8.4

di ricorrenza .

se il p rtizionansento allor,

il ten po

.si verittcaquandol arra sort

ecc,

uito

di

è il . esecuzione . rray

in tempo

iù sbi è

a - n- . - . O,

di i input in ut è già

op

SS

u Q Quindi

ordinato

o-B

P il

ten po

una

n

T n/10

T 9n/10

S.Z mostra

un

Di conseguenza,

sempre

produca

partixinnamento

sufticientemente

sembra

la ricorrenza

.

Tn Si ottiene

visn

aprilia

di

l algoritmo

che

esempio,

per

il tempo

di

n.

costo

è

finché

dove

quicksort.

ricorrenza

di

l albero

mostra

di

esecuzione

ni

condizione

una

raggiunta

Si

ricorrenza.

questa

per

noti alla

contorno

a 8n.

ostituito

n è stato

coinodith

per

ogni

che

lo

protonditb

La

t gura ha

dcll albero

livello

e

Il . 81 A/1

pQ..oA-O. di

.situazione ,

esecuzione

triquente.e

di Cosi,

con

di

una. uddivisione

9

a

l

gel

o

ni

di

listello

che

ricorrenza

embr i

intuitivamente

lllCllC

.

lo

iterano

che

si

avrehbe

se

la

suddivisl 1I1C

CSBlt llllClltC

fl SII

D

lllCt l.

lli

ll11ù

FCJll l

O gi . suddivisione

di

proporzion

ili è

osriuiri

prOduci

un

albero li

ricorrenza

ùi

pro

nnditi

O lgir .

Capitolo

n

n l

9 zn I 100

log,o,e /

9

op

00

I 00

K

/

b

81

729

1000

1000

8.S

Figura

I

I. i

On

D altra .i

I,

irtantenendo

wr

ricorren teinpo

a per di

in

QulcKsoRT

esecu ioire

di

O sr

cui

PwRTttlos

livelIo

sempre

prodnce

uiia

8

n

suddivisione

1gn .

.

il costo

di ogni

la suddivisione

livello

abbia

è On.

di esecuzione

è quindi

On

1g r

ogni

volta

che

è come con

un analisi intuitivi

sul

rigorosa

del

Mostrare

che

nel

medio

caso

essere

può

e cattive,

buone

n ln,

an

buone piùù

il

conseguenza,

Di

partizioni

partizioni leggermente

0

notazione

dalla

nascosta

costante

una

si alternano

soltanto

si hanno

p ù della

suddivisione è buono.

costo

un

con

Il/2

n

certamente

cattiva

risultante

livelli

sui

quando quando

l e

bilanciamento,

della

il costo

quindi

1 12

bilanciato.

l.-en

n olro molro

ande. rand

. Verrà

se tutti

gli

fatta

8.4.2.

paragrafo

medio Esercizi

Per

sviluppare

tutte

una

nozione

frequentemente

quanto

prossimo

dei

si

atialisi e che

circa e circa Nel

i

nn

informale.

per

caso

cento

medio,

sono

migliori

delle

su

un

lungo

volte

d

input

preso

ad

ogni

livello,

aspettarsi esempio.

prnduce un di

di

in modo

si alternino

livelli

improbabile

il 8.2-2

di mostrare

è meno

t

medio,

-

1e suddivisioni

Si supponga

però

dell albero

e che ri.

8.2-3

I

estratto

1

siano

S.é a

i casi

mostra

è n per

i

sottoarray

di dinteniione

al contorno La con questa

livello

sia

caoambinazione b d, dimensione situazione

e i sottoarray

partizionamento

Al

succe n

I per

basivo, i1

il caso

di

di una

Non

cti dimensione , sudclivisione . cattiva

lI /Be l ie è peggiore

vt

I i di queil

dimen

migliore.

il sottoarray

, 1, n-

can

hanno

prodotti

il sottoarray

dimensione

o

i

l e

1 è partizionato

Si assuma

che

il cnstn

della

I

condiziome

t

8.2-4

Si X

uit

a da

un

cOstO .

una , combinato

deil

f

S.

l

b trono di .

d prnduce ni

n cui

I una

tre 8 n .n p irtiiione

di input

iottoarrai

che

supponga ..l

fngliu n

I

C ia

0 C

ClOVC

CX di

nell zlbero

di

suddivisioni

le

i

1/2 ricorrano

,

Di i certo certo. sii

le

a superare

tendere

la procedura

che

Dimostrare

ordinatn.

quasi dovrebbe

per

SORT

p rocedura

d della

prestazioni

un

ss tilsetlte Jppl ossilllativ

1 2 lll

Ulla

qui l sort, Jllte. r10ilfal

coi è

.. . prcsiappoco

I

,

C.

, Tr 1scurul

ad

ll

c 611 i leiillga e

g

pfOIOll. e

in

ii n i

livello.

ogni

la

i I zlTOtoIld ulle

prnporzione

It l Iminimadiuna maisimaè

o onditè proton mento

di

p roblema liNSERTION

fál

con

a ta di transa-

tipico

un

è quindi

assegno

di

solito

due

1. .se

di convertire

ars

di solito

l ordinamento

il loro

di ene . li riscuotono

Le

numero.

per

e i commercianti

numero

numero

per

prohlema

questo

per

potrebbero

ordinuti

sono

in cui

ricevere

preferire

QUICKSORT.

il caso in

ordinamento

ordinamento

le

persone

Il problema

prontezze.

in

zione

molte li assegni

con ordinati

assegni

gli

ragionevole

che

tempo,

bancario

conto

scrivono

e

nel

eseguite

state

.

rna

seguendo

su un conto

le transazioni

registrano

spesso

Le banche

di 9 a l.

semplicità

per

a,guru

9

buone

le buone

ordine l ord

che

d

bilanciata

decrescente.

in ordine

è ordinato

ed

distinti

A contiene

se l array

è 8 n-

di QuicxsoRI

esecuzione

di

ben

su

peggiore.

elementi

valore.

lo stesso

il tempo

che

Mostrare

Il sia

bI

buone

i

1gn

è 8n

di Qu cyson

di esecuzione

il tempo

A hanno

òell array

che

ipotizzato

chiede più

che

di

8.2-1

ipotesi

suddivisione

8.2-5

caso

casuale.

sui

è

suddivisione

nel

è che

elementi

suddivisioni

PARTITION

su

comune quest

è stato

qualche

suddivisione

misto

caso,

come

l Esercizio

una

ipotesi

ipotesi

implicazioni.

a

che

una

un

Si discuterà

le sue

di

fare

. U

probabili.

subito

produce

ero

t

array

P nrriorl

lab

e cattive

i var

modo

Per

bisogna

quicksort,

equamente

ragionevole

lo sia.

produce. dell esecuzione

buone

per

si studieranno

PARTITION

distribuite

lè suddivisionf

volte

medio

siano

stesso È

non

delle

i ricorrenza

cattive

caso

incontrare

intanto

nello

qualcuna

cento

per

del

in input

guicksort

avvera

dente i anciata

ma

esegue

partizionamento p

numeri

paragrafo ,

Quando

chiara

ci si aspettadi

le permutazioni

ne

a

caso

di quicksort, di esecuzione

il tempo

costante.

proporzionalità

ma

Concetti

de11a

8n

costo

nel

buona,

8n

costo

il

Intuitivamente,

l.

a

di esecuzione

tempo

Il tempo

9

siaia

albero

di un

livello

malgrado

n al

vicina

è molto

situazione

Quest ultima

suddivisione

di dimensione

sottoarray

due

produce

a,

w

l e p rodrrce

n

1 cesta

. di

l e

d i dime rsione

sortoarray n

dimensione

.

combinati

livelli

dei

di

sotroarray .

del

Il parri-ronamento

quickson.

due

suddivisione

peggiore

Ig n

assorbito in cui

risulta

di

l algorismo per -svantaggiosa

ricorren-a

di

albero u,ta

il pani-ionamento

che

singolo odi

un

e produce

parte,

ricorre a

di

alber

n

costa

h su

di

livelli

Due

a

radice

nel1a tr

Un

n-1 /2

81

l

8.4

1

n-1 /2

9

/

9 a

8n

On

o

log

Fioura

151

gmcksorr

8

z

intero .

152

Capitolo

8

*8.Z-5

Quieksort

Dimostrare

che, su

produca, 1

a

ad

per

un

array

a è di I

partizione

di

2a

risulti

più

costante

qualsiasi input

circa.

0

a caso, Per

bi anciata

una

l

112,

la

che

probabilità

partizione

valore

quale di

a

n ad

di

bilanciata più n è ugualmente

a oppure

P Rvmoi

del

aragrafo

rapporto che

probabile

8.2 , il quicksort,

per pe

la

meno

comportarsi

che

un

misto

di partizioni

e quindi

Versione

Nell

randomizzata

analizzare

il comportamento

le permutazioni

dei

dell input

input

ipotesi algoritmo

sempre.

che

tutte

alternativa

esempio,

Si

all*iporesi

un

che,

algoritmo

On.

ma

algoritmo

prima

che

ogni

che

rende

il tempo

si definisce

numeri

di ordinare permutazione casualmente non

è stata

migliora

di esecuzione

di input l array,

siano

introduce

quicksort

sia

il

tempo indipendente

di un di

array

esecuzione

ma

anche

da valori

u

Le

di

superano

seguente

media.

modifiche

da

ma

r

apportare

che

di esecuzione dovrebbero

basato po

sia,

sulla

a P Rvtrtow

ogni

l elemento

Ap perno

del

un

elemento

x

sono

del

scelto

p Di

conseguenza

ci

si

e

casua

analizzare

e QutcwsoRt

con

ragionevolmen

permutazione da

randomizzata agori e

passo

sottoarray.

in media,

difficile

più

versione

Ad

l elemento

l elementi

p in input

è un

casuale.

si scambia

e dell array randomizzato

in

scelta

assicura

degli

dd

bene

l array, modifica

Questa

un altra

progettare

di

strategia

o qualunque

1

questa

distribuzione.

a caso

probabile.

eIementi

r.

l algoritmo

funziona

il concetto che

tempo

dell algoritmo

e

e

di questa

array

di

in

u

versione. p roceduradi

poche.

partizionamento.bastaeffettuareloscambioprima

p artizionamento

probabili. una

permuti

equamente

gli

equamente

Anche

..

bl h

ideale che

la

si può

PARTITION,

di partizionare

b

tutte

gli

L Eserciziò di dimensione del

caso

RANDOK1IZED-PARTITION

Per

elementi

per 8.3-4

l

i

2

scambia

3

return

A.

R Yt ow

I

P,

r

p,

Ap

Ai

n in P Rvivio

A,

peggiore

r

p,

dall input.

ra dosni a1o

se il suo comportamento è determinato non solo o t ti da un di numeri generatore casuali. Si assuma di avere un generatore di numeri casuali Rwsoow. Una chiamata a Rw ooi restituisce un intero a, b tra a e b, compresi. essendo equamente la restituzione probabile di uno di tali interi. qualunque Per esempio Rwwoow restituisce 0,1 0 con probabilità 1/2 e I con 1/2. Qgni probabilità intero restituito da R xoowt è indipendente dall intero chiamata restituito nella Si puo precedente. immaginare Rwwoot r come un dado con a rotola b 1 facce che il suo output. per ottenere In pr etica, molti ansbienti di programmazione offrono generatore di numeri un psescdo-casuali un algoritmo detenninistico che restituisce sembrano che statisticamente numeri casuali. dal I input

usi

in A p

sulla

l algoritmo aspettare

quicksort

è di imporre

che ipotesi

questa

ci si può

paragrafo randomizzate di

in input

l ipotesi

il quicksort

non

però,

fatta

Quando

Questo

versioni

distribuzione

permuti

modifica

Questa

dell algoritmo,

sulla

reali,

8.2-3 .

due dei

medio,

probabili. considerano

persone

l Esercizio

e presenta

la proprietà

richiede

Un

veda

caso

equamente

In situazioni

le permutazioni

si supponga

rafforzare

molte

grandi.

randomizzato

l ipotesi

tempo

è valida,

nel

fossero

un buon

produce

r randomizzate

i

k,

di quicksort

in input

sufficientemente valga

Un

numeri

che

quicksort

quicksort

a caso

distribuzione per

del

c h e versioniioni

bene. edura

8.3

e cattive

buone

capisce

si

Il nuovo

k quicksort

chiama h

a d essoso

RAlùDOlIIZED-PARTI1IOlù

di

lllVCCC

PARTITION.

prod

a disposizione

Questa

versione

RANDOiX1IZED-QUICKSORT

1

ifp

2

r

,

then

RANDO 1IZED-PARTITlON

q

A,

3

RANDOMIZED-QUICKSORT

A.

p,

4

RANDOM1ZED-QUICKSORT

A.

q

Si analizzerà

l algoritnto

randomizzata

di quicksort ha una interessante proprietà che possiedono nioIti altri algoritmi randomizzati tiessun input particolare algoritmo. il caso nel comportamento provoca peggiore dell Il caso dipende peggiore invece dal generatore casuali. di numeri Anche intenzionalmente, non si riesce a produrre un cattivo array di input. le permutazioni casuali poiché rendono irrilevante l ordine dell input. L algoriuao randon izzato compnrta male si solo se il generatore di numeri casuali una permutazione produce da ordinare. sfortunata L Esercizio là.4-4 mostra che tutte quasi le permutazioni consentono di comportarsi a1 quicksort bene come quasi nel caso medio vi sonopocltissiine che causano un cnmportamento permutazioni simile a queHu del caso peggiore. Una strategia randomizzata è utile tipicamente vi sono quando molti algoritmo modi in cui un puo procedere, ma è difficile determinare che promette quello di essere Se molte mi alternative liore. sono buone. sceglierne semplicemente una in modo cosuale a una buon stnttegia. pui portare Spesso un al oritmo deve tetre mnlte scelte d ir.,inte la.,uv Se i benefici c,.ecuzionc. delle scelte buone hanno m dei costi gior pesn de1lescelte cat tive. una selezione casuale tra scelte buone e cattive a un algnritmn può portare efttciente. Ahbiamo n t to nel

A.

r

nel

prossimo

I

/, r

1, r

paragrafo.

anche

Esercizi

I

8.3-I

Perché ere sé ana analizzare izzare nel

l

caso

le prestaziot . i.

di un

dgori

t mo

randotnizzato

neel caso

nledio

2 non

peggiore

i 8.3-2

Durante

l e ecuzi me

vengono

fatte

cambia

8.3-3

la

risposta

Descrivere ascrivere

della

al generatore

una

nel

caso

procedura

Rwsn utzro-Qucvsovt.

di numeri

casuali

8.3-4

moneta

r ilizzuzinne . rapii

equ

. gQua

-

del l è

nel

caso

i

Rwsr ...how

procedura

lu ipi

li

ciccuziot e,itlr. . ci

che

a. .

dell i

Clt. I I

una illpUI

II l l/.

proce UI7 llV l

d ura A

r u sdomizzat l I

...

11

j

mm

temp i

di

-

C

C

I CSLVllù

pCI 111lll lll I1C

8

esecuzione . . ,

1ll i

,

C lYLI llt .

solo

ir i

procedura

.. Scriverc COI11e

ome

peggiore

migliore

i una

chiamate

quante

R xwoow

lanci

di

uro.

p renda

8

I L

Illgli Surah

ee

amen

1i

155

Quicksorr

154

S.4

8

Capuolo

del

Analisi

quicksort

per

il tempo

per

limitare

e sul

ci

perché

analisi

un

vale

che

tanto

in modo C11C

uesto con

Si comincerà

rigoroso.

-Q RANDOMIZE A DOMIZED QUICKSORT,

pCf

nel

k sort

d e 1 quic In

velocemente.

eseguito più

meno t

comporta

sul

sia

che

QUICKSORT

per

del

l analisi si concluderà

e

Analisi

caso

del

del

Analisi

con

con

un

produce

il tempo Usando

max

Tn

dove

con

q varia

c

max

a q è positiva

Da

si

ciò

il

ha

Tn

q-

n

q-

ii

q -,

si

limite

con

Proseguendo cn-

dimostrata.

uò c ura procedura

deIla

peggiore

2c n-1

si

un

analisi La

di elementi

minori

scambiando

Ap

la procedura

PARTITION Tn

la soluzione

tentare

veda max

8n

regioni.

due

produce

cn-

er

che

1 ra

iunge

massimo

valore

un

seconda

la derivata

in

re rione

dell es -

q -

i

l-

1 -

n

n-

2n

1 ..

scegliere ine

rande la c ostante s c sufticientemente rtanto il t 8 n .n . P ertantoiltempodiesecuzionediquicksortnelcasopeg a

del

caso

modo o

ricorrenza

aso nm i

me

gr

int

io sia

t

8n

..

1on .

d i elementi e s iene

eseguito

i esecuzione oc

du

1 p

il tem pO

se la suddivisione

,

s

o -

iod 1

vi è una

su un latn un

d i partizionamento.

On di

U7.

OA

il

Tn

ricorrenza

tempo

T

i

ha

n

richiede

linee

probabilità

Di

Qn

tempo

per

a i si ferma basso della

, l indice

di

arra

un

di

array

medio

per

or Jin

un

sui

array

di

array

lun

hezza

n puii

e quindi

costante .

Al

di

n

lunghezza un

restituisce di

sottoarray

chiamata

Una

elementi.

Pwwm iotl

procedura

ricorsivamente re

Raxoowizro-Qucxsow . n

tempo

un

su La

di

input richiede

elemento

solo

l airay.

è chianuta

il tempo

conseguente

un

ordinare

di

atteso

esecuzione

di

tempo

partizionarc

e R iDANII7ED-QulCKYiORT

essere

indice

e e n

lunghezza espresso

q.

come

n-l

allora

l ilherod

i T

j

er

vilupp,,re

uha

Il

valnre

il

doppio

ric ,rre-.n/ ,t

1I

T

TI

g

Ta

T gi

all

.

8 l

8.21

n

Rwxoowizro-Q . Si i puoquinài u

che

l, allora

rango r

Se

partizionamento. di PwRriv ot 4-11

a R oowizco-Qtucvsow

chianxata

Una

81.

l

per un

su

R oowizeo-QuicvsoRv

il

per

richiesto

medio

in

della e apartiginne. a

lavoro atteso

una

ora

stabilisce

Si

iore

SC

l/n

di

niedio

il caso

per

cch

medio

spieoazione

una

del

risultati

vari

dei

I in

q.

data

r

..

in A p

r

..

in A p

di elementi

I.

i 2,è...,n

si ottiene

Tn

a

è già

numero

l il numero

di

è il numero

while il ciclo che si esegue volta è restituito q j. il lato conseguenza. quando a j p. Di è j si ferma che questa p e l indice l in dato con accade probabilità Ciò A p elementn il solo contiene partizione l. che rango .v la probabilità la Di conseguenza. Ap. di.x un elemento più piccolo almeno vi è 2, allora Se rango v prima ma l indice j si ferma i a i ferma si p indice svhile. il ciclo volta che si esegue alto della prima nel lato con A pJ per metterlo scambio uno fattn quindi di raggiungere p. Viene della nel lato basso l elementi rango v dei ognuno termina. PARTlTION 2. Quando rango .z se partizione. 1, n..., l, 2, i di s. Pernnto. per ciascun minore è strenaniente partizione l è lu. elementi i abbia della partizione che il lato basso la probabilità 1 del lato p la dimensione q che concludere si puo casi due dei combinazione Dalla l/n per con è i probabilità 2/n e che 1 dimensione è 1 con probabilità della basso partizione

Sia

Si

di un

in un insieme

n.

2....,

le probabilith

ora

dipende

rango

dal

solo

da PeRmtow

p

a caso

scelto

1gn ,

On

i

8.4-2 . q-

8n

l

fatto

dal

l. Esercizio ... .

2c n

n

l

verificare

su

Analisi

i

i per

r

n

Sia

nelle

.

nell intervallo

si puo

il confronto

superiiltermine

8.4

l.

Il rango

r.

..

esso.

ad elemento

un

con

di q re tituito

in A p

elementi o uguali

è

il

richiede

dimostrarlo

ma

che

vero

qui.

presentata

il valore

è che

agli

rispetto

Una

può

di quella

medio

caso

nel

quicksort

osservazione

Calcoliamo

8.1

di

tutti

non

Se

che

si assuma

è ancora

diversi,

sono

stato

è già

Ap

l analisi.

semplificare

i numeri

C

PARTlTION

Quando

l elemento Per

r.

.

in A p

a caso

diversi.

complicata

più

prima

rango .r

cn -, perché

PARTlTION.

R oo ,tzEo-gvic soRt,

procedura scelto

siano

in input esecuzione

di

x Ap

8n

q

cpme

rispetto

di per r

la ricorrenza

ha

l perché

1. Si può

cn

q-

ue estremi,

ei

caso

ora

peggiore

ioni

cq-

L espressione

l e n

tra

8.1 ,

max

Tn

Si

nel

è il caso

8n,

q

almeno

11

do

tempo

il

si

di ricorrenza

livello

sull operazione

la prima

dimensione

M

.So.

Tn

Tq

il parametro

ognuna

n.

4.1 ,

il paragrafo

T n

Sia

di dimensione

input

un

SU

QvICKSORT

O n- .

sarà

affermazione

veda

si

-. è

i quicksort k

esecuz on esecuzione

8 n- n-, Questa

di sostituzione

il metodo

ad ogni peggiore , t c h, e, intuitivamente,

il partizionamento

di esecuzione

dell algoritmo.

esecuzione

di

che

tempo

3 della

un elemento

con

i numeri

tutti

osservazione

qualche

linea

nella

chiamata

peggiore

s è iv isto si

8.2.

p ara rafo

Nel

un interessante

per

della

partizionamento

Cominciamo

tempo

quicksort

processo

sommatoria.

risoluzione

caso

scambiato 8.4.1

del

parte

ricorrenza

questa di

caso

ara rafo,

di RAwDowzso-Qutct so .

medio

caso

del

aspetta

si

rtamento

p C peggiore

intuitive

spiegazioni

ffornisce

8.2 a o 8. p arazrafo ao

peggiore

stretti

limiti

si deriveranno

Come

atteso.

esecuzione

e risolvere

di i elementi

un array

ordinare

per

di

il tempo

ricorrenza. Il

richiesto

medio

di

q de

ha

un

li

altri.

distribuzione come

quasi not ao

prim,i.

unifw

me.

tranne

per

il

v ilare

q

l che

è probabile

P

15á

Capitolo

8 I57

Quicfcsort

Usando

il fatto

-Tl

che

Tn

T1

e Tn

81

1

I

O n-

dall analisi

del

caso

si ha

peggiore,

Limiti

strefti

e il termine

Rimane

da

riscrivere

8.2

puo

la ricorrenza

assorbire

perciò

l espressione- T l

Tn

I .

come

8.2

Si

osservi

come

che

Tq

/

per

e una

n

q

come

-1,

n Tn

ogni

Tl

i due

della

termini

somma della

compare

somma

una

volt

8n

n Ign,

la disuguaglianza

si ha

n-lgn,

kl

si ottiene che

T Ic

g

è al più

n-I

n-I Tn

termine

klgk

termine

Fondendo

q.

ogni

. 8.è

1, 2,,

volta

sommatoàa

k Igk

Poiché

Tn

Tq

g ql

sulla

8.5

kl

I Tn

il limite

provare

n-I

nell equazione

On

quindi

sommatoria

O -

1 On,

Si può

sulla

definisce

un

limite

sufficientemente

.

di un

limite

, n-

di

un

di

costante.

fattore con

la ricorrenza

risolvere

8 bisogno

a meno

stretto da

forte

la

1gn

Q n-

perché

limite

sulla

sommatoria

limite

Questo

Tn della

soluzione

non

però

è

p

. ricorrenza

essere

possa

ottenuta. Soluzione

della

Si puo

ricorrenza nel

Si può che

risolvere

Tn

la ricorrenza 8.4

an

1gn

b per

a e b sufficientemente si ha

usancto

certe

grandi

il metodo

costanti

a

in modo

che

di sostituzione.

0 e b 0 an

Ics

ancora b sia

da più

Si assuma stabilire.

grande

la sostituzione

di T l

per

n

I.

1gk

I Pii

Tn

Tk

n

klgk

g

nella l

sommatoria

prima

il Ig/-

nella

della

seconda

n-l

tgk

ic lg

ak

k

b

1

Ignei

Al

8n

mostrerà

tra

un

lgk

n

da

lps.

da

l nln/2 1g si ha

Quindi

n-1 k

1g i

g k

n/2

nj 2 -t

8n

.

k kl

kl

1 lg

1

n -

attimo

che

Ign

n

limitato

g 1

n

la sommatoria

nell ultima

riga

può

essere

limitata

da

n-I k

limitato imitato

superiormente

è superiormente

k

lgngk

2b

-n n

Si

è

destra

parte

t

g /l

n-t 2a gklgk

.

sommatoria

I n 1-

n-I

t1

klgk

8n

kl

n

discusso

come

parti,

I

g k Tn 21

kl Il

n-I

in due

di videndola

ottenendo

fni- 1-1 klgk

scegliere

. Quindi

questo

3.2,

n-I

induttivamente

Si possono

determinare

paragrafo

l -n Ign

l -n

2

S

n.-

8.5

/I

se Usando

limitazione,

questa

n

2. Con

eio

è dimostrata

la disuguaglianza

8.5 .

si ottiene Esercizi

Tn

nr an

1g n

s

-na -n

1g n

2b

n

I

n

n

On

8.4-I

Mostrare o trarec

che e

h.4-2

Mostrare r,ree os

che eq-q

iil

e tempo

di

esecuzioiv. .

del

quicksort .

caso

nel

mi

io

re

lie i .

èQ ii

8n

4 an

Ign

b

b n

,r

q - rug,,iun,,c

n

,

,.

un

valore

m,.ts imo ,-

perq

1,2....,n

I quando

anlgn b

si

poiché che

il

tempo

puo

sceeliere medio

a di

sufficieateiticnte

esecuzione

del

r inde quivi

i it

cosi i

O ri

che 1

n.

a -n

superi

8 ahi

IA. Si

conclude

8.4-3

Mostr re Q /k

che rl1 .

il

lcnlpo

di

c iuziol c

ttte n

pel

il

R,xNt JI117.

-Q

uicvson

è

159

Quicksort

Il

tempo

di

vantaggio

esecuzione

dal

veloce

fatto il

quando su

quicksort

un

che suo

tutto

I array

algoritmo Come,

input

con

insertion

ordinamento

ha

e in pratica,

di di

dovrebbe

lo

di

esecuzione

è la

Provare

Mostrare

sort che

O n/

su

questo

then

9

else

f

e quindi

usare

k

a.

della

giorazione

1 -x4

il metodo

di

sommatoria

k 1g k che

g

integrali

sia

stretta

più

fornire

per della

in considerazione

modo

casuale

tre

mediano

fra

i tre

ottenere,

nel

caso

una

elementi

modifica

nell array

valori.

alla

una

mag-

d.

A ed

Approssimare una

peggiore,

su un

esegua

con

il partizionamento

una

suddivisione

che

funzione

di

n ad

di a

1

scelga

in

rispeno

a

la

con

0

a

alla

uguale

di

probabilità

un

che

probabilità

al

in

di QUtcwsoRv,

di esecuzione con

P Rt,tto

e quindi

r

Ap

..

dato

valore

q

il valore

che

probabilità

sia

sono

di input

i valori

tutti

quando

Lowum-P Rv,vto . ION che

RANDON11ZED-Lo uso-PARTll

procedura

a caso

scelto

in tempo

eseguita

viene

la PwRtmor .

di n elementi. il tempo

si sostituisce una

Definire to

e da

PARvmox

da

spostato

essere

può

come

Loxicwo-Pwwivtog,

la procedura sottoarray

se

elemento

un

che

.

è influenzato

uguali,

di volte

è corretta.

mo

Lo no-Pww

massimo

che

Come

8.5 .

PARvmoi

procedura

l

la procedura

PARTITIOiS

Mostrare 8n

con

i

è il numero

Qual

e. Prendere

8.4-6

che

Mostrare

c.

approssimazione

i

return return

n Ig nll- .

LON1UTO

l, -x-Inx 2

Aj

r

ifi

8

l identità

xlnxdx

m

Ai

scambia

il

b. 8.4-5

l

imi

6

ordinario

l insertion

atteso

scelto

più

.s-

then

5

seguente.

senza

si esegue

ordinamento.

traendo

7

restituisce

esecuzione

essere

pratica

procedura

è terminata,

tempo

in

il tempo

La

di k elementi

processo

un

ha

ordinato.

meno

il

migliorato

sort

al quicksort

completare

in teoria

essere

puo

quasi

è

principale

per di

quicksort

l algoritmo

sottoarray

la chiamata

quando

del

if A j

do

4 8.4-4

dalla

restituito r

p

un elemenla

che

Mostrare

è

RAxoow zEo-LoMvwo-P Rvhtoi Rw DowizED-PwRtntoi.

dalla

restituito

q sia

con

Ar

scambia

Lo uro-PwRvmow

la

chiama

1.

Problemi

e Volpe

Gatto

I professori

So

Stnoge

AEgorittno

8-3

hanno

proposto

elegante

il seguente

di ordinamento

algoritmo

t

Svooaa-Son

8-1

Correttezza formalmente

i seguenti Gli

b.

L

che

la procedura

P Rtmow

del

8.1

paragrafo

è corretta.

Dimostrare

2 i e j non

si riferiscono

mai

a un

elemento

di A fuori

dall interi allo

p

..

3

r.

j è diverso

da r quando

PaRvmow

termina

la suddivisione

cioè

non

è mai

scambia

then

return

Ogni

elemento

di A p.

j

è minore

o uguale

ad

ogni

elemento

di A j 1

..

r

quando

6

termina.

PARTITION

Consideraré Ap

..

la

r,

seguente

nella sia

più

variazione

versione

questa

elemento regione

di parti -ionainehto

regione

grande

di.v.

sia

di

PwRTmow, due

minore

regioni, o uguale

dovuta Ap a x

.. A fr

a

N.

i

e Ai1

Per

Lnmuto. .

e oceani elemento

j.

partizionare tali

che

a.

o

input.

nella

A.

p.

che

Mostrare

ni

Si Si Si

tre

in

parti.

ordinano

gli di

ordinano

ultimi nuovo

dell zrray.

terzi

due

i primi

ordinano

dell array.

due

terzi

i primi

due

dell array.

terzi

SvoocE-SORT n

dove

l arrup

correttamelste

ordina

length Aj

l.

A,

A 1.

.v

-

A

h.

Fornire

la

ricorrenza

asintotico

il

per stretto

c.

il

Contentare

tempo

tempo olle

notavi

r

r

,

,

C,

2

i

3

for

p j

l

p

empiere to

r

di

ed

un

lengrl A .

esecuzione

8

sensl re

cle

esecuzi ne

di

di

di per

caso

nel

SvoocF-Snw

il tempo

pez ,iore

di

caso

ili

pegginre del

esecuzione

Stonrr.-Sn t

cavo

peegiore.

con .

1

n

second i

limite LostUTO-PwRTtTlùN

c

I

l

i, j

A,

Suddivisione

t

k. j

i

A,

Stooae-Sori

k

i, j

A,

t

di Losnnto

costruisce

prima

1 13

Svoocr -Son

8 Algoritmo

i

L j

STOOGE-SQRT

7

8-2

Aj

Ai

banale . k

e.

j

then ifi 1 j

4

indice

A

if A i

t

punti indici

i, j

A,

Pwsrsrsov

procedura

1

Dimostrare

a.

della

chiamati

tali

,

,.

,,

.

quello 1 ICl

ksorr

Qui

.IáO-

c. 8-4

Profondità

della

L algoritmo

QVICKSORT

la chiamata

a PwRm os,

di

quello

destra.

necessaria

La

da

che

Qvte soRv

A,

8.1

paragrafo

sono

ordinati

seconda

in

una

modo

tecnica

questa

contiene

due

ricorsiva

usando

struttura

di controllo

in inglese

tail

la

Dopo

sinistra,

whilep r

2

do

non

è

tecnica

Questa

QUICKSORT

Spiegare

di

sono

in

inserite

sulla

pila,

assume zioni

che per

ogni

recrcrsion .

Note

ordina

sono una

sulla

cima

termina

te

all array

usato

in cui

i valori

della

siano

le

la profondità

della

pila

le

informa-

della

quelle

da

nella

01

contiene Le

chiamata vengono

informazioni

vengono

estratte.

Poiché

La profondità

monumento

di QulcksoRT

si

le informa-

puntatori,

pila.

in qualunque

pila

pila

sue

rappresentati

A. che

parametri.

mentre

pila

spazio

nella

dei

informazioni

richiedono

di spazio

una

è chiamata, sue

l array

usando

inclusi

procedura

relativi

correttamente

ricorsive

ricorsiva,

di procedura

di QUICKSORT

sul

della

dell esecuzione. è 8

su un

array

in modo

che

la profondità

della

nel

pila

caso

peggiore

Ia procedura

elemento

approccio

x scelto

comune

su un insieme

di tre

si assume

gli

l array

media ro-fra-tee

migliorare

un

che di output

x, dehnire

del

dell array Usando

A

che

Di quanto .

ii .

p,

il metodo

casuale

A1

..

n

nel siano

mediano-fra-tre

come

come a caso

ed

mediano

Per

questo

n

3. Sia

scegliere

per

la

per

sottoarray.

x l elemento

sottoarray. distinti

perno dal

problema A

C

ii

.

l

l elemento

pernn

lescrivcrep

come

funzione

di scegliere.s

A

di n edi,

2,3,

peri

...n-l.

0.

p

è aumentata rispetto

input

uno

si sceglie

fra-tre

in modo di

è di usare prendendone

i .

Fornireunaformulaes ttapn noti

che

mediano

selezionati

ordinato. x

R.cxoowzeo-gutcxsoRv attentamente

più

è il metodo elementi

elementi

Pr

p

fornisca

4

lengrh A

procedure

questa

situazione

Parti ione

Al

q

I,

recente

quantità

il codice

per

i J, con

A

il fattore

h/3

rispetto con

la somma

solo

influenza

mediano-fra-ve

x

suddivisione

buona

si approssimi

Suggerimehro

il metodo

una

costante

i

un

2n13,

procedura

alla

la valvtazione

la prohabilitii reaNzzaziane l

lii1sitc

usuale di queste

dell algoritmo prnbabilitè.

1 12 ,

Ln Si

assuma

cioè che

i

medi n i

in

.

e ii

n w

algoritmi

quicksort dei

dettagli randomizzati

fu di

proposta realizzazione furono

da

Hoare

98 .

Sedgewick e della

dell algoritmo evidenziati

da

Rabin

165 .

174j loro

di

realizzazione

alla

integrale .

del

tempo

Q itlgn

al Capitolo

degli

O Ipso .

modo

Si

di sinistra

di n elementi.

partizione Un

il sottoarray r

p,

chiamata

i parametri

chiamata

kfodificare

8-5 Un

,

A

Quando

quando

una

di input

ogni

più

di fatto

Descrivere

sia

ad

fondo.

è la massima

pila

A,

eseguono

chiamata

sulla

che

lo scegliere

suddivisione di avere

di

l

solito

relative

iniziale

A,

QUICKSORT

perché

informazioni

e ordina

PARTITION

pmq

compilatori

b.

Partiziona m

5

I

a.

t q

4

c.

dell algoritmo

Dedurre

trattazione

a.

la probabilità

di quicksort.

è

versione

seguente

d.

cresce

buona

come

r

p,

3

b.

si definisce

usuale

e poi

in realtà

iterativa.

consideri

Si

di

QulcxsoRT

procedura

automatico.

a se stesso.

il sottoarray

prima nella

chiamata

ricorsive

chiamate

La 1

Se

quanto

ricorsivamente

chiamata

evitata

simula

il quicksort

per

compilatori

buoni

quicksort,

pila

nel

essere

può

fornita

zioni

Ml

8

Capitolo

fornisce

importanza.

una

buona

I vantagp

i

Sono

appena

stati

merge

solo

sui

ordinamenti

9.1

peggiore, sort

merge confronti

e lo che

9.1

che

il limite

ordinamento sull ordine

f

a,,

sul

loro

a,

a

relativo

questo

I

O is

il quicksort una

produrre

ordinamento

per

è

determinano

che

chiamati

sono

di ordinamento presentati

sequenza

Ipso .

Qn

ordinamento

Il

1gn .

in tempo peggiore

ordihan ento

algoritmi

a,

ordi-

sono

finora

che

non

a

e a,

di

il per

costante. sort,

counting che

dire

superfluo

k

sort

radix

algoritmi

questi

di conseguenza,

l ordinamento

per

si esegue

nel

a

a ....

dei

uno i valori

elementi dati

. Cioè,

per

a

e a.,

per

a,

a

a,

informazioni

o ottenere

elementi

degli

a

confronti

seguenti

informa-

ottenere

elementi

due

modo. senza

si assume, questa

tra

il confronto

ci,.

esaminare

si possono

vengano

solo

input

relativo,

altro

Quindi

cui,

ordinamento

alcun

vale.

si usa

confronti,

equivalenti.

eseguire. Per

l ordinamento

sequenza

Non

esiste

di ordinamento-

determinare

per

deve

confronti di n elementi.

sequenza e non

lineare.

in tempo

non

1gn

fattore

algoritmi

confronto

dal Qn

in alcun

Data

tre

una ottimi,

un

per

eseguiti

per

parapafo

distinti.

tra

in tempo

ordinare

asintoticamente non

vengono

per

a

ordine

tutti

di

qualunque per

esaminano

l ordinamento

assumere sono

e 9.4

della

determinarne

che

confronti

sono

diverse

In un

a,

si puo

eseguito

Questi

algoritmi

gli

veloce se

inferiore

zioni

In

1gn

inferiori

Limiti

siano

dimostrato

9.3

operazioni

essi

sarà Qn

più

9.2. sort

usano

Tutti

algoritmi,

proprieth

di input.

caso

nel

superiore

venga

interessante

elententi

n numeri

ordinano

di questi

l algoritmo un

rra

heapsort

sia

I paragrafi e bucket

limite

confronti.

per paragrafo

caso

nel

ohti

cortfronti.

per

namenti Nel

confi

che

questo ognuno

per che

condividono

algoritmi

Questi

Inoltre, in modo

di input

algoritmi

raggiungono

in media.

lo raggiunge di a numeri

alcuni

esaminati

e lo heapsort

sort

basato

lineare

in tempo

Ordinamento

perdite

i ionfrnnti

ipotesi, fatti.

Si noti

senso

che

si assume

iisoltre forniscuno

che

tutti

di generalith.

che

tutti

a

sono

a

forma

della

a

i confronti

che la

i confronti

ste sa

a,,

gli

a,

e cosi

a,

a,

a

fornm

a

a,

input si può

e a

sull ordinainento

informazione abbiano1

di

elementi

inutili,

a,

164

Capirolo

9

in

Ordburmento

Poiché

un

albero

n

2,

che,

passando

h

fg n ,

h non

di altezza

binario

ha

di 2

più

165

lineare

tempo

si ha

foglie,

s

2,1,3

3, I p

1,3,2 Figura

9.1

L

nlhero

di

degli

permuta.ioni

2.3,1

decisione di

g.2,1

t irr.serriorr

per

elementi

modello

albero

ad

inp rt,

di

implica

sorr

che

I albero

quindi

opera

di

su

tre

decisione

ele,nenri. deve

Vi sono

avere

3.

alineno

6 possibili

di Stirling

Dall approssimazione

crescente.

1g è monotona

la funzione

poiché

si ha

2.11 ,

n ,

6 foglie.

dove Il

ai logaritmi,

g .g

e

2.71828...

cui

da

naturali

logaritmi

dei

è la base

decisione

rg Gli

ordinamenti

decisione.

per Un

ordinamento dati

confronti

albero

e tutti

altri

gIi

sequenza

di

In

albero

un

di

ne11 intervallo è etichettata

da

richiami

sulle

tracciare

un cammino

viene

foglia,

un

mentre

funzioni delle

Un

limite

n è il numero

sull confronto

di elementi 2 ...

L esecuzione

di

di decisione

a

a

figura

di alberi

un

mostra

Qn

di

un

opera

sinistro

dell albero

n

foglia.

impone

Corolfario

una

a,,

...

permutazioni

foglia

Ogni

nodo confronti

a ,.

Perché deve

i

e mer

a

Teorema

per ad

il caso

I limiti

e sort

La

lunghezza sue

caso

pe

di

cammino

numero

inferiore

limite

albero

di confronti

altezza

degli ul

di decisione che

l al

corrisponde

alberi

oritmo

d ila oritmo

radice

di decisione

è allora

cti ordinamento

per

nd una

in

9.l-l

esegue di decisione.

limite

confronti.

inferiore Il

sul

seguente

di

.E-3

tempo

vi

sono

diverso

permutar dc li

elcnienti,

su

stretti

asintoticamente

limiti

la sontmatoria

senza

Ig n

di

l approssimazione

usare

le tecniche

invece

usando

igk

g.,

presentate

3.2.

paragrafo

Mostrare linèare

teorema

9.1

Si

di un

di decisione

neil albero

foglia

di una

possibile

ordinamento

Calco1are

di

che

l/n

degli

ordinamenti

vi sono

non

deg

metà

su alnteno

di

input

li n

per

n

lunghezza

n. Cosa

E cosa

si può

il limite

inferiore

dire

si paio dire

di uno

sia

di esecuzione

tempo

il cui

confronti

di lunghezza

input

di

decisione

che

coordina

ii

elementi

ha

altezza

Qn

I

consideri ioni

un di

albcr

n elementi,

l lbclÈf lCVL

ali

leciiionc

love

o

.ni

llnwnu ilVClC

aIten.l

eli

permut ziohc n

Io li .

h che

i rdin i

rappre.,unta

all

è applicabile

che

sostiene

Salontone

Il professnr non

di una di

frazione

frazione 1/2

del

ambiente

suo

Qn in

calcotatore,

cui

Igir il

per

ordinare

n numeri di

controllo

f un odi

n. seconda

Dintostrrt. ,iwte.

nel

inkriore.

ilhero

Qualurrqire

heapsort descritto

peggiore

nel

9.1-4 Teorema

minima

è la profondità

Ottenere

nel

dell albero un

caso

nel

5

Qual

quulunque

di ordinamento

all altezza

1gn

Qn

algoritmi

degli

di esecuzione

tempi

sui

inferiore

limite

Esercizi

9.1-2

di un

al

9.1.

algoritmo

di conseguenza.

quulunque

tale

lungo

ottimi.

asintoticainente

confronti

l algoritmo compartire

peggiore

il numero che.

suli

esecuzione,di

stabilisce

più

rappresenta

iore,

limite

Ua

del

foglie

per

1gn

On

superiori

corrispondono

Stirling.

delle

ordinamenti

una

di decisione.

per

sono

interno

si arriva

di n elementi

e lo heapsort

Dimostra -ione.

6.1

corrisponde

Quando

92 sort

i e j

paraerafo

In ogni

.

di

su

qualche

i successivi a,

pera,

a

delle

nel

ordinamento

ad una

i confronti

l ordinamento ognuna

di

per

di input.

vedano

Si

radice

a

sequenza

algoritmo

dalla

impone

nella

a

n Ige Ign

dei

l albero

I. 1 che

n 1gn

di

algoritmo

i movimenti

9.1

paragrafo

con

z nj .

il sottoalbero

deitro

stabilito

inferiore

La del

è etichettato

1.

albero

appropriato,

foglie

da

Il controllo,

ignorati. sort

in termini

eseguito

dimensione.

insertion

interno

nodo

permutazione

ha

in modo

una

n, dove

il sottoalbero

l algoritmo

astratto

Il merge

ogni

permutazioni .

eseguito a.,

data

vengono di

modo

elementi.

i, j una

in

il confronto

di una

dell algoritmo

decisione,

1

input

all algoritmo

di tre

visti

rappresenta

su un

aspetti

corrispondente input

possono

decisione

opera

quando

decisione

a

di

essere

it clcincnli. vi,

ardi,ram n ,

che

che

il

ntimero

Q ir

Ign .

Psichi

n,

a di

a contronti

a.

a.

a i

tre

Mostrare vie

richiesto

che

il per

professore ordiiwre

i r

in

errore

elementi

provando è

ancora

un

láá

Capitolo

9

P J-5

9.1-6

Provare o are

che

fusione

o

Sia

data

sono

una

ognuna

necessari

merge

di

sequenza

contenente degli

piccoli

inferiore

i limiti

inferiori

delle

in una

di

di ii/k

mandi

non

sottosequenze, sono

degli

n è necessario

Mostrare

che

a risolvere

è rigoroso

tutti

elementi

I

Counting

3

4

5

6

7

8

4

1

3

4

l

4

A

3

6 2

3

4

5

6

C

2

0

2

3

0

1

Igl

è un

variante

del

1

c224v

4

5

7

6

3

l

,

1

2

3

4

5

l

2

4

6

7..8

1

8

2

di

minori

Ne

sull ipotesi qualche

sottosequenze.

2

9

counting i x. sua

allora.v

non

codice

del

richiesti

fornisce

ognuno

degli

I. Quando

n elementi

k

di

input

O n ,1 ordinamento

due

18

Ia situazione

gestire

sort. array

output.

posizione

metterli

tutti

nella

si assume l array

di lavoro

B,

c

nella

che Bl

.

essere

può di

sia

un

viene

Per

in

l input

elemento.v usata

cui

in input. per

esempio.

dell output.

stessa

n

ogni

per

informazione nell array

messo per

la memoria

c di determinare,

Questa

counting

altri

fori

sort

si vuole

COU1i TING-SORT A.

I

che intero

posizione va

leggermente infatti

6

L

3

for

4

C

éSCCll

Cll

f0l18

5

t fori

Ci

se

Questo

alcuni

elementi

.r

ad

1

2

3

4

5

1

2

4

5

7

17 elementi

quanti

schema

deve

cumulata

abbiano

essere lo

stesso

un array

mantiene

A1

l output

..

ordinato

nj e che

lengrl A

e l array

1 to

do

C Afj J

7 t

9

for

10

Ci

Ci j m do

i

8

ourpirr

4i6

8

di

OPIMI

ogni

dove

8,

A l...., -

input

-

di

elelnentr

nelle

posizinne

nell array

B

Se tutti

si pone gli

viene

i ciò

ad

o u-urli

minori

si determina

6-7.

linee

k. Nelle

la somma

determinando

fatto

. l.

..... I. 2.....

i

ciascun

per

C.

dell array

9-11,

linee

ordinata.

ogni

elemento

Aj

sono

distinti.

n elementi

volta

la pri na

allora

che

corretu

sua

B nella

di output

nell array

viene

esiguità

n.

C1

..

/ valore

vada

nella

il ciclo

fa si che

ciò

tempo for

richiede

nelle

linee

3-4

di

solito

Il ciclo

ort

il counting impiega

un tempo

On,

for

nelle

il ciclo

1-2 impiega

linee

for

ad A j ,

A

se esiite.

di output.

nell array

Aj

precedente

uguale

un valore

con

di input

elemento

il prossimo

immediatamente

posizione

si usa

In pratica.

l

il numero

Ci

Ci

ora

il numero

len rh A

nelle

6-7

linee

un tempo impiega

è

l.

0l

un tempa

di el-menti

uguali

a i.

di elementi

minori

o uguali

sort

il counting

si ha

quando

I

nel

On,

qual

il tenspo

caso

Il counting

sort

abbatte

tton

è valido

il limite

Qin

inferiore

fj J

a i. ordinamenti

I

1 n

nel

dimostrato

paragrafo

9.1

perché

quando

si abbandona

il modello

degli

ordinamenti

per

confmnti.

Aj m

illustrato

CjA jj

nella

J

I

ligure

9.2.

Dopo

l inizializzazinne

nelle

linee

I-

.

si

i si insieme proiiiino

di

è On,

l

dosvnto

B C A jj

sort

A

o alinenh.ibl

Cd

ordinai.

1. 2... sono

dell input elementi

degli

Infine,

k

ora

m

CA

countin

$

12345á

temporanea.

C A jjj

contiene

Il

Il

4

8

7

6

to/

do

8

8

length A

contiene e

intero

elementi

posizione. sia

il11

Sl

SORT

COUNT15G

di

finale

ciascun

i per

vi sono

0

j c

C ij

6

7

il numero

l elemento

porre

L array

f

esecuzione

6

5

6

intero

1 tel

do

4

4

eseguito

Quanto 2

5

-,

riempiti.

del

nella

modificato valore,

basa

l a k, per

minori

di r,

3

2

3

semplicemente

On.

direttamente

Sono

si

da

elementi

2

d

sort

di base

4

3

4

r

L idea

S

c

4

èu

in tempo

l 2

b

2

B

FlgU1Q

nell intervallo

7

á

5

4

a

sort

Il coueting

4

3

2

più della

C

9.2

2

soltanto

Qn

questa

combinare

l

la

peggiore,

sottosequenza

di lunghezza

necessari

Suggeri sento singole

costituita

sottosequenze.

confronti

caso

n elementi.

va e più

sequenza all-

nel

ognuna

data

successi

delle

numero

di ordinamento.

problema

elementi

l intera

di ognuna

sul

ordinare,

sottosequenza

ordinare

per

da

Gli

eseguire,

per

contenenti

n eleménti

della

i k elementi

limite

ordinate

I elementi.

Cos ,

ordinare

1 confronti

liste

di

elementi

precedente.

2

due

167

lineare

tempo

in

Ordinamento

con

li clcmcnti

par v r fo.

sta

ordinare. .

Si

ve lrir

l importanza

della

pr priith

diitabilitènel d .

non

ia

Ordinamento 168

Capitolo

457

92-1

Usando

la

sull array

92-2

trgura A

9. I, 3,

7,

Dimostrare

che

come l,

Cova

modello,

mostrare

2, 4, 5, 7,

tea-So

l esecuzione

di

Cousllia-SORT

Si supponga

che

la linea

1 to

lengrh AJ

9 del

ciclo

for

4sv

sse

4S I

436

657

355

657

720

329

451

355

839

della

Covmmc-SoRv

procedura

sia

riscritta

j

Mostrare

che

dificato

è stabile

l algoritmo

verticali

indicano

funziona

ancora

in

modo

appropriai.

L algoritmo

usare

l output

dell algoritmo

Modificare

grafico. sostanzialmente

di A

tenere

per

di ordinamento

COUNTING-SORT

memoria

elementi

gare gli -libero

Descrivere

un

con

per

addizionale

la

stessa

i puntatori

degli

quanti

algoritmo

del

preliminare

l analisi

agli

in

elementi

un

ad A e C.

liste

della

flusso

di dati

l output

produrre

oltre

chiave

sia

su uno

ordinato

Suggerimento

concatenate.

Dov

è un

senza

tutte

colle-

to

posto

un

suo

input

n interi

dati

n interi

e quindi

cadano un

schede

01

a .. b .

On

da

in tempo

nell intervallo tempo

esamini

l al,

esegua

un

a qualunque

L algoritmo

analisi

data

colonna

riga

è stata

domanda

dovrebbe

numerici.

n schede

di

colonne

su

usare

usate

numero

con

e cosi solo

allo a quel

pacchi

si

via cifre ordinameivo

La

3 cifre. via

è l input.

colonna

prima

Le

significative.

piii

I

farro

frecce

lista

la

prochrrre

per

dalla

puo

in

moùo

nrdinato.

messe

da

parie

per

di

schede

di

essere

l ordine cifra

Purtroppn.

ordinare dei

ognuno q eli

bisogna

le.schede

poiché 1i

i

contenitori,

tenere

truccia.

sono

del

blocco.

di

La

comune usato

per

esempio,

Per

giorno.

Si potrebbe

la prima

riga

in uno

di

tre codice

raccogliere

altre

allora

solo

una

di d cifre

due

colonna

alla

numeri

rispetto

in

9

di

questa Si

alle

for

1 to

iusa

do

10

volt .

veda

itra

c ontenitori

procedura l Eserciiio

chiavi

ordinare

le

i giorni. stabile

ordinamento

dove

d cifre,

sul

poi

giorno,

le informa-

e infine

mese

procedura

assume

1a cifra

l è quella

di ordine

ordinare

l array

seguente

La

è semplice.

sul

prima

i mesi

confronta

ordinare

si potrebbero

e

di confronto

funzione

di parità.

e, in caso

anni

gli

Alternativamente,

più mese

anno,

chiavi

una

con

di ordinamento

sort

comprendono

che tre

su

date

il radix

diretto,

accesso

multiple,

che

ogni

più

basso

sull anno. elemento la

mentre

alto.

più

ordinate

il

stabile

ordinamento radi

del veda

i

x sort

viene

per

viene

du

dimostrata

cifra

A sulla

i

I a I-, e I- non

è tropp i

allora

grande,

piii

il tempn

totale

ere

in tempn

uito

il radix

per

sort

è O rhr

4l .

di

tempo

Se

viene

d è cnstante

Se

intermedio, scelto

e k

ovviamente

Ot ,

essere

devono

dipende

esecuzione

di ordinamento

algoritmo

come

usato

del

che

colonne

sulle

induzione

per

L analisi

9.3-3 .

f Esercizio

stabile

ordinamento

devotin cnera

d

un

La correttezza

un algoritmo

loro

con

per

un campo

richiede

modo

abbia

la

hanno

contenitore

d

Raotx-Soat A, 1

usate

occupare

di

confronta

in questo

di ordine

a non

attento

stare

in un

ad

sequenziale

macchina

algoritmo

un

confronta

sort

deve

le schede

se tutte

L ordina-

stabile.

rimanga

l operatore

ma

di informazioni desiderare

eseguire

radix

su

siano

perforata

sono

del

un

per

sort

il radix

opera

come

cifre

ddle

l ordine

anche

è una

potrebbe

A di n elementi

2 Le

con

d è quella

cifra

le

date parità

volte

nell array 12

far

su due

operi

che record

si

l ordinamen-

esaminata,

appena

ordinare

ordinate

per

Quindi

mostra

9.3

figura

è stabile,

onenuto.

calcolatore,

campi.

è che di schede

schede

colonna

ordinate.

completamente

state

3 cifre.

ordinatore

delle

nella

In un

Il

mecca-

quindi

dovrebbe

un numero

ordinare

le schede

contenitore significativa

meno

sono

le schede

finché

continua

cifra

seconda

sulla

di nuovo

è ordinato

con

blocco,

nel

di quelle

1 prima

contenitore

nel

in un unico

combinate

quindi

ordinando

contmintuitivo

in modo

le schede

11 processo

in quest algoritmo un

da

è talvolta

via.

controllare

ciascuna

desiderare

potrebbe

i blocchi

intern edi

di

su

sono

schede

delle

d passate

numeri

essenziale

eseguito

nell intervallo

Intuitivamente,

C iSCre

è stata

cui

Le schede

blocco

punto,

solo

di sette

cosa

zioni

solo

di ordinamento.

nare

su

di ordinare

modo.

stesso

richieste

blocco

stessa

per

ora può

la scheda può

10 righe.

di d cifre

si trovano

e ogni colonna programmata

operatore

le schede

perforata

che

e inserisca

Un

che

essere

può scheda

perforata.

schede

contenenti

in 80

di ogni

sono

Un

di schede

ordinatrice

riga

colonna

l ordin-itrice

ordinatrici

suddivise

in modo

la seconda

in ogni non

di ordinare

problema

con

decimali,

Poiché

macchina

contenitore,

per

caratteri

di d colonne.

una

sono

La

l intero

Quindi

cambiare

k.

macchine

schede

di quale

le schede

le cifre

codificare

dalle

12 righe.

a seconda

sopra

Per

Le

delle

contenitore

messe

usato

calcolatori.

perché

contenitori

numeri

ordi ,amenro

lista

nell intervallo

risponda

0 prima

via.

sono

che

in una

nicamente

di serre

lista

una

cifra

il problema

ne l contenitore

le d cifre

La

che,

preliminare

è l algoritmo

perforata

della

significativa.

e se c è ancora

dei

s dopo,cn

lista

meno

e ricombinato

sort

musei

l

radix.sorr la

risolve

cifra

sulla

mento

nei

839

657

la posi ione

so

Il radix

mo-

prima

che

schermo

Il radixsort

di

mostrano

colonne

2 e cosi

Radia

839

precedente.

for

Si supponga

92-5

436

L

9.3

Leoaltre

le schede 92-4

43á

esecu ione

come 9

355

4gg

t Figura

92-3

329

657

2, 4, 3 .

è stabile.

329

sao

vo

329

Esercizi

9.3

169

lineare

tempo

9

il radix

da

quale cifra

ogni

il counting

ort

viene

lineare.

multi

calcolatore

9.3-5 .

l

sia

8 Iran .

Per

praticith.

sia

d 1 n il tiumcro

di hit.

dove

c/è

unii

cost 1ntc

pusiLiv i.

è

i

170

Capitolo

Allora

se

trattare

come

ogni

consideri numeri sort.

numero

da

un numero

l ordinamento di quattro

Questa

ciascun

di

cifre

con

con

8n

lpi ,

intermedio

tempo

8 ahi 1gn . essere

può

numeri

che

di

2,

richiede

non

64

bic

di

del

un

in loco,

come

se Ia memoria un

sort

che

fanno

algoritmo

come

tipico 1gn

20

usa

il counting

molti

degli

operazioni sort

s

.39

per

4

.26

per

5

come

ordinamenti

in forte

il quicksort.

z

.72

4 s 6 7

.23

a

o .68

g

9

Usando

come

modello

seguente

lista

di parole

EAR.

dei

Quali

TAR,

seguenti

heapsort

la

figura

inglesi

DIG,

9.3,

BIG,

TEA,

1 operazione

DOG,

SEA,

NOW,

FOX.

di ordinamento

Descrivere

di ordinamento

illustrare

COW,

algoritmi

e quicksort

goritmo

un

stabile.

RUG,

ROW,

stabili

MOB,

insertion

schema

tempo

Quanto

R oix-SORv

Usare

l induzione

mostrazione

per

richiede

Mostrare

che

e spazio

sort,

renda

in più

come

che

provare l ipotesi

ordinare

che

interi

il

radix

sort

l ordinamento

presi

funziona.

intervallo

nell

In

intermedio

da

l a rr

Nel

algoritmo

primo

quanti

sono

pmsi

Ai

al-

la

Di quanti

peggiore

per

delle

di schede

pacchi

schede

ordinare dovrebbe

tenere

di

d

in tempo

cifre

traccia

b

.. 9

B0

L arra

di liste

che

Ai

l. Il codice che

e assume

bucket

array

un

vi sia un meccanismo

per liste

su

di base

ogni

e che

di n elementi

array

un

richiede

le operazioni

realizzare

come

descrive

sia

l input

assume

0

..

80

ausiliario

liste.

tali

mantenere

elementn 1 di liste

n Il

paragrafo

concatenate.

diBUCKET-SORT A

stabile 1

n c

2

fori

lengrft A I ton

On.

in questo

presentato

numeri

sort

bucket

ay soddisfi

concatenate

lo schema

punto

del

dell an

do

4

di ordinamento nècessari

10 .

B9.

Il codice

sort,

qualunque

quale

sia

..

A1

in input

TAR,

merge

richiede

L cirro

a

di BuckEv-So .

sulla

BOX,

3 93-5

941

Lesecu ione

9A

B 1 .....

sono semplice

di

r

78

b

Il.2

99-4

.72 l

a

BAR,

93-3

.681

.21

Figura

93-2

23

l

8 .12

Esercizi

93-1

17 l

39 l

6 .94 7

per

da tenere

12 21

2 .17

il radix

ordinamento

l

o

i.vs

si come

usando

B

A

si può

numeri

4 passi

è un aspetto

principale

lo

concreto,

questi

in soli con

radix

memoria, esempio

Trattando

ordinare

approssimativamente

ordina

preferibile

parola n. Come

il paragone

la versione

Quindi,

in una in base

li si può

favorevole

Purtroppo,

stabile

considerazione,

di in base

in modo

da ordinare.

ordinamento confronti

1 milione

regge

tempo

numero

è rappresentabile in rappresentazione

rappresentati

procedura

confronti

ordinare

di d cifre

171

lineare

tempo

in

Ordinamenro

9

fori

inserisci

Ai

Oton-

l

paragnfo,

decimali

nel

un operatore

nel

do

5

caso

6

caso

la lista

ordina

lista

B LnA i J

8i

con

l insertion

le liste

insieme

concatena

nella

81

80.

j,

sort ...,

Bn

sort

su

ordine

l j ih quest

peggiore

9.4

Bucket

Il bucket

Per

sort

sor

impiega

in media

un tempo

lineare.

Come

il counting

sort,

il bucket

sort

la definizione L idea

del

bucl et

di distribuzione w rt

eli dividcr

unii

onne.

l intcrvallu

che

mostrare

in n sottointervwlli

di u

u le

array

un

10 numeri.

di input

di

due

elementi

si considerino

funziana.

quest algoritrno

sequenza

nel

A ij

e Aj.

Se

dimen iolli

.

di

output.

Quindi.

si

deve

mostrare

che

Aj.

Ai

Assumendo

il

ha

contrario.. i 0,1

di buchet

l operazione

mostra

è veloce

Aj 6.

9.4

figura

La

I

n.a i n.d j J J

. CClllli lll ,

Sl

OtSCFVI

CllC

lUltC

Ic

litio

cecclto

la

5

rivhie t0110

Ull

tClllpO

O ll

1181

C l. iO

.. 172

Capitolo

9

in

Ordiiuvnento

Il tempo

peggiore. interessante Per

analizzare

di elementi il

On O n,

il costo

degli nel

O

E

tutti

insertion

il

5 è On, sort

l insertion

atteso

totale

linea

insertion

sia n, la variabile

Poiché

tempo

nella

dagli

sort,

Bi.

I 1 tempo

fn, J .

i bucket

impiegato

bucket

1.2 ,

paragrafo

J

esaminare

per

è il tempo

memorizzati

veda

si E

totale

dell analisi

per

atteso

che

impiega

l unica

gli

elementi

ordinare

tutti

gli

denota

nel

il numero quadratico

bucket

elementi

con

Bi

in tutti

Pr X

Pr di

funzione

P

Mostrare

come

di

distribuzione

una

abbia

01.

tempo

in

lineare.

medio

tempo

con

calcolabile

continua

probabilità

i numeri

X è

casuale

di ir numeri

lista

1g3

.

variabile

una

per una

che

supponga

Si

x.

ordinare

Px

di probabilità

distribuzione

di

funzione

definita

è

i bucket

è allora

Problemi

n-I

n-I o

OE,j i0

valutare

casuale Bi

Q i0

.,

Per

n,

Vi sono

elementi

ed

probabilità

p

la

n

-p

l n

2--

l/n.

delle e

ogni

del

ha

valore

variabile

qualunque

casuale

variabile

cada

nel

vi sono

che

è

En

np 6

con

a.

k segue

l

X, l.equazione

problema,

l insertion

fornisce b.

n,J

Pl

nell equazione è Oy.

Cosi

d.

si conclude

9.1 ,

che

complessivamente

il tempo

l algoritmo

atteso bucket

impiega

e.

sull array

9.4-2

A

semplice

i

dati l,

2,

area

ordinare definire distribuzione

lpt

destro

Sia

T con

di

.64,

.39,

Si

quella

nel

un

le

d imensioiji uniforme

.89,

caso

.53,

.71,

di

lineare

caso

il tempo

peggiore

che

i pur ti

dei

siano

in qualunque

al g dei

x,

p

Progettare

rispetto

loro

bucket punti

di D T

k fon lie

che

i

per

k/2.

Q n 1g n

D T,

adesso

un ordinamento

,, di decisione

casuale

della

modo

equamente

e

per

quinti

1. r

pere

dl

e concludere

che

il tempo

un

rappr

nodidi

il nodo

ha r figli.

una

esenta

scelta

sceltò

ognuno

in

dell algoritnsn.

esecuzione

, ordinamento

confronti

per

in

A cle..

detennini tico

l algoritmo

est endereilmodello

randomizzato B

n

ordinare

per

ti idinodi due e tip

prevedendo

dall algoritmo

atteso

B. Si può

aro

nodo

Un

fatta

qualunque confronti

per faccia

che

per confrontirandoini randomizzazione

durante

prababile che

ne

gestire

R eow

forma

iMosttare

la

e nodi* randomizzati .

ordinario

ordinamento

atteso

T,

per

1gl .

Ql

Concludere

i gi

1. la funzione

/

i

I

l e i nell intervallo

di I-

valore

dato

è mininsiztata

Si consideri albero

i i

e

in

di foglie

i il numero

in RT. un

i

che.

Provare

Sia

il minimo.

raggiunge

Mostrare

1 fog1ie.

I

T con

di decisione

gli alberi

su tuni

i

l.

D LT

D RT

DT

che

e LT

RT

e siano

medie.

esiste

un

p iii confronti

di

8.

zato

rsndotnizz

ue

ese

non

B.

peggiore

unitario,

punto

Sia

T. Mostrare

delle e de

la somma

sia

DT

l foglie.

k

con

albero

T un

ioè

T

di un albero

esterno

T

n

esattamente

l/n

0.

con

di di

minimo

per

Ig k

foglie

le

di essere

probabilità

con

etichettate

sono

che

della

il valore

con

etichenata

sia

di un cammino

lp .

Quale

di esecuzinne

equamente

di A sia

input

degli

A

d etenninistico

confronti

per

che

sia deterministico

confronti,

per

di

atteso

di esecuzione

tempo

sul

permutazione

Provare

etichettate

è Qn

f. nel

che

BLCKET-SOR I

.42 .

sort,

di foglie

Provare

confronto

l operazione

bucket

conserva

cerchio

regione.

n punti

.20,

dell algoritmo

suppongo

gli

illustrare

numero

i

sono

e sinistro

il valore

dk

nel

al

d,

oritmo, x, j

BiicvEt-So n

cerchio.

tali

che

0

uniformemente regione

un

nel

y,

-

.vdistribuiti

1 per cioè.

a.

cerchio

con

tempo

dall origine. in

modn

sia

in

propor

attesn

0

I Il n

8n.

v,l re

per

record. C..

Oltre

l.

o .

al1a

co

n

rray

di

D..ire

un

semplice

inemoria

lineare

festtpo

in

un

di vere

supponga

Si

la abbi

del

in

Ordinamento

9-2

nel

di trovare

probabilità a

0 tr

n.

9.4,

dell algoritmo

r punti ....

figura

di esecuzione

tempo

Siano

la

.13..16,

.79,

modifica

impiega

9.4-3

modello

è il tempo

Qual

di

sottoalberi

di T

elementi

a ad come

opera

ordinamento

ooni

tempo

medio.

Usando

che

casuale.

input

tutte

profondità

/

sort

un

le altre

la lunghezza

DT

Sia

l ordinamento

per

un

l esaminare

foglia

ògni

dato e che

decisione

Esercizi

9.4-1

che

supponga

foglie

c.

sort caso

Si

l

limite

che

di ir input

T . Si assuma

di decisione

raggiunta

e varianza 30

con

1gn

Qn

inferiore

limite

di ordinamento

Si comincia

albero

un

si proverà

algoritmo

medio

rreE caso

confronti

per

probabile.

con

n

In questo

randomizzato.

n palline

indipendentemente

Limi

qualunque

bucket

la situazione

6.6.2

1a probabilità

medio

ogni

Cosi,

0,1 .

lanciata

Cosi

di

elemento

paragrafo

è

pallina bucket.

che

p,

un dato

dell intervallo

palline

qualunque i,

Per

l/n

che

distribuzione

suEL ordinamento

inferiori

9-/

.

questo

nel

lancio

in

la

La probabilità

bucket

E

81

lineare

del

b Ic

l

determinare

è assegnato

cadere

Var n,

l

con

di

deve

bucket.

bucket

binomiale

n,

Usando

edi

contenitori 1/n

p1

j

ogni

si

dell esempio

distribuzione

Var n

E

elementi ad

a quella

9.I

sommatoria,

questa

è 1/n,.poiché

anaioga

*

Una

9.4-4

pane

5.

un tempo

ordinare

per

linea

casuale sort

e cosi

nella

lineare

tempo

fornita

record

i al,.ori mo doli , rr i

d,ti

tu

ordinare

con - non .

te,npo usuri

e c..e a

ihi.

lineare

c..e

. memoria

avedioenirecord

iuntivasenondi

l

costante,

timeitsi ne

-.IC

Suggerimento da

riflettere

lX

la

chi,. vi

.rimdi

b

bit

in

tempo

O lnt .

Giu.,lil c,.tl.e

t,

riipoitu.

l-l

Ill

ll

lCCOld

COll

c.

Note

Si supponga

che

record

abbiano

chiavi

nell intervallo

sort

in modo

che

i record

possano

essere

ordinati

oItre

all array

di input,

Ol

memoria.

da

in loco

l a k. Si modifichi

in tempo come

Suggerimento

il countin

l .

On

si potrebbe

Si può

fare

per

usare. k

e selezione

, Mediano

3

al capitolo

Il modello

ad

Ford

e Johnson

oltre

ai

molte

limiti

albero

di decisione L ampia

72 . inferiori

varianti

del

basati

sulla

ordinamenti di Knuth

teoria

modello

ad

albero

di

confronti

per

fu

suli ordinamento

deil informazione,

dell ordinamento.

problema del

generalizzazioni

studiare

per dissertazione

descritti

Limiti

inferiori

decisione

sono

introdotto

in

sugli

capitolo.

questo

ordinamenti

che

ampiamente

stati

da

comprende.

123

usano

studiati

da L i-esima

BenOr Knuth

combinare

meno di

attribuisce

il counting

significati

macchine

questo

metodo

perforatrici da

a H. H. Seward,

E. J. Isaac

sort

a sembra meccaniche si trova

di schede. e R.

C.

con

che

sia

iI radix

fosse

ordinatrici in un Il bucket

la progettazione

un

algoritmo

di

schede.

documento sort

sort.

è stato

del

del

L ordinamento noto, Secondo

1929

usato

counting

sort,

radix

già

ampiamente

Knuth

la

di L. J. Comrie sin

dal

1956,

sort

quando

nel

1954,

rispetto usato

prima che

alla da

l idea

massimo

cifro

elemento

è l i-esimo

di n elementi

insieme

di un

base

dell

su

fu propo ta

di ii. i mediani

cadono

evitare

di considerare

due

Singleton.

capitolo

Questo

fatto

un

Il problema i numeri

Nel

due

limite

10.1,

del interesse

sono

NCIIJ

lè Ilt, 111 , i

/l.

N I 1l

più

l 0.2

nel

caso un

empo

si possono

ordinare

l i-esimo

elemento

indirizzare

etf cienti. iI minimo generate,

un

analizza

di A.

I elementi infatti

selezionare

algoritmo

viene

un di

un algnritmn caio

nel

affrnntnto

raggiunge

che

contiene

Oi

di esecuzinne

di un

e il teassimo che

pratico 10.3

Il paragrafo

medio.

segui

come

i

1gn

di

valori

n.

i

di selezione

di

è il problema

raggiunge

che

A1

i

niin

2

fnr

necessari

ottenere

1110llltlltO.

AI

teorico

confronti facilmente

puo

algoritmi

Il paragrafo

Or

semplicemente

il problema

di esecuzione

di n

iebbeflC

peggiore.

e massimo

IVIinimo

Quanti

e poi

I

altri

in tempo

risolto sort

interessante

paragrafi. tempo

ittiiente

contenga

l insieme

formalmente i, con

numero

di esattamente

grande

comunque

si esaminerà Più

successivi O ii

distinti è più

in cui

specificato

e un

pubessere

sono

L A1CO

distinti.

numeri

contenga

situazione

alla

essere

pu5

o il merge

Vi

di elementi.

maggio

10.1

selezione

l heapsort

paragrafo

esteso

da un

elemento

l i-esimo

l insieme

che

essere

A che

OlllC

si indiche

caso.

in questn

di selezionare

selezione

x e

di output.

insieme nei

della

della

usando

dell array

per potrh

I t

la

. i preferisce

/2.

comoditè

A di n numeri

insieme l elemento

Output

i

e i

n è pari

sia

qualunque

sempliciù

I. Per

1 /2

di

l ll- . Qua o

n

1. Quindi.

n/2

e in i

n/2

1 12

I s

il problema

risultato

Il problema

Input

in i

quando

inferiore

Si assume

qualunque

ripetuti.

in i

affronta

distinti.

elementi

il mediano

cadono

mediani

indice

di

quello

che

mediani,

in i

cadendo

è unico,

e il

I. i -numero

è il

informalmente.

Il mediano,

n.

i

n è dispari.

Quando

due

parità

mediano

d ordine

piccolo.

più

d ordine

statistica

è la prima

di elementi

insieme

statistica

insieme.

vi sono

n è pari.

le macchine

di un

è lenii-esima

mezzo

operatori

pubblicazione

descrive l idea

sia

il minimo

esempio.

Per di

d ordine

statistica

23 .

un

pt-OCCCllll ,l

A

tl 1

i m

2

/

t

I rtglhJr

per

limite

ic.gllClltc.

il

deteimirnre ugu,le

superior,-

M

llSCLI111g

cllC

in

minimo

l confronti

a n

I

lllslCI11C

ut

di

insiClllc

n

I lSlCCf 1

ill

Ull,llT,l

Si

elementi .

n,.ni

si esamina

elemento

A.

ClO

3

do

if min

A

then

4

5

return

J

10.2

min

m

con

Selezione

Ai

min

11 problema

Ciò

in modo

è quanto

minimo,

di

si può

analogo

meglio

del

partita ogni n

in cui

elemento 1 confronti

torneo

due

elementi

piccolo deve

1 confronti. tra

1 confronti. determinazione a un

Ogni

confronto

è ottimo

Mtwwuw

è una

ricorsivamente

è che

entrambi

cruciale sono

Quindi,

partita.

dell algoritmo

rispetto

l array i lati

della

necessari

Questa

differenza

al numero

di O n

Ign ,

eseguita.

è la valutazione

dell analisi

Il Problema

richiede

6-2

di

del

numero

mostrare

che

di volte

medio

che

la

Quindi,

è

tamenta

medio

numero

questo

risalta

8 lgn .

e massimo

l In

atcune

applicazioni,

elementi.

Per

insieme

di dati

ogni

da inserire

Per

far

sia

ciò

il minimo

grafico

programma all interno

di uno

il programma

deve

che

aver

può

il

rettangolare

schermo

determinare

prima

in

massimo

un

insieme

di rappresentare

bisogno

o di altri

è troppo

difficile

di n elementi mente

usando

trovare

ognuno,

massimo.

un

totale

sono Per che

analizzare

correnti,

con

un

confrontano

i due corrente

solo

il massimo

ottimale.

Basta

semplice-

n

usando

1 confronti

di due

confronti deIla

per

con

grande

elementi

minimo

de ll input

simultaneamente

con

input,

il massimo

si anaIizzano si

quindi

un

e il

il più costo

ma

incontrati,

k

5

ifi k

in coppia.

Si il

con

piccolo

p,

7

else

return

R xoos izeo-SeLzcv A,

q

aver

eseguito

partizionato .. q

Ap

sottoarray

Ap

..

q

e Aq

I ..

si trova

desiderato

I elemento

nella

sottoarray

nI più

Ignl-2confronti

nel

caso

di n elementi

trovare

Sicggerin ento

peggiore.

essere

può

con

trovato

anche

elementi

..

di A g

I ..

r,

che

viene

l elemento

elementi

più

che

il minimo sono int1uenzi

che

sono

necessari

il massimo

questo

calcolo.

confronti

di n numeri. i

potenzia1mente

I 3nl21-2

massimn

o

per

trnvare.

minimo

caio

consider Ire

5t ggeriinento

il

nel

e

analizz ire

pe quanti

come

un

L algoritmo

della

1 .

r

La

linea

1 .. r .

nessun

puo

ottenere che

opera

già

k valori

cercato

piccoli

più

essere

potrebbe

nel

un

su un arruy

input

superiore di input

provoca Tn

ca.,o

sul

co,me

di A p

1-

più

piccoli

medio

anche sempre

caso

nel

pero,

del

il comportamento

di n elementi,

alto

lato

elemento

partizionare

bene,

tempo

sul

è 8 n- ,

peggiore da

sfortunati funziona

L al oritmo

particolare limite

cosi

selczion i

vamente

de

DA

7.

linea

nella

ricorsivamente

.

i

Se

elemento

l -esimo

è l i

desiderato

dei

in quale

si trova

dell i-esimo

i

algori m ,-,l

piccolo.

ricorsi

desiderato

1

eleinento

ogni

4dell

più

e viene

partizione

/-. l eleincnto

che

.

Atp

l array

3, tali

determina

quindi elemento

l i-esimo

basso se i

l elemento

q

rimasti.

grandi

r ndomizzato,

SEi.arr.

si

perché

piccolo.

Mostrare

.. qj.

linea

nella e Aq

qj

di RA oowizco-Srircv

di esecuzione

minimo,

Si

10.1-2

..

si trova

sul iato

si conoscono

Poiché

Il tempo

piccolo

.. 1-

k

1, r, i

di A q

Ap r

6, Invece,

linea

Ap

elemento

ad ogni

nel

k di elementi

vuoti

non

sottoarray o uguale

è minore

sottoarray

il più

piccolo

iei

Al

dell array

q, i

Ra oowizEo-P Rvmow

l algoritmo

in due

Esercizi

elemento

più

e

Il

casuali.

numeri

t

p,

R oowzeo-SEceer A,

Aq

il secondo

il suo

l

return

partizione.

che

elemento

S.- . paragrafo compùr-

nel poiché

di

generatore

l i-esimo

then

gli

Mostre

un

di

introdotta

irto randamizzato,

algoritmo

per

coppia.

10.1-1

partizione.

di esecuzione

medio

è Bn.

6

dal

confronti

di tre

tempo

un

Ap

q-p

il numero

e il massimo

elementi

gli

confronta

con

corrente.

via

il minimo

della

per

il minimo

via

e massimo

confrontandolo

elemento, in

coppia

trovare

per

rieorsivamen e

anaIizza su un lato

i

RANDOMlZED-PARTITlDN A,

di

che

il minimo

asintoticamente indipendente,

modo

confronti gli

elemento

e il più

sia

q-

4

Dopo

3l n/21

ogni

elementi

Qn

in

trovare

possa

return

then

3

dispositivi

2 confronti.

si mantengono

costo

che

di confrnnti

di 2n

ciò,

piuttosto

algoritmo

e il massimo

sufAcienti far

un

un numero

il minipo

per

In reaItà,

ideare

ha

partizionare

ifp r

2

un

e il massimo

il minimo

i

di

in scala

coordinata.

Non

minimo

un

x, y

di output.

grafici

trovare

bisogna

esempia,

I,

p,

che

soltanto

niodelk

stesso

è di

l idea

quicksort,

Ib oowzao-PAn

restituisce

lo

segue

il quichsort

è un

divide-et-imper

algoritmo

quicksort

lavora

dall output

parte

RANDOlvllZED-SELECT

simultanei

dal

laddove

ta procedura

in

il

per

diversamente

RANDOMIZED-QUICKSORT,

RANDOMlZED-SELECT A.

1Vlinimo

Come

di R oownzEo-SEt.Ecr

usa

è determinato per

8.

nell analisi

un

esecuzione

di

tempo

un

me

di troi

problema il

R rlooveeo-SavEcr

RAxoovtzeo-Set.acr

medio

il tempo

come

codice

ma

di input,

semplice

problemi

si presenterà

paragrafo,

Capitolo

partizione,

RANDOMIZED-SELECT

raffinamento

4 viene

del

quicksort

i

entrambi

L a1goritmo

selezione.

del

difficile

più

per

In questo

8n.

della

il problema

per

algoritmo

appare

selezione

sorprendentemente,

è lo stesso

asintotico del

Si pensi

L osservazione

una

e l algoritmo

il minimo,

n di

elementi.

gli vince.

almeno

perdere

con

il problema

per di n

a un

dei

il vincitore

poiché,

inferiore

come

minimo

determinare

per

Si,

limite

il massimo

anche

eseguiti.

interessante

linea

un

il più

eccetto

di confronti Un

del

torneo

trovare

fare

si possa anche

ottenere

la determinazione

per

si può

della

generale eppure,

minimo, Naturalmente,

lineare

medio

tempo

177

e sele-ione

Mediano

richiesto

ntedin caso dálla

Si è osservato,tel

serque.

pe

p,r

tri

are

u,

u,do

-.

e p ..iiir . R ia i p ir -r

i

iorc. numeri confl OlltO

elemento

cnn

prohabilith

2/n

c i elen enti

con

prohabilith

l/n

per

i

2.3....

n

l. Aii i i

A AI

Mediano

che

Tn

nel

senso

Cosi

sia

monotona

che

l i-esimo

crescente,

nel

elemento

deve

caso

Ib

peggiore

essere

xteMtzeo-SFt.Ecr

determinato

sul

lato

più

è sempre

sfortùnata

della

partizione.

grande

179

e selezione

Esercizi

si ha 1a ricorrenza

10.2-1

Scrivere

versione

una

iterativa

di RwwDowtzco-Szwcr.

n-t Tn

T msx l,n-l

T max k,n-k

On

10.2-2

Si

kl

supponga

di

dell array

A

provachi

una

n-l Tjn

l

2

Tk

g k

k

seconda

10.2-3 On

.

Si ricorda

che,

partiziona

il sottoarray

tali

f n/à

riga

max p,n

segue

dalla

fk

gc

k

n

prima

max 1,

perché

se

k

n/2 ,

se

k

f n/2

n

1

n

l e

che

n è dispari,

ogni

sommatoria, due

mentre

volte

prima

Tl

è limitata

poiché

assorbito

dal

Tl

se i è pari,

e il termine

riga

seconda

n/2

Tn

1

n/21

caso

termine

T si

1 ....,

I

Tl una

dalla

peggiore

n/2

termine

compare

superiormente

nel

n/2

1,

volta.

In

sommatoria I

Tl

entrambi

e cosi

I

-1

T

i casi,

i olte

due

2 ,,

sostituzione.

per

le condizioni

iniziali

della

La

il termine

l/n

terza

riga

Ti

Come

dalla

ck

una

Si assuma

ricorrenza.

che

Tn

Usando

cn per

l ipotesi

costante

qualche

induttiva,

c che

buona

modo

k

I

I

2. k

On

da

1

I- 1 , ...

gli

costituito

Trova

..

sia

q

R r oowizEo-P Rmto

non

vuoti

o

uguale

minore uguali,

caso

.. q

Ap ad

la procedura

1 .. rl

e Aq

ogni

in

elemento

i

RwxoowtzEo-SELE

peggiore

di input.

Usa

S cr

Partiziona

L idea

di base

input

Sa veda

si

l elemento

l i-esimo

elemento

più

Ecr

usa

un

di

l algoritmo

p rin

modificato

al quaIe

di

piccolo

p tr-

è di garanrir

8.1 ,

attorno

peggiore.

tramite

pero,

il paragrafo

perno

nel caso

desiderato

dell algoritmo.

pmizionato.

quicl sort

è 0n

l elemento

partizion c.

array

di

di

input

passi.

dell array

di input

in l.nl5J

rimanenti

n mod

5 elementi.

di ognuno 5

di esecuzione

trova

del di

determina

tempo

Sa.Ect

viene

l array

parametro

dai

al più

il cui

PwRTittow

n elementi

il mediano

3.

Qn

r/5

degli

di ogni

di 5 elementi

gruppi

ordinando

I gruppi,

con

l insertion

I n/5

I mediani

un

e al piii

ciascuno

sort

elementi

gli

gruppo.

ricorsivamente l array

il numero Usa

Sia

SEcerr

attorno

l il numero

di elementi

l.

sul

analizzare

di elementi c sufficientemente

grande

in niodo

che

c n/4

1/2

domini

il termine

piit

trovare

metà

mediani. usando

lato

basso

l i-esimo più

ili esecuzione

Alnieno

sul

elemento

della

elemento

piccolo

di SELECT,

dell elemento

grandi

x degli

dei

trovati

una

versione

partiziane,

cosi

al pass6 nsodificau ii

che

Asia

alto.

per

I -esimo

il tempo

calcolo.

questn

l i

il mediano

al mediano

di elementi lato

ricorsivamente

oppi re

trovare

per

di input

Oh

Per

scegliere

di selezione

i seguenti

Divide

4.

rn,

si può

che

delI algoritmo.

peggiore

la procedura

sottoarray

elementi

nel

quando

SEiecT

gruppo

i

poiché

uguali,

in due

Ap

presenti

dell array

eseguendo

sono

5. j

r

l algoritmo

come

prendere

di PwRTITION.

l

..h

in

sono

deterministico

che

-

C

minino

di partizioni

I

,. - , I 1

-,, cn

g l

..

lineare

suddivisione

si ha

1.

In/21-

Se

un algoritmo

ricorsivi

essere

i9 n

gk

caso

sequenza

correttamente

ora

tizionamenti può

n/2 n-l

r.

R oo iIZED-SELECT,

elementi

g I

e1emento

in tempo

Si esaminerà

dell

segue 1

Selezione

L algoritmo

n

di elementi Ap

nell

n-l Tn

del

quella

una

compare

la sommatoria

seconda.

della

O n- ,

n/2

compare

On.

la ricorrenza

Descrivere

.

I, Tl

ogni

1 .

tizionamento

Si risolve soddisfi

termine

in presenza

ogni

funziona

10.3 Se

come

prestazione

l elemento

selezionare

per l.

0 ll

y

Aq La

R xoowttzEo-Sat.Ecr

2, 9, 0, 7, 5, 4, 8, 6,

n/2

n-I Tk

usare

3,

mediani

più

lato

si determina

partizionante.v. dei

sul

trnvati

alto

un limite

La

figura

al

passo

sul

piccolo se i

lato

i

basso

l. sul

inferiore

10. 1 è utile per 2 sono maggiori

numeri

visualizz rc o

u

u li

On. Cosi essere

l i-esimo determinati

elemento in tempo

di un

insieme,

lineare

nel

per caso

qualsiasi

i. e in particolare

il medi

ino.

3 etementi

piii

poscon per

medio.

5. e quel

di e cernenti

j

I

grandi gruppo

piii

graiidi

di r,

di s i almeno 3II

I.

eccettn

contenente.r

quei stessn.

gruppo

che

Detraendo

hws eno questi

di 5 elementi due

gruppi.

si n non segue

che

è divisibili il ilUtllCI O

Capitolo

181

e selezione

Mediano

180

iO

Esercizi

10.3-1

SELacr,

Nell algoritmo

10.3-2

Sa.ecr

Analizzare

10.3-3 Figura

10.1

n

Analisi

o

on.x.

dell n

recce

co

i anno a

minori

algorinno onnà.

.Il

elementi

ddagli esrra

a

i.v.

SEt.ecr. me d iano

di

n elementi

gg ioridixe3d .

x sono

su

un

sono

ra

g ru pp oèb bianco pii picco ai ii iccoli i

grandi

più

ixsonoma

i elemenri

Gli d io g ni

3 dei

fondo

resen

caso

nel

e il mediano

dei

mediani

è ericherraui

ari

si tisrra

di.v i v

di

ogni

alla

gruppo

103-4

SELECT

peggiore, Si e

di

elementi

grigio.

è chiamata

ora sviluppare può agoritmoSELECT.I di insertion

e i

passo

noti

che

rie

al più

tempo

6

n per

t

2e4e

di dimensione T 7n/10

in

6 ualun

.

Tn passo

Il

Il

assumendo

che

input

que

6 elementi

On.

01 ,

6.

Perciò.

T n/51

Dimostriamo,

er sost tuzi 80e

n c

6

pe

2 consiste

Sia

un

dato

mediano,

che

richieda

algoritmo

con

tempo

di i Ohi n

zi one,

che

costante

qualche c 7n/10

n/5

il tempo

n

80,

se

n i

pp.

T sia 80

crescente.

monotona elementi

que

Si tem

richiede

6

è lineare. lat

selezione

della

semplice

un per

o I k-esimi

qualun-

d

. S iassumac d

un

di

quantili

un

Fornire

stessa

della

in k insiemi

ordinato

i k-esimi

elencare

per

di

l elemento

con

al più

o

1gk

On

tempo

con

algoritmo

dimensione

dividono

che

1 elementi

i k

sono

di n elementi

insieme

quantili

insieme.

di un

nel

peggiore.

iI problema

risolva

il

trovare

per dia

Si

i.

differenza .

di esecuzione

c. Sostituendo

che

caso

nel

lineare

tempo lineare

chiusa

a scatola

cioè

sottoprogramma

3

di al più

se

nessun

eseguire

senza

più øli

anche

trovare

possono

grandi

più

black-box 10.3-5

10.3-6

On

i elementi

si

confronto.

eiore r

la ricorrenza

ln/10

n

e gli

che

elemento

l i-esimo

trovare

per

Mostrare

piccoli

più

solo

n elementi.

5.

caso

lpi

On

caso

nel

al passo nel

di

insieme

un

1 elementi

l insieme

-P Tn

7nl10

3nl10

di esecuzione tempo

81

p

al più

iil te tempo

richiedono

e che

20

ottenere

quindi

perer

su insiemi

iede

7n/10 i può

so

su

ricorrenza

confronti

algoritmo

un

che

Si supponga piccolo

x è almeno

di

ricorsivamente

una

p assi i, l

chiamate

minori

usi

dei

peggiore.

u teriore n umero

i

che

mediano

in tempo

sia eseguito

ilquicksort

in modo

da aciosipuòvedereche3dei5ele ci nei ri

5 eleinenri

i Analoeamente,

fare

impossibile

come

Mostrare

che

se n 2 38.

f n/a

di x è almeno

minori

di elementi

x e il numero

mediani

del

maggiori

di elementi

mostri

Si

3 elementi.

di

sono

i gruppi

il numero

che

mostrare

per

se

lineare

in tempo

funziona

non

SeiEcr

se

lineare

tempo

in

funzionerebbe

7 elementi

di

fossero

i gruppi

di 5. L*algoritmo

in ruppi

divisi

sono

in input

elementi

gli

h e T nj cn j

11a ricorrenza

si ottiene

10.3-7

intero

e un

On

con

algoritmo

un

Descrivere

k

positivo

sono

in S che

i k numeri

distinti

S di n numeri

insieme

un

dato

che,

On

tempo

n, determini

at mediano

vicini

più

di S. cn/5

c

9cn/10

7cn/10 7c

6c

On

On 10.3-8

ssi può uo

scegliere sci

e sufficientemente

funzione

descritta

dal

peggiore

è quindi

lineare.

termine

On

rande per

ani

n

80.

in modo

cb e c n /10-7

Il tem

po di esecuzinne

sia

ma

di Stitica

fiore nel

caso

10.3-9

negli neroli ordinamenti ordi il parao ra f o 9.1., , si veda S ELECT e R sDowizt nper confronti or , determinano le informazioni sull ordine ine re I ativo tra elementi solo attraverso . cnnfron-r t , tti.. Perciò, er il comportamento lineare non risulta u a daa ipotesi i sull input, nel c ii come accade eegli algoritmi di ordinamento del Capitolo 9. . L or d inamento richiede tem leiii o On ne nel opera

Il

per

confronti.

presentatonell introduzionediquestocapitolo,che e e cimento, è asintoticamente

anche

in media

d a il Prnblcma

s r

inetficiente.

d

9-1 .

c perciò

per

negli

elementi

i 2n

algoritmo

un

Fornire

ordinati.

gih tutti

fra

il mediano

trovare

un

il nictocl . -. .c

petrolio

mostrato

bella

scegliere

il

lùn.hexza

c

con

direttamente

determinato

consulente

è

Benzolo

professor

progettando

Come

che

O lgn

di n numeri,

arr6y

due

e Y 1 .. n

n

X e Y.

array

della a

SELECT

modello

..

tempo

con orche poiché

X1

Siano

cn,

grosso

n

pozzi.

al

condotto tigura

ogni

Da

tot ile

dei

in

ten po

lungo

l0. 2.

conctntli lineare.

le

D te clel

compagnia

condotto

più e

y

dei

che

il

luo

nord coine

pozzi.

che o

connesso

essere o

quelto

princip le Miistr tre

breve

ottimale

di

campo

un

deve

laterale

sta

che

petrolifera. attraverso

ovest

a

il cumntino

coordinate.v

condntto

Inter ili

est

da

va un

pozzn,

principale

ottimale

luogo

una

presso che

oleodotto

o sud . si

conse

dovrebbe la

minimizza pu

essere

e

algoritmo

il mediano

calcolare

come

Mostrare

m

un t

con

di ri elementi

pesato

càso

nel

O n 1gn

l ordinamento.

usando

peggiore, c.

il mediano

calcolare

come

Mostrare

b.

l83

ne

per

.- -i . -.

SA

ci,m

lineare

tempo

un

abbia

nel,--u

On

in tempo

pesato che

il mediano

trovare

del

paragrafo

10.3.

con

p

p ...,

p,,

postale

e.

Fieura ge

10,2.2 .

vuole

determinare

. posi-ione

la

o e e oleodotroeo dell

eesr-ovest

otro

che

minimi

i la

hmghe-.a

a e b è d a,

Trovare

la soluzione

b

.c

Problemi

Dato

un

insieme

ri m mo i

b.

Costruire

c.

sara

i

miglior

s

zio

ed

i

con unn

Mediano n elementi

il mediano

W,.

su

grandi

trovare .

confronti.

tempo

che la sequenza

Trovare

l al o

di esecuzione

cod

t

d

dei

p iù

oritmo

asintotico

che nel

realizza

caso

oonuno

e fiore

un

Descrivere

a.

U

1

fra

dei

n elementi.

a

i numeri

ed

i nu meri

Cl B lati

. oritmo e ordinare

gli

una

coda

selezione gli

i

dove

pper

i numeri

più

e ch am I

x,

x....,

x x

c on

ch

usi e

contronti

U, n

priorità trovare re

l -i-esimo

numero

più

grande.

. quindi

sull insieme

b.

Mostrare

che

Ui

c.

Mostrare

che

se

i è una

che

se

13-

per

trovare

n

pesi dd isfa

v,

positivi le seguenti

w,

...,

v

tali

i

Note

2

al

l. algnritnao

p rtiziona

.tl

elementi. Dedurre

che

il mediano

di.-, i.t,,

x ......

x

è il med

, 1110 pesato

degli

XE

COll

numeri 8

si puo

realizzare

una

meno

eonfri r. .

nel

diversa .-o

pracedura peggiore.

elemento

l i-esimo

più

piccolo

il piii

tra

disgiunti

di o ni

elemento

piccolo

si

coppie.

riapp ichi

ri-

ioppia.

allora

costante,

2, allora

/

ii

Un Un

0 lgnk

n

0 T Zn/k

nel

caso

1.

capitolo

Floyd

a.

i

notazion

che

disuguaglianze

w

g

tra

dd

1g nli .

O T 2i

per

1 m mo

na. s ta

in ten po

il mediano

lineare

peg

e

A.,

e

x y,

.

confronti

fnl2J

grandi.

Mostrare

a

i punti

2i,

n

contenente

corsivamente i

con

l i-e imi

trovare

per

altrimenti

T 2i

cominci

esegua

ma

se

si

I VOltC.

d.

è l elemento

che n/2

U i/2

Stiggerime iro

-ivi E, XTRACT-iVIAX

SIC

a 2 dimensio-

po. td tra

1

la costante an,

relativamente

grandi.

più

con

i

x

selezionare ma

,

sonoprogramma,

algoritmo

uf io

dell

e la distanza

y x,

per

8

Tn

i è piccolo

un

b

SELECT

j Tn

e di i .

pesato distinti

pesato

di

elencare

da

mostrato,

come

SeLEcr

usi

pn/2 tutti

izionare

10-2

asato

i con

rg inare

Q

piiè

si desidera

e o

itempidi g

i nwneri

di n numeri,

B,

Per

degli

tra

piccoli usati

Quando

grande.

piuttosto sequniza

efementi

x,

d a,

Manhattaii

è stato

come

soddisfa,

l uAi io

are

la distanza

reali

nume

collocazione

della di coordinate

le coppie

di confronti

T

Il numero

La

di

Sele-ione

non oe

p, .

ùi mai

il probi.ma

semplicemente

sono

i punti

il problema

è la distan a

y,

per

p.

somma

b.

a per

soluzione

è un ottima

in cui

b

minimizzi

P p

punto

a e b.

punti pesato

sono

i punti

in cui

10-3

10-I

a una

i punti

ni, c Si

il mediano dimensione,

che

input

in

la

S o m

covare

desidera

Si

lV

wp- -.

come

è definito

postale Ù

1j

quelli due

che

Spiegare

d.

di tra

è la distanza

b

associati

pesi uno

necessariamente d a,

dell uffieio

co11oca -ione

della

Il problema

pesi

n

I/nn perer

À

e Rive t a orno

f70j

hanno a un

sviluppato

elemento

uria

selezinnato

versione

con

ricoriivan ente

medio

tempo da

da

iarda fu progettato

un

anche

piccolo

migliore campione

Blum,

che degli

Strutture

Introduzione

di dati

fondamentali

sono

insiemi

Gli

insiemi

algoritmi

Gli Per

operazioni Per

le

otfrono

heap,

che

operazioni

di che

quindi

dinamici.

chiamati

e manipolare

Altri

algnritmi

inserzinne

di modo

iiie

operazioni

realizzare

dinamico.

ogni

queste

complicate. di dati

struttura del

piccolo

più

dipende

dinamico

insieme

un

offre

più

estrazione

e di

elemento di

cancel/are

e

della

contesto

7 nel

insiemi.

sugli

che

dinamico

richiedono

un

uire

in

di

insieme

Capitoln

nel

da ese

possibili è Un

insieme.

il miglior tornite.

essere

devono

della

solo a un

introdotte

priorità,

operazioni

È chiaro

elemento. dalle

con

le code

esempio,

ionario.

di

un

per

gli nel

possono,

rappresentare

di operazioni

tipi

diversi

necessitano

l apparreneii -a

è chiamato

di base

tecniche

algoriuni

saranno

insiemi

Tali

modi.

alcune

alcuni

algoritmi

molti

e verificare

manipolati

Mentre

i matematici.

per dagli

finiti.

richiedere

possono

esempio.

elementi

in altri

presentano dinamici

insiemi

calcolatore

sul

capitoli

cinque

I prossimi

lo sono

quanto

insiemi

gli

o cambiare

contrarsi

crescere,

tempo.

immutabili,

sono

matematici

informatici

gli

per

D

In

campi

i cui

oggetto

che

non

dei

campi

si

l

pensare

può

dalle

nell s

modo

su

operazioni

un

che

insiemi

del questi

a un

altri insieme

campi

lo

che

come

occupano

realizzazione

Alcuni

primitivi, chiave

campo di amici

insiemi

satetlite,

dati

contenere nessun

sia

dell oggetto

di dato

tipi

come

campi

anche

avere

non

mi

del oggetro

pun

c tiare.

valori

di

dati

contenere

tutte

sono

le chiavi

Se

identifica. insieme

campi

posarono

dinamici

insiemi

oggetto.

di programmazione che assumono

in ambienti

e puntatori

di a getti

all

puntatore

che

o puntatori

un

da

è upprescntato

elemento se si hu un

e manipolati

esaminati

la realizzazione

l i contengono

agli

insieme

essere

possono

l I discute

Il Capitnlo

un

di

realizzazione

tipica

una

dinamico

insieme

un

di

Elementi

uno

diverse,

L oggetto

può

utilizzati

sono sono ad

in

manipolati altri

oggetti

nell insienle.

.

Capitolo esempio.

o

Vn di

totale

nrdinamento parlare

del

prossinw

permea i linwnlv

cli del inirc piii

.. .rande

el ,cnto

il mininu di

un

da

elcmcntn

dell insien e, in

un

per insieme.

18á

Parte

llI

Operazioni

Le

su

su

che

che

insiemi

insiemi

modificano

l insieme.

SE RcH 5,

k

Un

ad

IvseR S, da

x.

valore

SuccsssoR S,

x

un

più

che

inserisce

che,

nell

per

un

I capitoli

dall

realizzare

insiemi per 7.

un

l , restituisce

tale

elemento

i

non

alla

dato

un

insieme

totalmente

un

insieme

ad

un

elemento

che

S che

dato

un elemento

il successivo

ala

elemento

che,

S, restituisce

dato

un

elemento

il successivo

cui

chiave

più

grande

x la cui

elemento

più

e PREDECESSOR n chiavi,

una

che che

può

su come

estese

MnuiMt w

in modo

ordinato.

insiemi

è

di

argomento.

fornire

una qualunque n in tempo O lgn .

di cardinalità

spesso

chiamata

del l insieme

è fornita

sono

esempio.

operazioni

insiemi da

svariati

CBpltO

lo. O.

misurato

in

descritte

chiavi

a

termini

intervalli

non

1 chiam te

il Capitolo

15

descrivono

dinamici problemi.

molte Un

alcune di queste altra

strutture

di

saranno

usate

imponante

dati

che

in seguito

struttura-Inheap

possono per

a

della

14 descrive

precedentemen-

essere costruire c stata

u,.-ate al

presentata

o.

per

oritmi

i

nel

essere

8n

agbia

come eià

seguito

uire

.

un

i

è

hash

YSER

dizionari

dei eww

per

tabelle

e e

e

elemento di numeri

na

p di un reali.

19

i mecc loro . istruttivo

i o. e

sc nnatutteleoperazioni

operaziiine ne

ogni

i

erv

di ricer.a

binari

rie nc

co-trui

di ricerca

binario

a Gli i alberi

.. o

o

apito p peggiore

su un albero

uht

anismi

de li

insieme

senza

roprieth

te.

Prima

di chiavi. vi. q uindi

albe o 0

i

K

Q

a

.inno

RB

i mec snis

studi e

c. li alberi temn

di

tipo

dare areun occhiataalcodice

o e

alberi

era

L n a

peggiore.

altro

o

no.e rnnose

o caso

nel

redenta

apito

ne

introdotti

sono

di ricerca.

binari . binari.zlialberiR bin

, poo O len

Benché

molto

o,

P

f

contesero.

ia. ..-.puo

a

j

in que1

Tutta u

in S. o xiL se

con

-a

o

nel

alberi

de li

B

OAo

QZ o

t

aie.i

appartiene

i

qua

p artedelcapitolononrii

caso

Yele

è 0O1 gnn. .

di ricerca

alberi

a un

in S. o wL

chiave

c puntatori

iorniscono

di dati.

i itolo

parte

l f al

ma

operazione

restituisce

appartiene

piccolo

seguita

solito

Per

delle

agli

n elementi,

strutture

da li

. .amen

i m che,

,gc qu.i

le operazioni

tempo

sulle

,

restituisce

p

ordinato

un

affrontati affro

o ra. sopra.

variante S

sono

elencate

ogni

per

altre

molte

grande.

interrogazione

di

medio

. che

di ricerca.

elemento

a un

puntatore

ordinato

totalmente

binari

Gti i alberi

iil tempo

un

iare

o rniscono

e

è richiesto

er le ope o erazioni , ma la mag ior i

probabilità,

puntato

realizzazione

dinamici li insiemi su con 8 n n su un albero

x

puntatore usa

p

l areomento.

S l elemento

necessari

sulla

fami

essere

s P

oggetti ---

o

Cg

-, programmazione

c

hash,

peggiore, re,

medioperle

il tempo

di

dati com.m

moscato

anche

programmaziane.

le tabelle caso

Nel

Viene

dovrebbe

materiale

presenta

basa

iienti

alla

.. jQgQfQfQQQQ$ffQQQfLdi

i p

eri radicati.

in

introduzione o 1

, m

.,

li

eseguire un operazione

III

di

corso

a e al

di questo

e S

piccola.

più

elementi

gli

di dati

della

realizzati

Molto

i-e l i-esimoi

insieme

insien e

essere

pito

chiave

se

insieme x

operazione

questa

su

ordinato

dell insieme,

struttura

Capitolo

wtc

nell elemento

modifica

noti

su

Successo

elenca

tempo

efficienti

valore

minimo.

Per

cardinalitè

Sommario

S e un

l , oppure

che

S. restituisce

Un

interrogazioni

Successo

un

specifica

per

x

x è I elemento

un

Si

Un interrogazione

totalmente

distinte.

di mochfica.

Qualunque

concatenate

primitivi.

realizzate.

massimo.

insieme

te su

di S.

ordinato

PREoEcEssoR S,

una

da

la chiave

totalmente

è l elemento

possano

interroga-

inizializzati.

la chiave

di S con

insieme

veneano

insieme

l-cg r

i campi

Un interrogazione

S

1 elemento

Il

stati

tutti

Un interrogazione

di S con

MAxiuuw

che

un

tipiche.

chiave.

S

l elemento

dato

di modifica che

Un operazione

Mrwwus

Le

operazione

5. toglie.v

un

che,

operazioni

di queste

poche

in S tale

assume già

DEczvs S,.r

un

elemento

Un si

siano

nell insieme

solo

delle

categorie

e operaziosti

essenzi

i conce ti

liste

code,

e hashsi ta tabelle

solito

dell insieme

x, non

che

lista

in due

sull insieme

S.

x

Di

una

interrogazione

a un

puntatore.ai

appartiene

raggruppate

informaziani

Segue

richiede

essere

possono

semplicemente

di solito

l 1 presenta

Il Capitolo

dinamici

restituiscono

applicazione

un

dinamici

pi/e,

operazioni

zioni,

dati

di

-

d

per

si estendono si e tendonoinmo

cipro-r.o- r.

operazioni

o ffrire per

mantenere o

ie

diverse

da

- Strutture

capitolo

In questo

che

usano

usando

modellate

e

concatenate con

puntatori

saranno

alberi

radicati.

Si

solo

presentate discuterà

anche

in cui

l elemento

un

sem i.i

più

quelle metodo

essere liste

code.

pile.

e

oggetti

ntare

np ,. .

per

semplici

erso possanò

array.

gli

e Code

Pile

c code

Pile

sono

è

DELETE

in una la coda

a lungo

una

realizza

diversi

first-out .

Vi sono

paragrafo

si mostrerà

efficienti

modi

è sempre

un

con

first-

l as t-in.

è stato

nell insieme first-in, In questo

alcòlatore.

su uv.

di

più

UFO

d t ta FIFO

servii.

e code

pile

che

quello

primo

realizzare

per

realizzarle

come

primo

arrivato,

prinro

politica

denz

servito.

l operazione inserito

è qu 11o

dall insieme

cancellato

l elemento una

realizza

arrivato,

allineo

politica

coda,

un

dall in i .

rimosso

cancellato

l elemento

In unapila,

Similmente,

out .

dinamici

insiemi

prestabilito. la pila

recente

più

puntatori.

puntatori.

-i

com -

di dati

te strutture

mol

Sebbene

dinamo.

di insiemi

la rappresentazione

si esaminerà

di dati

strutture

3.1.1

fondamentali

di dati

array.

semplice

Pile

L

elemento

usati

con

quello

l

S1 La

pila

n.

è vuota

cnn

n. la pila

dell overt1ow

J

L array

dagli

rn S

Quando

supera

ha un

è l elemento

e 5 re pj5j

pila

stati nella

è costituita

attributo elementi

sono

solo

il piatto

si pun

.

Por.

dalla

rop

Sj ,

pila

dnve

di al più

nelle

trnvano

a

contrario

più

un array

di recente. alla

in tnndo

è l elemento

51

con

i. elementi in. erito

clementn

dell

si

è l orùine

pila

quelli

è accessibile.

in cima

è l indice

he

moti .

a

estratti

ha

non

sono

in,-lesi

tern.ini

Questi

caricate

una

realizzare che

ro a SJ S1

pi ttti

ne DFi F TE. che

e l operazic

Pcsw

pila

in cima.

O, la pila

dell t

di

i piatti

infatti 11.1,

figura

chiamata

pile

in cui

inseriti,

l operazione

va

delle

L ordine

sono

mostrato

Come ..

cui

chiamata

è spesso

l utilizzo

americane.

catfetterie

è spesso

pila

argomento,

come

descrivere

per

SU uná

di INSERT

operazione

nessun

in r verflow. pila .

non

Nella

cleinClltO

alcun

contiene

di interrngazinnc

Lt

rc ili//, I/li lll.

l. Oll

C

Vuota.

Se si

St xrv-Eui rv.



CsC

LlC Ull

C. f 1CUCkl ldl

se la

contlnllare

Si può

Ilùll

OpCl lZIOl1C

Ll

il

POP

v CCUpPEÀ

190

Capitolo

11

I

2

3

4

5

6

7

S

1

2

3

4

5

6

15

6

2

9

17

3

7

S

1

2

3

15

6

2

4

5

9

6

6

17

7

4

top S

6

a

top SJ

0 1

La

realichiare.

posi-ioidi

grigie

chiamate

PUSH 5,

che

inserito

piln

I elemento

Ognuna

di La

a

17

è quello

ne1la

a ione

e PUS

ma

5

pila 3.

S,

Ira

delle

cima

k

array.

elementi.

Gli L

S dòpo

pila

elementi

elenrenro la

della in

chia nata

l elemento

cima

è 9.

POP S

3 appaia

appaiono

pila

ha

ancora

La

b

solo S

pila

restituito arrm.

esso

b

nelle

dopo

Q

j

2

3

5

5

7

6

--

- -15

3

head Q

tail Q

è y iir

12

rai Q

8

9

10

11

12

6

9

8

4

17

8

9

10

11

12

6

9

S

4

17

t

.t

3.

non

4

3

le

l elemedto

eli

7

head Q

5

c

un

Sebbene

è il

operazioni

4

La

c

pi ic recentemente. in

S con

pila

191

fondamentali

11

10

t

rop SJ

l l.

9

8

dati

156984

t

4

Figura

di

Strutture

7

17.

sulla

piIa

essere

può

realizzata

con

linee

poche

c

di codice.

Q

1

2

3

5,,

4

3

5

7

6

.,-Là.-l

t STACK-EMPTY S l

tail Q

if rop S

0 Figura

3 Pc s S.

then

return

TRUE

else

return

FALSE

x

1

rop SJ 5 rop S

m

rop SJ m

coda.

3

underflow

else

topfS

4

11.1

S top 5

mostra

sulla

seguenti

underflo

sono

gli

effetti

richiede

pila

di IrlseRT

DEQUEUE to.

delle

operazioni

tempo

che

di

modifica

Pus

e Por.

Ognuna

delle

head

alla

coda,

come

estratto

aspettando

da più

rispettano

EsQI. cuE

una

e una una

è sempre tempo. i1 proprio

è chiamata della

pila,

coda

coda

coda.

..

12 .

G1i

della

eleme,r i

a p ... ,

co,fa

Gli

elementi

va

la coda

la locazione head Q la coda

è vuota

I segue

immediatamente

tail Q

la

l la coda

teril Q

è u ot .

coda

è piena

e se ii tenta

e

Degveue, l l. l-4

L Esercizio

i controlli richiede

dell errore di fornire

un

di

e di

overAoii

codice

che

coiuri lli

tail .

cotte

una

di DELETe

ha alcun

elemento

arrivata

alla

coda,

non

Fortunatamente.

fila

di persone

è chiamata

come

in un

un ele nne t to viene

Quando appena

in testa

e l operazione non

ar

prende come

bisogna

inserito.

posto

la persona

p eocciip

ufficio

irti

alla

2

if mil gj

3

then

4

else

in te ta di elen enti

lengtl Q I

tnil gj m

tail Q

I

Ic il g

omei1Q

pubblicu.

prende tane

di errore.

.i-

Q rai g

.r

fil i.

2

if

che

3

O fiead

g

pn to

della alla

l

fila dell i

Iteztrl then

l ila

l eetd

Q lteacl

else

hc

O

sul

Q

Q em

l hcad

1

Q

turno. return.r

clelia

en la

sono

alle

locazioni

lienrl g .

lu ir/ g

I.....

rriii

l l.2

ligtrr

richiede

n

tempo

m iilru 01.

li

eflelti

un

di estrane

e si tenta

in overflow.

E queue

omessi.

head gj

Quando

che

Q..r

I

DEQUEUF.

nperi

pedona quello

EwquEue DEQUEUE

l

nelle

Q1

Quando

1. Quando

tail g

procedure

senato

circolare.

in underflow.

stati

nel

circolare, ordine

head Q va

condizioni

due

3

inserito

arra

tre

01.

coda Por

fa si che

tesla

fondo

non

FIFO

ha una

L elemento sta

su una

1 operazione

La proprietà

La coda in

come

6.

,r

co r

1

Code

L operazione

clriave

un

elemento

Nelle

l

queste figura

un

di inserire

top S

return

operazioni

coda

in modo

si ha la coda

elemento

error

w,a

di

ha

n secondo

locazione

Inizialmente if Sv ac-Ev re 5 then

resta

nuova

La

I e si procede

Q

Poe $ l

a ione

reali

l

x

la

La

Lc,

11.2

della

2

8

Aead Q

3

cl Ile

operazioni

Es vr t

e

Dry vi i ..

0 ti

operazi o

la figura

Usando operazioni

una

gd

come

Spiegare

vada

di esse

come

Pusa S,4 ,

applicate

ILI-2

11.1

due

realizzare in overflow

di Por

operazioni

I,

Pusw 5,

Pus

che

e Pvsv

array

A

il numero

dovrebbero

Pus

n j in modo

..

1

tempo

..

tale

head L

l

9

b

head L

/

25

c

heàd L

l

25

Por S . 6.

che

nessuna

di elementi

complessivo

richiedere

e

S,8 S1

sia

Usando

la figura

operazioni

11.1-4

come

01.

4,

8

Riscrivere

EwgvEuE Q,

e DEquEuE g ,

nell array

1 1.3

Figura

ENQUEUE

EwqveuE Q.

1, ad

applicate

una

coda

delle

di ognuna

seguenti

DEQLELE g .

3,

vuota

Q inizialmente

è un

controllare

per

l overflow

ERt L,s ,

L sv-Ics testa.

memo-

e l underflow

di

e una

parte una

una

deque

pila

consente

l inserzione

coda

consente

l inserzione

coda

doppia

estremi.

Scrivere

eIementi

da

ad un

con

procedure estremi

gli

di una

di

estremo

l*inserzione

permette

quattro

entrambi

e la cancellazione

elementi

e la cance11azione

e la cancellazione tempo

01

per

realizzata

deque

da

inserire un

sola

dall altro. da

con

una

entrambi

x non

punta

al primo

gli

cancellare

e

essere il

Mostrare

come

esecuzione

1E./-7

Mostrare

realizzare

ddle

come

esecuzione

della

realizzare

delle

coda

una

operazioni

due

Analizzare

pile.

il

code.

due

Analizzare

il

minimo

è la testa

possono

apparire

teiapo

di

vista

tempo

di

concatenate

lista

lineare.

Diversamente

dell array,

insiemi non

è una

l ordine

dinamici,

da in una

offrendo

necessariamente

Come

mostrato

nel nella

struttura un

di dati

array

lista

tutte modo figura

in cui in

pero,

conc. ,tenata

cui

gli oggetti l ordine

già

sono

sistemati

lineare

è determinato

le operazioni

11.3

ogni

è determinato

attraverso

elencate

per

gli

un

insiemi

dagli

puntatore

dinamici,

anche

ogni

elemento

di

una

lista

concatenata

ed

è quindi

il primo

elemento,

o tesra.

della

lista

Se

doppia

uuv

k resti

lista

alla

punta

l elemento gli elementi

ordinai

è non

La lista

puo che

si assumerà

paragrafo,

della

testa

della

prei testa.

lista

della

lista

della

puo si omette

lineare

l ordine elementi

cireokrre,

cosi

le liste

e bidirezionali.

ordinate

4

Ltd-Sz RcH L, 7

il primo

trova

wc.

restituito un

restituisee

con

elemento

la lista

Per

aggetto nella

L con

lista

k nella

nessun

concatenata

al terzo

puntatore

chiave Se

all elemento.

il puntatore

tuendu

viene

allora

list .

nella

con

la

11.3 a ,

figura

I tsT-

e la chiamata

elemento

una

chiave

n..

restituisce

LIST-SEARCH x

2

while.v

l clepc

c

lCtlll

la

ricerca

.iore.

ll

e I ey

zii

IfdXll

ElO.V

3

o listn

i u.

k

L, hciad L

l

se

Per

ha predecessore

l ead L

indici ad

4

x non

di questo

successiva

concatenata

lineare,

ricerco

SEARCH L,

un ordine

secondo

efficiente.

più

resto

Nel non

siano

Lisv-Se Rcv L,

procedura

k appare

concatenata

delIa

della

piIa.

chiamata Una

si lavora

lista

una

in

coda

di elementi.

un anello cui

della

di uova

coperse

sentplice.

il puntatore

lista

25

o bidirezionale.

semplice

negli

In una yen

e il puntatore

coda

come

Ricerca

ordine.

contengono

l esectcione

Un attributo

è concatenata

Se la lista

è la coda.

chiave

frecceJ

è vuota.

lista

memorizzate

con

lista.

della

o coda,

Dopo

Ogni

l 6.

9.

testa

b

El risultato

c

è ordiitata.

lista

il massimo

mentre

9. 4.

Se una

una

chiavi

delle

lineare

chiave chiaie

concatenata

essere

Può

Se

cover

wL la lista

o no circolare.

oggetto

con

4.

con

della

prev resta.

alla

muovo

elemento,

l.

rappresentati

e il campo

punta im

ha

head Lj

elementn.

lista

L

resta

l ultimo

forme.

essere

e i ptutratori coda

della

oggetto

all

Se

lista.

in qualsiasi

con

semplice

Liste

/

dinamico

l insieme

head

vecchia

alla x punm

ogni

della

alla

punta

essere

di

all ordine

corrisponde

La

11.2

l

chiave

concatenata

lista

p rnra

diverse può

next

arrribuw

ed è quindi

avere

peci

concatenate

usando

pila

della

può

ordinata.

array.

coda.

una

operazioni

usando

lista o nn

la

dove

della

elemento

puntatore

lista 11.1-6

oggerro

ha successore

mento

Una Mentre

25

L svDecEtz L,.r .

una

L

la

per

Il campo

diagonale.

kc x

nuovo

Qnesto

campi

con

e precedente.

dove

COI .

11.1-5

16

ruppresertra

che

bidire ioz2ale

oggerto

barra

mia

con

chiamata

e DEQUEUE

4

9

L

lista

Una

a

indicati

wL

6.

..

Q1

il risultato

illustrare

modello,

ExqvEue Q,

ExguEvE Q, rizzata

11.2

16

n. Le

lista nella elemento og stsccessivo all gerro

11. 1-3

4

16

a

193

fondamenta1i

seguenti

delle

nell array

memorizzata

un

con

pile

a meno

di ognuna

Por S ,

S,3 ,

vuota

S inizialmente

pila

il risultato

illustrare

modello,

dati

next /

tiey I

prev

Esercizi

11.1.-1

di

Strunure

11

Capcmlo

x

w k

Cl

.V

in inf ..1tti

un la

liita ricerc,.i

di

n nggett potrebbc

i.

l

pr lCCdura

richiedere

Ltsr-Sr ,u cn I es.. m

dcll intera

tempc

richiede lift..l.

8wr

nel

so

194

Capirolo

11

di

Strutture

Inserimento

in

una

lista

dati

195

fondamentali

concatenata ni L

Dato

un

elemento

inserisce

x il cui

x all inizio

LIST-IYSERT L, next x

2

if head L

3

then head L

5

previ

Il tempo

m

già

come

inizializzato, mostrato

la procedura

nella

figura

L st-IssERt

11.3 b .

b

9

nlL

4

25

wL m

x

9

25

nlL

x istL Ltsv-I sER r

per

da

una

lista

L sl -DELETE

un puntatore un

rimuove

recuperare

il puntatore

elemento

LlST-OELETE L,

una

su

lista

di n elementi

un

una

elemento dalla

data

chiave,

x da

una

lista

aggiornando

si

lista

deve

concatenata

1

if prev x then

3

else

4

if ne. t x

5

then

atonale

heacl L

i puntatori. chiamare

prima

viene

chiave.

è richiesto

s il L

catinella

cn

chiave

In

tra

disposto

nil L

ciò

dell og

cancel/a.-io ic

getto

lista

regolare

trasforma

una

coda.

Analogamente.

1. La

è la

sci ra

grigia e la

testa

nuota

alla

punta

per

sia

della

irevt

il campo

m

nerr x

L ST

head L

le sentinella

con

circolare.

lista

e 4.

clria

con

il campo

che

coda

della

peci

nextfx

J

mostra

eseguita

pre

come

viene

in tempo

01.

tempo

On

nel

x m

.v

2

while

cancellato

Llsv-

3

data

4

ma,

caso

un

elemento

se si desidera

peggiore

perché

da

una

cancellare si deve

lista

un prima

concatenata.

elemento

con

chiamare

una

posarono

di prime,

tranne

inizializzati

essere che

i riferimenti

a i il L . a tt.

e head L

k

nevt nif L c k

e key x

x c nil L rext x

do.v x

returh

LisT-SEARCH. un

cancetl e nella

elemento

si

usa

lista

dalla

elemento

lista

la seguente

si

usa

la

prncedura

Ltd-Dccave .

Per

inserire

procedura.

Sentinelle L1ST-INSERT

limite

di Lise-DELETE relativi

ella

LlST DELETE nen prei

2

pre Aexl s J

Uosa

codice.

sentinella

1n

f. 11

e alla

m

coda

della

più

semplice

sc si potesse

evitare

la gestione

dei

casi

li.itn.

ne.ir s

/ rei

è

si

essere

potrebbe

testa

X

L,

1

sostituisce

un

testa

sopra.

specificato

SEARCH L,

1

nil L

prei

lo stesso

rimane

di List-SzARcw come

cambiano

nexr i

che

iievt il L

sia

infatti

Il codice c

Per

Il codice

lista

connn e

L nttriburo

còda.

è f oggetro

coda

in una

bidirezionale

Se si desidera L st-SE RcH

c wL

l3pt.eva

se

una

con

procedurJ

tL

pro

circolare

all elemento.

next prev x

11.3 c

modo

usa

cfr

L

concatenata in

richiusa

sentinella,

-

lista

Una

la

ch po

11.4.

L. La

X

2

11.4

b/dire

lista

I elemento.z

con

Figura

è 01.

concatenata

a.v e estrae

cancellare

figura

stato

nil L

prev head L

procedura

La

concatenata,

sia

head L

di esecuzione

riceve

lista

della

Cancellazione

La

chiave

x

1

4

campo

oggetto

con

La

.s

fittizio

un

riferimcntn

che

consente

di

alla

sentineil

semplit

icarc

ni/ L

la

. Come

gestione

moitr

dei

casi

limite.

ti

nell

i ligur

t

m

next s

2

prei

4

itest itil L

5

pre

figura

X

L,

l

tre.vr nil L m.v

next nil L c .r

.v

11.4

m

il Ll

nsostra

gli

effetti

di LisT-Ir si.et

e Lidi -Dru tr.

u

una

ietta campione.

un

196

Capitolo

sentinelle

Le liste,

aiuta

a contrarre

sentinelle

non

la memoria

spazio.

In

il codice

dovrebb

extra

essere

usata

libro,

questo

bero

in un

ciclo,

usate

si us eranno

le

il coefficiente

un

rappresentare

può

sentinelle

esse

quando

di n o n-

vi sono ono

. Se

indiscriminatamente.

l e sentinelle

er

cosi

riducendo

e mo molte

icco iccole e

spreco

significativo

key

t prev

11.5

Figura

Esercizi

p erazione

Lo

I wsaat

su insiemi

in tempo

01

dinamici

Cosa

essere

puo

si può

dire

realizzata

lista

su una

contengano

concatenata

Q alizzare Por,

una

usando

pila

dovrebbero

lista

una

richiedere

concatenat

ancora

tempo

l

L. L e operazioni

Pus

01. li

Realiz

zare

NQUEUE

1I.2-4

coda

una

usando

e DEQUELE

una

dovrebbero

Re e alizzare

le operazioni

concatenate

semplici.

lista

concatenata

richiedere

, Issai,

DEi.Ete soi1o

Quali

ancora

e SEARCH

i tempi

l ice

semp tempo

L. . L e

operazioni

d ei d izionari

di esecuzione

L operazione ,

e S,e

UNlON restituisce

i insiemi Usto

con

insieme

S, e S, sono terppo

dinamici

SU insiemi un

01

S

usando

liste

circolari

di solito

usando

S, consistente

distrutti

una

struttura

di

dati

input

d elementi

gli

Mostrare

a lista

Scrivere

una

singo

a ista e

lista.

ura

che

procedura concatenata

ana

oga

due

semplice

usando

Confrontare

fonda

Ie due

liste

ordinata

una

senza

ogni

campo.

di 5, e di

della

figura

come

fornire

sentinella

con

riguardo

procedure

per

marcare

semplicità

semplice

di n elementi.

memoria

oltre

O La

d p roc edura

del

necessaria

quella

per

h e inverta

dovrebbe la lista

usare

. solo

c come

S tesare Spiegare

la fine

cosi

di ogni

campo

eelemento essere es bbitt

invece

di

itext...,s

accedere

tvseRT tosi con

un

con alla

e DELcTE tempo

due

soliti

conce e di

rappresentato ra resenta per

dei

interpretati

pre 0. .

test,t .su tali

interi x,

bidirezionali

una una

lista

s an costante

quantità

cioè

Si raccom.mda della ... li te.

o sso l o un

e prev r . v. Si iassumac . itext di I hite def inirei np r .

lista. Mnstrare

np i .

rea x revt

di descrivere c. . Mostr

ire inoltre

co ne

x

e di i

array

np J

puntatnre

l ore clusivo

realizz

usando

un

e

arra

prerei

.x . . j.a

I una

è nemesi iri.i .

lista

i k

ill.

valore

Il

S

di questo

0 o-

come

attualmente un

Dato

questa

in k

coda

non

possa

L della

testa

sicuramente l indice

fá .

della

ne.vr

campo

con-

lista

16 nell

.

e prei

ne t

key,

16 compare

1 che

indice

Secondo

L contiene

variabile

Una

chiavi

chiave

nel

per

concatenata

array

e la chiave

vr . compaia

un intero

si usa

con

array

la lista

bonn

pseudocodice. indice tramite

usate

e prei

irevt x

le parentesi

per

quadre

di unranspo

la selezione

che

key r ,

di

state

attributo

v

è quello

un

solo

che

denotare

di un di

solito

sia

viene

ad

l accesso

nei

anche

attribuito

un

i casi.

In entrambi

n spetto.

effettivi.

di prograri7mazione

per

tra

I e in f nrmazione

coome me invertire

con

lista.

Nello

h etuttiipuntatoripossano come

XOR qu qua

dati

oggeni

e prev.

agli

comune

l oggetto

la costante

nell array.

corrente

della

in l ey 2 ,

4 compare

5. Sebbene di solito

testa,

concatenata

stessa.

usando

non

di

concatenata.

lista

indice

4 segue

chiave

la chiave

delle ne.vt

array

negli

un

realizzare

i valori

contiene

l ey

memorizzati

campi

stessi

gli

si può

un oggetto

con

l oggetto

indice

un

come

x è semplicemente

11.5,

della

abbiano

rappresentano

2 e prev 2

prev

che mostra

L array sono

i puntatori

figura

si ha ne t 5

e nel

codice.

1I.5

array.

tre

con

e prev .r

Nella

linguaggi

. liste

realizzare

che

strutture

multipli

di oggetti

la figura

11.3 a .

il significato 11.2-8

punutore.

array

con

un puntatore

figura

catenata.

P

della Dar eunaproceduranonricorsivaconte

insieme

dinamico,

rappresentare Il.2-7

un esempio,

Per

next x

Nella

in una

ordinate .

sentinelle.

chiave alla

oggetti

l l.è a

insieme

nell

x, key x ,

semplici

usare

di

rappresentare

d

adeguata.

concatenate

array.

Rappresentazione

interpretazione. II.2-6

degli

realizzeranno

Si

il Fortran.

realizzare

di

modi

procedure

di tutti

dall operazione.

indici

con

esplicito

un

datn

di

tipo

due

vedranno

si

paragrafo,

come

linguaggi,

usando

e oggetti

puntatori

questo

senza

puntatori

delle

come

prende

5, u

In

forniscono

concatenate

01.

rappresentare

è possibile

Si può 11.2-é

e oggetti

di puntatori

Realizzazione

e Come

11.2-3

chiare

grigie

la DEI.ma

per

1I.3 11.2-2

gli

srrisce

resta.

de1la

l indice

L conriene

corrispo tdono

Le

interprerarli.

coine

mostrano

variabile

La

lista.

della

elenienri

un

Ogni

e prev.

nevt

minori ati

I puntatori

oggetto.

kc ,

arra

dagli

rappresenrara

a

singolo

1e frecce

alro

in

mostrati

11.3

figura

rappresenta

arra

degli

dell array

indici

agli

della

concarenara

liscia

La

verticale

striscia

semplice

197

fondamentali

next

di l

veram er m

semplificano

dati

8

er

COCllCC.

11.2-1

di

Strutture

Il

di

Rappresentazione

con

oggetti

array

è Le

parole

memoria

nel

ùi

un

indirizzate

tipicamente

adorni

culcnl ore

interi

con

da

. tipi

Ol. lllclslol

izdcllÉro

l

o

CH

p issot1o

Ciicre

inilirilr

1lc

a

gillil

ctlclo

tino

s wst lillc

Alu

Dl putll 1lof .

0

i

198

Capitolo

1/

Stmttare

l

2

3

4

5

6

7

8

9

ll

10

12

13

14

l5



l7

18

19 20

2i

3

22

2

di

gati

l

2

199

fondamentali

4

3

5

7

6

8

pee

pee

L

l, A

key

key

prev

pt8V

ne.rr Figura

I 1.6

Ogni

lista

eleinen1o

I tre un

La di

campi

I ey,

oggetto

lista

è un

nevt

e

è l i rdice

chiari

grigi

concatenata oggetto

11.3 a

occrrpa

un

mostrano

e

11.5

la

Gli degli

con

contiguo ag1i

de11 aggerro. successione

rappreseittnta

sortoarray

rispetrivamenre

elemenro

primo

e le frecce

che

figure

corrispond io

prev

del

de1le

di

spostamenri

oggetri

della

arra

singolo

l e 2.

Un

elementi

A

l

5

7

6

8

pee a

pu ttarore

delfa

4

2

l

arra .

3 dentro

0,

corrtenenti

elementi

r

lunghe a

L

lisrn

sono

lista.

key prev

Si può

usare

forniscono singolo e

array

11.5.

Nella

strategia

Un

figura

1 e 2. Per

essere

oggetto

il valore 2,

stesso

array

sono

hanno

di

è più

molte

sarà

I indice nevr

nel

figure

campo

sono

un

i

isra

rispettivamente i del

Il

delle

che

DA

cn rerru

o

Per

inserire

deve

una

allocare

lista

chiave

È

nella

g

alcuni

sistemi,è applicazioni,

di

problema un

strutture

sufficiente

usare

di dati

tale

insieme

omogeneo.

dove

saranno

considerate

che

la rappresentazione

deallocare

oggetti

sono

lista

con

nella di

memoria per

della

memoria.

allocare

potere

ora della

il problema lista

in

sono

istante

qualche

liberi

futuro

gli gli

gli

oggetti

rappresentazione

liberi

con

dinamico

attualmente

contenga

neII insieme essere

possonn

array n

usati

per

elementi.

g1i usa

iolo

oggetti l array

e em

fine

then

error

3

else

x

fi-ee

fiee

m

dello

libero

spazio

beat .v x

return

5

n

F REE-O

B J ECT X

l

ne.vr r

m

fi ee

2

f lYC .l-

M

X

ir o getti

da

inserire

v.

in

tutli tu

i ,li

next

in

u che

singola memorizza

lista

concatenat i, il

puntai re

che uccciiivo

si

chiama

listn

all interno

libern. dcll i

I1 l1. lista

-il

Cl Svl Vlle ersi llbCl.l

diverse

illterc llltlcsse

-..

. liitc tlc li

-. oncatcna liTay

I L..i

are.e.. l.

Il

X

fieur, C

un

e

l.S I I.R

r mi

.

-

. ni tl,.l1locati.

A o,, ,etti

d.,

liberi

n

free

0

2

ii oggetti

ai

elementi

che

1

v, ,

i

o con

lunghezza

Allora

BQ

i e g b

a varia

oggetti

e liberare

ubbiano

0

mt.

if free

sonoinutilizrati.

e i riunenti

rappresentare

In

rappresent tt

multipli m

oggetti.

di a locare

bidirezionale

dinamico,

nuovi

dinamicn.

nuntengono libera

nelia l insieme

elementi

nell insieme

lista

array

attualmente

gli

al primo

punti

l ins etne

i era

o

allocatoèque

Si supponga

oggetti.

e liberare

allocare

per

procedure

. quando

i no

..7

1.

l

della

noh

direttamente

i

si

rappresentazione oggetti

e restituiscono

nalizzerà

l CS2lllpio

bidirezionale.

oggetti

semplici

Si

usando

lista

ie

m

i era.

oggetto -,

e

., a

globa f è vuoto.

non

tigura

lista

L o nelIa S.M rossimo

B.

ALLOCATE-OBJECT

una

la

concatenata

abbastanza

omogenei

che

rappresentano

La

gestire

con

inutilizzato

lista

è o nella M

L

nella

mostrato

come

L,

lista

tutti

di oggetti

multipli. supponga

e che

Si

rappresentato

attualmente

la

con

variabile

a iin una

concatenata

1, a lista

o

QpPS, un

gestire

insieme

ungarbagecrillectorperdetenninarequuli

però,

al gestore

dinamico

della

liber

lista

e /e,

q

mantenuta è mantenu

libera

lista

della

La testa

lista.

seguenti

conveniente

pertanto

utilizzato

inutilizzati

Si

insieme

..

IQ

5 g/venM

gggppt

/ esecu

g qq

puntatore

oggetti

a un oggetto

rappresentazione

Molte

array

in un

un puntatore

concatenata.

utilizzati

di

,

P

e

f fg$ nresta ,.

.

,.-

rocedure e deallocazione

fia ,

lisw

La

a a

rnostraitv

,

era.

lega,

0.

di memorizzare

permette

multipli.

Allocazione

pgpp-QgJE .

p g gi.qqqe

al l aggeno.

al valore

,, z ,. .

igura

11.3

dell oggetto

j è il puntatore

eprev

seiiso

di gestire

problema

Poiché

omogenei,

Ogni

non

come

.

diversa.

del

k.

che

mostra

delle

i, si aggiunge

è flessibile

lunghezza

campi.

di elementi

a ley,

2j

array

difficile

stessi

gli

composte

array

oggetti

di oggetti

oggetti

gli

un singolo

..

j

11.6

concatenata

Aj

tra 0 e l

il puntatote

Ai

quindi

con

contiguo

dato

la figura

la lista

corrispondenti

di programmazione

esempio

memorizzare

sottoarray

di prev i .

in ambienti

Per

nel l intervallo

leggendo

La rappresentazione nello

un

oggetti

puntatore.

per

spostamenti

gli

leggere

eterogeneo

usato

spostamento

11.6.

spostamento

di dato

occupa

a uno

realizzare

per

tipi

A possa

corrisponde

lo

la stessa

esplicitamente

Q,. Quando i.

. u

l o.

Ii

liita

liber

i i

200

Capitolo

pie

11

di

Stature

l

g

2

4

3

5

6

7

8

9

10

11.4

next

201

fondamentali

radicati

di alberi

Rappresentazione

dati

L key L,

3

I metodi

prev

11.8

Due

liste

concatenare,

L,

chiara

grigia

ed

L,

grigia

scura

e una

interconnesse.

lista

nera

alberi

gli un Le Possono un

due

vengono

procedure e sserè

modificate campo

qualunque

in

funzionare

dell oggetto

tempo per

venga

01,

che

rende

insieme

qualunque

utilizzato

le

come

interessanti

omogeneo

campo

next

da

usare.

di oggetti

nella

lista

purché

Disegnare

la sequenza 13,4,8,

usando

la rappresentazione

con

singolo

un

19,5, su array

11

memorizzata

multipli.

come

Fare

una

la stesso

ad

puntatori

listabidirezionale

Alberi

binari

Come

mostrato

At.Loc ve-Oa Ecr

rappresentati

con

un

e FREz-Ossecr

singolo

un

per

Perché

non

delle

1I.3-4

è necessario

Spesso

si vogliono

insieme

impiegando

memoria

Assumere

che

Sia

L una di

lista

lista

2,,

OCATE OBJECT inoltre

libeta. lista

siano

m

n.

F, , sposti

dell arra rrav

la correttezza

degli

una

che

I, in l11,

2

della

realizzazione

....

ii. La

so solo

unu

Lo

procedura

un

array

sinistro

lista

al

siann

gestiti

lista

che la

di

F

wL,

l albero

array

p,

di ogni

nodo

avere .di spazio .,

i puntatori

p er memorizzare

g di un

xtt,

T. Se p j

binario

albero

alla

radice

dell albero



illimitato

di

boot T

nell attributo

memorizzato

. Se

è vuoto.

un

numero

un

rappresentare

per

di figli

il numero

di ogni

binario

albero nodo

sia.

con

rappresentazione

array

multipli

può

figli

bisogna

es

essere una

al inassimo,

q ue

q

qualche

costante

classe

di alberi

si snstituiscono

k

hn

allocare.

a rom T

compatta. della

I ey,

dalle

lista

e

prei

procedure

Fbidirezionale.

L e n che,

libera

con

radicati

schema

e FREE-

fuori

m siano date

occupino

lista

sono

interessano

arra .

libera

lista

sg L,

modo

dovrebbe

negli

nella

left

i campi

destro

lista array

di calcolo

sia

tramite

una

m siano

costante

con

ambiente

pila

m memorizzata

L in

di una

Au.ocAvE-OasEcr

della

correttamente

quantità

di

di una

CowpwcnF -I di

elementi

gli

la rappresentazione

mantengono

elementi

e riconipnnga

be uswrè usare

che

questi

s, elementi,

procedura gli

È

a elementi

che

e FREE OBSFCT che

nella

rappresentazione

il caso

la realizzazione

s supponga

tutti la

le procedure

in modo

di lunghezza

Si

memoria

come

puntatori

usare

Scrivere

libera

DOSIZIOlll /71 p 8m e dovrebbe cura

vi

bidireziohale

lunghezza n hezza

Si supponga

la

non

oggetti

in cui

esempio,

in locazioni.

realizzate

Suggerimento

next ALl

essere

nella per

Spiegare

paginata.

possano

stessa.

contigui usare,

puo

le prime

virtuale

OBJECT

Il.3-é

si

degli

prev

concatenate,

liste

che

i

omogeneo

e FRee-OsiEcr

mantenere

bidireziona zionale allora e multipli

i campi

p

di albero.

tipo

si usano

e al figlio

Il puntatore

destro.

array.

inizializzare

Acvoc tE-Oe zcr

procedure

ICSt

la rappresentazione

per

Alberi 11.3-3

11.9,

figura

array,

le procedure

di oggetti

a seconda

e variano

nodi

nella

al figlio

adre,

al

root T Scrivere

avere

possono

libera.

figlio 11.3-2

altri

del

1

key.

p erie

.

un og

con

campo

un

contenga

nodo

ogni

binario

di un albero

nodo

ogni

che

i nodi

in cui

ra dicati

si esaminano

Prima

p untatori.

c con

di dati alberi

per

di figli.

quaIunque

assume

si

Esercizi

11.3-1

numero

metodo

un

si presenta

quindi

Si rappresenta

eseguite

per

binari,

eràinmodospecificohlproblema p

ci si interess

strutture

a qualunque

si estendono

p araerafo

precedente

paragrafo,

attraverso

radicati

alberi

re di i ra rappresentare

libera

. In questo

omogenea.

di i dati

struttura ur stru Figura

nel

descritti

le liste

rappresentare

per

le F,

la lista

nella L e

s posizioni

occupan,to

I. le

tempo di esecuzione extra. . Dimostrare cs ion

pracedura.

iiii v i rrltiii.

l ft .x

in

l crssri c....,..

-...,, a sinistrnj

e tiyf t v

in

,....,,.rtrnJ. l l5l

il cl Stl7

n /ri,i . I lcclntvi /

ha hy,ron

i s ywntli s, ,

nnrq i nu,slrr Ii.

ps

/itt

202

Capitolo

11

rom T

indice l

12

7

3

8

NIL en.

3

4

10

10

5

9

5

2

NIL

NIL

6

18

l

4

7

7

N IL

N IL

14

6

9

21

NIL

N1L

5

riic

wc

11.10

Le

La

rappresenra.iane

campi

clriai

i non

so o

figlio-sinistro,

altoi,

in

px

di

fratello-desrro

left-child x

iir

basso

a siiiistra

ah

albero

T.

e right-siMing .c

Ciascwi

nodo

be ssv

in

r

da

una

molti

quando

nodi

hanno

pochi

memoria. Fortunatamente,

vi

arbitrario

di figli

qualunque

albero

mostrara alla

punta ha

nella

solo

2.

right-sibling xj il nodo

ha

allora

Altre

rappresentazioni

radice molti

radicati

invece

il vantaggio

di usare

solo

con

uno

figlio-sinistro

nodo

contiene

di avere

un

figli,

Gli

aIlora

sono schemi.

per

spazio

On

p al padre ogni

figlio.

Lo

nodo

tvtL e se

per

più

a destra

che

su

compaiono solo

schema

nel

puntatori migl

in altri

inre

mndi.

binario

Capitolo

22

al padre

e non

dipende

d ill

Nel

Capitolo

completn. venarono

vi sono

7. per

tramite attraversati

puntatori

un

esempio. singolo

soltanto ai hgli.

Sono

Cùlllpl.

albero

binarie,

radicato

nell ii clice

chiavi

i rapt rcscnl t

all .

un

di

rappre.- . -

una

usando

è memorizzato

destro.

spazio

di

costante

extra

e non

l albero,

modificare

dato spazio

verso possibili

cl i ic

binar

albero

un

l albero.

per

del

usando

nodo per

possono ogni

destro

fratello

sinistro,

figlio

nodo

iolo

Mostrare

raggiunti.

essere

due

albero

di un

e un

puntatori

radicato

come

arbitr ri

otteis booleano.

Valore

Problemi Ii tra

Confronti

I I-I

uenti

dei

O isuno lit..l

liste tipi

quattro C.,lSO

liste

di

tuli O/Ill

pt . 2, 1E lC.

un

tempor u c- -

neanche

la procedura.

e tut ti i figli risultato

allo

oltre

Usare,

nodo.

che,

On

tempo

con

ricorsiva di ogni

applicazione.

6. che

strut . .

come

pila

si è arra

Esercizi

e

non

la chiave

rappresentazione

La

stesso

albero

procedura

stampi

durante

il padre

un

fratello

le

tutte

stampi

che

O tt e l albero

di suo

,.l1llllOllCO.

Dise n

una

Scrivere

11.4-5

nodo

alberi

si basa

bin. . .

albero

un

dato una

Usare

e re e r T ogni

11.4-6

si rappresentano che

do

n nodi,

con

sinistro,

di x.

x è il figlio

che.

On

tempo

dell albero.

nodo

tempo

con

procedura

figlio

tazione

mente. destra

ù

binario

un albero

è

Pcf

11.4-I

una

quantità

il nodo

con

ricorsiva di ogni

le chiavi

arbitrario

radicato

x, e alla

dato

ausiliaria.

Scrivere

numero

fratello-destro

un puntatore

puntatore

un

Nn..

heap,

presenti

del

immediatamente

left-child x

degli

alberi

a sinistra

più

al fratello

taluolta

uno

cosi altri

ha

rappresentazione ogni

prima,

al figlio

rigkt-sibling s

rappresentato indice.

La

T. Però,

punta

padre,

e un

che

alberi

che.

On

dell albero.

nodo

molt 11.4-4

rappresentare

per

sprecata

non

stanapi

di n nodi, punta

x non

alberi

binari, r nodi.

Con e

albero

ingegnoso

viene

puntatori

lefi-child v

Gli

con

11.10.

dell

schema

alberi

radicato

figura

l.

Se

uno

usando

radice

due

è

tigli

procedura

una

Scrivere

di dati grande,

di ogni

i.

11.4-3

costante

26

fondamentali

Iw

a elesrra

mostrate.

di n nodi, limitato

le chiavi

tempo

con

ricorsiva

procedura

stampi

nodi, i seguenri

una

Scrivere

11.4-2

dari

tigli

lefi

I e

4

10

Figura

di

Strutture

pCf

ir guctlle Opt .l ,lZIOllC

tabell , CICllCJl,.l

p

qi C11

ICgllltO.

o

di

esecù/ii

ri

204

Capitolo

11 Strutrure

non

ordinata,

concatenata semplice SEARCH L,

ordinata,

non

concatenata

bidirezionale

ordinata,

ordinata.

Se

bidirezionale

concatenata

semplice

si ignorano

linee

4-6

nella .r

DELETE L,

lista

SuCCESSOR L,

M

X

ahi L

wx i

is L

che

casuali

aiutano

in due

Durante

fase

Realizza ione znergeabfe

Un

vuoto .

I4SERT,

usando

liste

b.

Le

c.

Le

liste

sono

liste

sono

non

11-3

di un

anche

ordinata,

queste

ipotesi,

ricerca

ordin te

is

l 1.3-4

n posizioni

degli

insiemi

uita

e gli

lista

richiede

Ivlostrare casi.

Cercare

su

crea

che come

di esecuzione

dinamico

array. cioè,

lista

dinamici

ordinata

Si assuma key i

in un

insiemi

realizzare

mergeable

heap

i mergeable

heap

le rea1izzazioni di ogni

cui

un

più

operazione

fase

che

in modo tutte

l ey next i che

da

opera.

fondere

compatto

le chiavi per

il seguente

tempo

COE1PwCr-LtST-SEwRCH L,

Dedurre

che

i

3

s hile

4

ogni

aleoritnso

Mostrare

che

d.

Mostrare

che

e.

Provare

che

non

che

la lista

lista

le chiavi

tutte

e non

siano

necessariamente

è un

distinte

avanzamenti

gli

suddividendo

la ricerca

spostamento

2 tralascia

che

nerr

di k che

in avanti

la sua

è eseguita

nella

avanzamenti

gli

descrive

dalla

la distanza

nelle

1ista

eseguiti

nella

i alla

posizione

di esecuzione

f.

Mostrare

g

atteso

y/p .

/

sono

esecuzione

linee

7-9.

Cioè

attraverso

avanzamenti

nelle

4-6,

linee

e quindi

lista

chiave

concatenata

desiderata

attraverso

cioè.

I dopo

r iterazioni

della

di Cowvwcv-Lisr-SewRcv

è Ot

EX

ogni

per

e I e i

R. soo.

if / cg i

I,

siano i

una distinte

I, 2,, randomizzato

lista

di n elementi e che

n tale

che possa

la lista

nelle

Note

prime

compatta

Ime rro

SLsggé I

usare

l equazione

6.28 .

keyp

e l ey j

i e-

8

if /-cg i

ne vt i

w iit..

Sotto

essere

usato

per

la

che

Hopcroft

e Ullman

base.

Gonnet

90j

i

è eseguita

e Knuth

5

fornisce

delle

code

dati

e delle

corrispondenti

con

sono

121

intuitiYO.

tempo

ottimi

sperimentali

sul1e

atteso

O

riferimenti

.

v

le strutture

per di

prestazioni

linguaggio

A-l



1947.

di dati

basate usati

sviluppato

da

algebriche

come

alberi

A. Newell,

J. C. Slum

l

caverne infamante

promnsso npcr izi ini

Knuth

nel

certarnente

t utilizzo, iu1lc

strutture

G.

di dati

in matematica

calcolatori.

inker

le strutture

per

come

pile

esistevano

già dei

di un

furono

e di

return

il significato

molte

di dati

operazioni

di

sulle

di dati.

i puntatori

esplic

l then

ivi

CowPACT-L1$T-SEARCH

Aho,

l 956

ne.i-t i

e spiegarne

1

y

al capitolo

fi rmulc. i e- j

y

/g

/t

f

sia

Anche

I. n

then

9

p

g

disgiunti.

programmi

7

p y

E X,J

dell introduzione

i w zie

do j

return

casuale

k

tength L

6

IO

Dato della

lineare.

E X,

che

on.

head L

5

la fase

il tempo

c.

nozioni

n

ripetute

si trascura

dello

ricerca

puntatori

L origine l

ricerca.

è

posizione

r 0.

di

strutture

2

una

j indica

oggetto

Le

avanzamento

1.

b.

efficienti

in termini

modo.

l usuale

dei

si ipotizza

chiavi

di Cowpwcr-L sv-SEARcv

fase,

soltanto

X, la variabile

la catena

l usuale qualche

lista

lista.

compatta

di mantenere

ci si aspetta

nella

seguenti

il tempo

Sia

concatenate

MAwa-HE r

UYION.

dei

Analizzare

liste

contiene

le prestazioni

ordinate.

sono

Ricerca

L Esercizio

operazioni

in ognuno

o

con

tale

Un

una

ordinate.

non

liste

heap

le seguenti

operazioni.

dell insiense

Le

mergeable

EXTRACT MIXC

concatenate

cardina1ità a.

offre

Mi4l31Llkt,

delle

possibili

di un

heap

durante

Cose cr-L sv-SEARCH la lista

la prima

stesso

come

a caso.

1 ed n indica

in della

posizione

libera.

consiste

Allo

opera

di j tra

ricerca

di

ogni

di k in tal caso

piccolo

comunque

scelta

scelta

j

e più

ad

205

fondamentali

a1goritmo

in volta

posizione

dari

asintoticamente.

analizzare

la prima

l usuale

di volta

di kc i

attraversare

quando

Si possono fasi.

una

grande

procedura

Dedurre

i punta

ad

qualunque

si ha

procedura,

l indice

j j è più

lista

nella

della

avanzare

i dovrebbe

della

casuali.

11-2

di

si sa che

Perché

.i

PREDECESSOR L, Mirini

che

elemento a.

4-6 in cui

se I ey

compatta,

.l

linee

cercano

vantaggioso

I

liwsrRv L,

le ordinata,

di

M.

sui

puntatnri

nei Hopper

binari.

Knuth

ll Inro

A.

non

M.

informatica

Turing

è noto

nel

l95

lingu,.ig, io

per

le

IPL-lli

di

IPL-II,

sviluppatn

nel

nei

pile

Knuth

a tamburo.

la rappresentazione

l impnrtanza

che prima

. Secondo

memorie

al ingozggio

ricnnoiciuto

dato

cartucce

lo sviluppo

inùentore

con

I prevedeva

d5 credito di over

un

è incerte. d uff cio

pratiche

ilcnl nori

primi

e H. A. Simon.

pile.

cita

121

in

e nelle

Il delle

sviluppato dei l 57

puntatori includeva

nel

hash

Tabelle

Molte

applicazioni

INSERT,

e

mantiene

programmazione di caratteri

stringhe hash

è una

tabella

tempo

8n

possa

richiedere

caso

Sotto

ragionevoli

tabella

hash

del

di un elemento un

concatenata estremamente

sono

in una

di un elemento

di ricerca

medio

lista

hash

tabella

Una

linguaggio.

in una

di sono

elementi

la ricerca

netodo

operazioni

linguaggio

un

degli

del

Sebbene

le prestazioni

il tempo

ipotesi,

di

chiavi

le

di ricerca

tempo

lo stesso in pratica

peggiore

cui

i dizionari.

realizzare

per

compilatore

a identificatori

corrispondono

che

efficace

fornisca

un in

simboli,

le

soltanto

che

esempio,

dei

tabella

una

di dati

hash nel

Per

dizionari.

qualunque

struttura

in una

buone.

dei

DELETE

dinamico

un*insieme

richiedono

SEARCH,

hash

tabella

è Ol. Una

una

array

con

array,

indirizzare

hash

tabelle in media

è una

ad

Tabe11e

tempo

in cui

dinamico

m non

sia

ngni troppo

paragrafo

possano inoltre

sono

l uso

delle

è che dei

di base

le operazioni

12.2

Il paragrafo

a tutte

per

dizionari

diretto

abbia

una

ihiai

funziona

che

bene

nes una

di un

necessiti U

dall universo coppia

l universo

quando

un applicazione

e ottenuta che

Si a iuiiscrh

grande.

he

semplice Si suppong i

piccolo. elemento

Nel

indice

dell array

indici

comune

la base e pratica.

efficace

è un tecnica

diretto

hash.

funzioni tema

sul

gli

al

proporzionale

la chiave.

come

diretto

come

chiave

la

totale

al numero

indirizzamento

01.

indirizzamento

è ragionevolmente

chiavi

variazioni

usare

utilizzando

utilizzando

chiavi

di allocare

di dimensione

array di

descrive

12.3

estremamente

solo

L indiriZzamento

dnve

da le alcune

tecnica

richiedono

Invece

è calcolato

l indice

all

efficace un

tipicamente

e il paragrafo

a partire

e analizzate

usa

in dettaglio

rispetto

è piccolo

memorizzate un alternativa

memorizzate.

l array,

principali

calcolati

presentate

hash

tabella

discute

permettere

12.1

ci si poiana

quando

ordinario. di c .samiitare

possibilità

l . Il paragrafo

O

possibile

diventano

hash

dell

chiave.

effettivamente

effettivamente

idee

tempo applicato

essere

ogni

per

direttamente le

presenti

12.1

una

chiavi

in un

array

efficace

array

di

concetto

semplice

più

fa un uiu

ordinario

può

di chiavi

poiché

di

un

Esso

le tabelle

chiavi.

numero

di

posizione

il numero

di possibili

essere

una

del

generalizzazione di un array

diretto.

Quando

di un

la

arbitraria

posizione

l indirizzamento un

è diretto

L indirizzamento

1....,

0.

di elensenti

abbia

U delle insiente 1 .

m

la stessa

chi vc. Per T0

rappresentare ..

in

l.

l indie in

cui

o ni

im

ui,.t

din..uq ico.,i

poiizione.

o slrit,

un

array,

corrisponde

indiri cm,ento

o lahellaml d

uis i

chiave

nell univer n

diretto. U.

L

208

Capirolo

12 futsh

Tabelte

0

come chiavi

dati satellite

usare

distinti tempo

12.1-3

dati

Suggerire

come

bero

12.1-4 12.

Ogni

I

La

chiave

renli

nell

effettive

determina

posi-ioni,

grigie

a iotte

universo

di

un

U

le

0,

l,

dinamico

...,

9

nella

posi-ioni

scure,

insigne

contengono

tramire

corrisponde

tabella

una

a un

che

tabella

indice

ad

nella

contengono

indiri

anniento

tabella.

i piantatori

agli

direrro

insieme

L

di

elementi.

Le

i

richiedere

realizzare gli

zializzare

l intero

12.1 l insieme

Le

illustra

l approccio

non

operazioni

la posizione

contiene

del

elementi

dizionario

con

sono

banali

/ punta chiave da

ad un elemento k, allora

dell insieme

Tk

con

realizzare.

return

12.2

DIRECT-ADDRESS-INSERT T, m

INSERT,

per

come

struttura

aiutare

DIRECT-ADDRESS-Delete T,

difficoltà

Per

alcune

la

chiave

un

puntatore

da

posizione

stessa,

campo

chiave

chiave. che

operazioni

nella di

è veloce

tabella

ad

risparmiando

Tuttavia,

la posizione

cool

spazio se

poiché

se una

chiave

satelIite

tabella

noni

si ha

tempo

della

stessa. in

un

all oggetto, Inoltre

spesso

l indice

memorizzata,

Cioè,

può

esterno

si deve

alla

avere

nella

modo

qualche

un

nella

memorizzare

U di

tabella

ad

si ha per

L unico

Si consideri

di S. Qual

12.1-2

Un

vettore

lUllgllCZZQ

01.

dal

di le

ognuna Soc

è valido

geri-

o no.

numern

usare.

di chiavi

un

insieme

lunghezza è il tempo

di ll1

bit

dinamico n.

Descrivere

di esecuzione

è

l 1ClllCClC

semplicetnente lllOllO

S rappresentato una della

un l11CI10

SpùZIO

do una

procedura procedura

array

di Cl/

Ltll

bil illT l

tahella trovi

il mai imo

nel

casn

peg

iore

Un

elettore

c all

I. /ll

è che

ad

rispetto

U che

la

K

maggiur

di

questo

tabella

una In

elemento

nel

chiavi dello

parte

peggie i

hash

tabella

vale

limite

caso

richiede

to più meno

mentre

di

memoria

diretto

un

una

ridotta

essere tempo

solo per

dell uni-

piccolo

puo

ancora

richiede inedio.

il rei epa

per

è mo mnlto richiesta

la memoria

particolare. nella

dizionario

hash

a

01.

indirizzamento

e.

il l indirizzamento

della

con

elemento

hivve

nella

I è memoriuato

posizione

k.

codificare U di chiavi

U

I,

0.

...,

e le

m

l

posizinni

di un

hash

tabella

T0

..

in

1

.

ad indirizzan1ento

che

0

un

il tempo

per

l insieme

Inoltre.

calcolatore.

in un

memorizzate

chiavi, diretto.

di

un

piccolo

a causa

impossibile.

o addirittura

una

memorizzare

U è grande.

se l universo

la sua

li

Tdi

Ol

tempo

è data

array 01

inutilizzato.

possibili

ricerca

problema vale

diretto

le

su cosi

essere

K di chiavi

tutte

indirizzamento

l universo

diretto

per

e la

Con

tabella.

è vuota.

verso

O K .

con

l oggetto

è necessario

oggetto

memorizzare

tabella,

memorizzare

non

di un

memorizzati

che

piuttosto

oggetto si

essere

possono

Esercizi

12.1-1

tempo

nell array

dimensione

impraticabile.

disponibile può

T sarebbe

l insieme

essere

può

memoria

allocato

è ovvia

diretto U

irrili-- are

Quando

Ol.

dinamico

diretto

dati

della

posizione

solo

nell insieme

indirizzamento

e i funi

dell oggetto,

è richiesto

elementi

gli

elementn

una

la cui

pila

un

spazio

dizionario.

nel

dell indirizzamento

effettivainente

applicazioni,

direttamente

una

utilizzate

e iniDescrivere

su

uno

richiedere

elemento

dissi no.

gran

significativi

diretto

richiedere

dovrebbe

se un dato

argomento

dimensione.

usare

dovrebbe

di dati

struttura

a determinare

non

sua

della

dovrebbero

come

in un array dati

indirizzamento

ad

e Sz acw

addizionale.

T di dimensione

1imitatezza

x

n.

di queste

dizionario

dati

dovreb-

e Space

prende

chiavi

hash

spazio Ognuna

a causa

le avere

chiave.

contenere

possono

memorizzato

DELETE della

ie iro

Tabelle La

x

m

un

oggetto

Dei

cui

X

tabella

T key x

realizzare

che la sua

in

k

Tjk

Tfkey x

elementi richiedere

possano

Dat.e E

l indirizzamento

usando

è impraticabile

diretto elementi

e gli IxsERt,

e non

cancellare

dell array

Ogni

effettivamente DIRECT-ADDRESS-SEARCH T,

di

dovrebbero

indirizzamento

si dimentichi

Non da

ad

dizionario

un dizionario

l inizializzazione

chiave

NIL.

dizionario

distinte

del

Ol.

array

per

tipo.

tabella

operazioni

elementi

schema

NIL.

una

tempo

operazioni figura

del

dinamico

insieme

un

operazioni

necessariamente

all oggetto

All inizio

questo

k. Se

rappresentare

per Le

siano

le tre

puntatore

uno

aln-e

Tutte

Si desidera

T

ch ia

bit

realizzare

non

sateIlite.

un

di

satellite.

01.

memorizzate

Figura

vettore

un

senza

209

plll1l Il01

elelllr .IltO gcitire

di Dt .ILl

hi

di

l1 t. IV

tenomeno contlitto

solo

n

valori.

chiamato creato

La

memoria

collisione. d Ile

colliitoni.

richieit l

Fortunataincnie.

i

ill

tlCI ltt I

vi

ono

n1od

COll i polldeAtC.

tecniche

effic ci

per

risolvere

il

211

hash

Tabe1le

0

hk II k

hk

hk

hk

m-l

Figura

12.2

Uso

di

tabella

basii.

Le

chiavi

mia

hash

ione

fun k,

e k,

h per

corrispondono

it

corrisponde a

stessa

posizione,

porre alla

le

chiavi

e le

nel1a

posi ioni

Figura

12.3

collidono.

q rindi

It l

Naturalmente

la

potrebbe

cercare

Un idea

è quella

almeno

di

h deve

essere

output

hk

evitare

rende

Poiché tutto

del

che

sembri

un

per

risolvere

metodo resto

del

concatenazione.

collisioni

chiamato

Risoluzione

input

sicuramente

che

le

collisioni.

due

con

chiavi

di collisioni,

di

risoluzione

delle

un

hash

funzione

hash

è ancora

necessario

collisioni

le

Il tempo

di esecuzione

sne1odo

posizione un

di in una

posizione Le

lista

alla

puntatore j

operazioni

collisioni

del

sono

concatenata.

testa

se non

risolte

si

tempo

come

lista

della

vi sono

tutti

di

elementi

dizionario

tutti

nella

elementi

gli

facili

da

elementi

realizzare

che 12.3.

figura memorizzati

j contiene

la posizione

sono

gli

mostrato

collidano La che

nella

inserisci

corrispondono

alla

lista

con

di

ricerca

un

elemento

tabella

hash

T quando

le

anche

sarebbe

T lt ley v j

chiave

I

nella

lista

elemento. deve

x

-

.v nei .

trovare

a -.i,

essere

possa

hanno

e la ricerca



0 11

tnnpo

richiedere prima

di

predecessore

la cancellazione

ii analizzerà

come

lista.

può

si

semplici.

del

della

il te p

la rive ,,

Per

peggiore.

lunghezza

o

lo stesso

essenzialmente

hash

concatenazione

con

le

tempo una

la ricerca

hash

tabella á

per

Tcon

T come

sarà

L analisi

se n ed

in tendono

posizione

nel

il tempo

più

per iè

necessario hash

non

sono

il nwi rero

cioè

caso

u

calcolare

lista

usate

le lorn

hash

dell org..ionizzazione

tutti

per nel

prestazioni

che

tempo

concatenata

caso

dipende

nel

di ricerca non gli

Questa

ipotesi

si dice

di unifornritàsemplice

informatica.

richiesto

per

cercare

un elemento

c in

chi ire

l di pend

bis i o

riman. 1 l .

ll

corrispondono

le n chiavi

tutte

a

a uguale

maggiore

il tempo

in i g

che

si immagina

minore,

n. Cosi lugli

la funzione una

medio

essere

di lunghezza

si usasse per

può

ilfarrore

si definisce

memori - -ari

eleggenti

cioè

a,

è scnnfortante

peggiore lista

una

di

particolare.

chiave

n elementi,

memorizza di

In

concatenazione data

una

medio

in termini

espressa

all infinito

creando

che

m posizioni

iilm,

con

elemento

di un

con

ha h

dell organizzazione

prestazioni impiega

caso

pe- - o i

di c uell

è mi liore

Chiar 1mei

elementi.

peggiare. in media.

da quanto,

I, I un

Th4

elementi.

terminologia

sono

Il comportamento

l con

sono

nero

puntatore caso

dell organizzazione

carico

tabelle CHAINED-HASH-SEARCH T,

il

che

liste

le

caso

nel

di un

cancellazione

Se

in questo

conearenata.

rai. una

h ,

di esecuzione.

Data

alla

è O sr

X

r in testa

cosi

quanto

stessa

j contiene

posizione

ra1 elii i ish hl

esenrpio.

le

risolvere

stessa CHAli4ED-HASH-I NSERT T,

bidirezionali.

Il comportamento

concatenazione.

per

La

poco.

l alla

è proporzionale

peggiore

fra

sono

Analisi

mettono

Per

è j.

nella

Tj

posi ione

hash

i alore

concatenazione

per

coircatenazione,

cui

è O

l inserimento

per

caso

precisamente liste

Quali Nel

il

Tf/ l ey x

lista

nel

T h l-e x ,

aperto.

collisioni

x dalla

più

ben

semplice.

più per

Ogni

roncalena.ione.

per

1e chiavi

rurre

/

cancella

rimuovendo.v,

alternativo

metodo

di

h k, .

di esecuzione

si verificano.

introduce

co1lisioni

caircatenara

CHAINED-HASH-DELETE T,

hash

valore

lo stesso una

seppure

o

lo stesso

produrre

lr l ,

delle

ii ne

lista

Si

funzione

una

sempre

il numero

di

12.4

tutto

l dovrebbe

inevitabilmente

tecnica

la

Il paragrafo

del

Naturalmente

Perciò,

minimizzare

possa

presenta

dato

impossibile.

le collisioni

indirizzamento

delle

un

vi sono

è quindi

casuale,

paragrafo

chiamata

che

evitare

apprnccio.

di questo

senso

m, però,

le collisioni

che

Il termine

l idea

nel

AU j

modo

di

h appropriata. una funzione hash scegIiendo casuale , evitando cos1 collisioni appaia hash , l immagine che richiama stesso

obiettivo

numero.

bene

deterministica

progettata,

Il

h in

il loro

e tritare,

essere

dovrebbe

questo

scegliere

minimizzando

mischiare

ideale

soluzione

di raggiungere

Risolu

una

coiitiene

dellu

l in 61 clo

fi st

line

iolte

Itaslt.

tre ùalla

luh

ll

/I

i

Capitolo

lista

Tabelle

12

T jh k .

accedere

alla

di ricerca, le loro cioè

Mitterido

chiavi

elemento

uguali

con

tabella

richiesto

T hl due

ha chiave

di elementi

medio

lista

che

casi

k, nel

calcolare

per

nel

la

esaminati

sono

con

almeno

algoritmo

a

se

è senza

successo,

successo

trova

tabella

tutte

hash

in cui della

O m Im

le collisioni

risolte

sono

funzione

hash,

una

nell ipotesi

concatenazione,

per

ricerca

senza

richiede

successo

medio

della

analizzare

fino

carico

n

è u,

n/m,

e il tempo

senza

alla

fine

per

cui

totale

Teorema

In una

122-1

uniformitè

uniformità

successo una

semplice

I corrisponda di

delle

una

m liste.

il numero richiesto

lunghezza

il tempo

il

hash

in cui

semplice

della

01

in una

calcolare

lista

tale ricerca

li l-

122-2

Il tempo

Si supponga

una

le collisioni

sono

funzione

esaminati

hash.

risolte una

trovare

il numero

tabella,

di

lunghezza

una

con

D

nell ipotesi richiede

successo

ricerca

medio

I più

la

di tale

successo

successo

inserito

ogni

è i

della

1 /m,

lista.

il numero

in

lista

e cosi

in

cui

il numero

modo

anche lista

Il

numero

122-3

che

va

la

media,

l elemento medio

che

l Esercizio

in

costante.

nel

01

media

Poiché

12.2-3

con

caso

e

la

peggiore,

tempo

01.

di

è li k

fine

sugli i-esinto

di elementi

casuale

h per

m. Qual

è la cardinalità

5, 28.

risolte

k mod

media

definire

la corrispondenza

è il numero

di

19,

20.

15,

33,

concatenazione.

per

v,

medio

hv

y

di

di collisioni

hy

12, La

17,

10 in una

tabella

tabella

hash

ha 9 posizioni

in cui

e la funzione

9.

Dedurre

de11a

il

tempo

medio

è lo stesso

Suggerimenro

mostrare ordinamento

una

per

se i nuovi che

ricerca

con

elenlenti

il tempo

successo inseriti

Sono

medio

di qualunque

Il professor

Marley

ipotizza

che

se si modifica

prestazioni mantenuta

con

in testa

di ricerca

con

il

metodo

o in codh

successo

della alla

lista.

è lo stesso

per

lista.

si possono

ottenere

lo schema

ordinata.

La

per

la ricerca

con

come

allocare

modifica

dei

miglioramenti

di concatenazione del

successo.

come

professore

la ricerca

sostanziali

in modo

senza

che

modifica

successo,

ogni

lista

il tempo l inserzione

di e la

cancellazione se 122-5

Suggerire hash

stessa

una

posizione

collegando

lista .

è aggiunto.

Per

un

della

libera

La

oppure

in una

due

dovrebbero

direzinnale

lista

una

ten po una

tutte

elementi

gli

del La

ur

libera

che

elemento e della

dizionarin

lista

la tabella

Si assuea

e, inoltre.

o flag

Ol.

dentro

inutilizzate.

le operazioni

medio

lista

per le posizioni

bandierina

Tutte

puntatori.

richiedere

o è sufficiente

memoria

libera

memorizzare

possa

puntatore,

e deallocare in una

quando

n elementi

esaminati

che

concatenazione

esecuzione

elementi

esaminati

alla

hash

T di lunghezza

deie

e li tu

essere

bi-

semplice.

è

,g -i

.

i

il

tempo

veda

in testa.

è lo stesso

medio

di elementi

te

12.2-6

-E

media

eseguite

è

hash

media

la procedura

successo

funzione

te chiavi sono

qrialunegue

di

equamer

piuttosto

con

elemento

si pretende

in

alla

di ricerca

alla

nuovo

esaminati,

media

lista

medio enda

sia,

assuma

in coda

è I più

poiché

di elementi

lunghezza

o in

cercando Si

elemento

il tempo

testa

con

sta

memorizzate.

nuovo

che in

si

una

qual

inseriscano

hash

di

a.

concatenazione,

per

ricerca

che

n chiavi

mostra

è stato

media con

i

chiave

un

inseriti

sono

cercato

la

delle

12.2-3

durante

l elemento

che

inserisca

INSERT

elementi

ricerca

assuma

qualunque

Esercizio

Nel i nuovi

in

tempo

tabella

e. di conseguenza,

si

richiede

essere

Om

successo

senza

è 81

Si

sia

Capisco-HASH

peggiore

bidirezionali,

in un array

precisamente,

delle

probabile,

richiede

caso

possono

di usare distinte

per

è il fattore

122-4

Si

sono

dizionario

le collisioni

n.

Dimostrazione.

nel

nella

posizioni

si ha n

equamente

richiesto

medio

di una

esaminati

è

m posizioni.

tempo

media

per

hash,

delle

k è cosi

di elevamenti

incluso

funzione

qualunque

chiave

La

medio

della

a una

12.2

tabella

tempo

di chiave

qualunque ricerca

01

di

tabella,

di

in media

n chiavi

Nell ipotesi che

il numero nella

la ricerca

Quindi,

le liste

del

Se

di elementi

tempo

quando

Più

probabile

Ol.

richiede

le operazioni

u.

Dintostrazione.

analisi

questa

213

Esercizi

semplice 01

n/in

canceIlazione,

un

di

al numero

proporzionale

l inserzione

12.1

uniformità

è il significato

Qual

e

verificare

per

la ricerca

la ricerca

hash

daI1

controllati

primo,

secondo,

funzione

l.

Teorema

tempo

nella

a l . Considereremo

nella

chiave

Ol

il numero

di elementi

elemento

In una

. si consideri

i numero sono

il tempo

parte

hl

posizione

cioè

nessun

da

hash

Mostrare

con t

ie

vin,

AU

cnrrispondnno

concatenazinne

richiede

vi è un

sottoinsieme

allo

itessa

nel

cvsu

di

un

peggiore

tempo

che

i onsiste

n che

U di dimensione cosi

posizione,

l or anizzazione di ricerca

hash

8 ahi .

i rn

a

che

di chiaviche

12.3

I

Funzioni

hash

l

Per la

cui, lunziOllC

il tempo ll tSll

totale c

richiest O

per rd

-l/ iu

un t

ricerca Ol

con a.

-I

In questo

paru,.rzto

funzioni

hih

moltipliiaziotte

saranno

e quindi

si

e universale.

discusse

aliune

presentan

re

che

questioni schemi

per

la

ri uardano lor i

crcuzione

I,.t clef inizi ne per

di buone

divisione.

per

hash

Tabelle

Requisiti

di

Una

funzione

buona

ogni

chiave

fo

una

buona

hash

coms

1

p robabia semplice

l ipotesi

m

delle

di uniformità

in modo

posizioni

equamente

semplic

P

della

cioè

Pk

funzione

è la probabilità

hash

che

k sia

estratta. a

a. Alloraora

P

m posizioni,

è che

O,

j

1,...,m

1.

12.1

Sfortunatamente,

in eenèrale

h

p

l ito

Pd

Talvolta che

raramente

ma

sono

si conosce

numeri umeri .

la distribuzione

reali i casuali rea casu

n questo

caso,

P.

d distribuiti

l

in modo

mostrare

si può

Per

che

esem

io,

si su

indipendente

on

e uniform m

la funzione

-

11

l equazione

In pratica, rustica,

hash

bene

con

buona

e mizione

essere

usate

funzione

i

ono

tecniche

euristichepercreareu

Informazioni ioni

probabilità.

della

stesso

hash.

string

Per esempio.

e qualsiasi

U Un u

tesso

si consideri

di caratteri

Una

b uona

funzione

con

consiste

figurazione

dei

mo 1to simili,

che

gli

utili

nel

eccetto

identificatori pt

in

presenti

e pts,

infine

nella

che

c I,

esistere

il valore

ado

q

il valore nei

hash

siano

la

present n bel h

701.

m

Per

esempio della

primo

sia

i di i funzioni f

indipendente d

il divisione

val ori a va

hash

uniformi. che

hash

Per siano

lineare,

in

della

hash

naturafi.

c

a me

cui,

d

d

numern

l

.

scelto

è stato di

potenza

numero

è un

perché ngni

controllare

quanto

primo un

-000 ir

elen,enti

vicino

a

di ùimen.,i nei Où013 m.

intero.

la

tunzione

ha.,h

tabella

k come

chiave

2. Trattando

per

una

si alloca

cosi

soddisfacente,

esen pio.

Per

comune

in media

Esaminare

8 bit.

richiede

carattere

essere

numero

alcuna

hash

correlato

à

iù Il

ll metodo

di inoltiplicazione

si moltiplica

non

esempio,

una

espresso . pp, ..

inr,

essere ..

potrebbe

l28,pt

anche h

grande .

chiave

che , pp rep. entazione cotture

l28 .

.. Nel

I 16 d o tipn p

se

uito

è una

l insieme

i

0.

l. 2,

...

-kA

biSO .strin

o

in una

posizionale

14452.

Di

solitn

in

p e r intetpreture che

le chi wi

dove

oP

A pUo

oQ

adatta.

base

ualun ogni si .- mo

ue

a

chiave numeriieri

per

Un

. Coii oà

si

realizzare

la

la

rappresenta

1 del

una

di kA.

In br

,

1 3,

mod

mod

vantaggio

sceglie

P

è

d

la coppia co di interi in rappresentazione , ndificaASCII quindi.esprcssocomeun ...

q uest.

.si assume ..

sia

naturali,

numeri

I lhnellac e

I ha e se

soho

interpretato .. p

diventa 112

i

t naturale I

er

intero

Lm /-A

hl

h.. avi

h rush

valore

questo

n

frazion ria

risultato.

del

intera

la parte

m e si prende

i

Pria

passi. la parie

l e si estrae

A

0

A nell intervalln

in due

hashnpera

funzioni

definire

per

costante

una

k per

la chiave

funzione

chiavi

moltiplicazione

di

metodo

12.3.2 bel

naturali

delle

provando

h

12.4.

paragrafo

le posizioni.

tra

di chiavi

l insieme

r - o1 r-

su dati

scelte

chiavi

con

distribuiscc -reali .

hash

funzione

questa

risultati.

d à buoni

richiedere potrebbero proprietà , si potrebbe volere che e d d La proprietà nel

si potrebbe

precauzione,

con mente

d

701.

k mod

hl er uno

esempio, distanti .

definita

numeri

i,poichép 112et

.,.

in base

intero

come

h e I universo

se t

ta i. un

pt

a e ne

chiavi

assumono

Per

ent,,catore enti locatore

k f.

un

può

concatenazione,

con

hash,

tabella

una

.

di

esatte

a potenze

vicini

troppo

non

primi

da

chiave

modo

qualche

t

q

..

hashsh

o si usa a la scansione

me

,

valori

può te so

allo.

corrirponderw mo

4

p, i

Infamie . i .-. due,trin- h

di l. in base

interpretata adiacenti

caratteri

tra due

chiavi.

come

decimali

le cifre

tutte

da

di caratteri

suinga

i. è pi

posizione.

il resto

di probabiiità,

a pp licazioni funzioni

delle

funzioni

Q

scambio

dove

Questo ad

vicino

h as h in mo d o c h e sia

dati.

come numero

distribuzione

alcune

Interpretazione

i

per

uno

successo

senza

ricerca

Quindi

numeri

l e k è una

allocare

voler

di

di caratteri.

stringhe

Per

orti di quelle tornite da vicine corris p ondano

Molte

2

di m sono

valori

Buoni

o di i

processo

si supponga

minimizzare

stessa

che

m

chia i

Le

chiave.

della

decimali

numeri

tratta

dipenderebbe

non

hash

funzione quando

orti

simbo

come

dovrebbe

alla

derivare

nel

possa

calcola

guito

e particolarità

Si noti

la tabella

hash

h ashchesicom h h

talvolta

rappresentano

che

corrispondano

i c

P sono

,,

identificatore

comune

s

qua

la

mostrare

i bit

da tutti

dipenda

bit

sulle

sarebbe

a approccio r unque

su

i locatori

programma.

11o

id

altrimenti

che

se l applicazione

evitate

essere

in modo

hash

la funzione

le

tutte

probabili

esempio p

meno, i,,ni ,cati,

p bit

dei

configurazioni

dai

di probabilità

la distribuzione

che

a priori

di m. Per è dato

hk

allora

2,

valore.

f unzione

eareuna

u..., qualitative

uunprogramma.Èunfattocomunecheidentifi . in uno

scegliere

10 dovrebbero

identiche

12.1 .

oss possono

meglio di

LkmJ

soddisfa

come

se

poiché

si sappia

che

equamente

prevede

2,

di

potenza

di k. A meno

significativi

le chiavi

hk

essere

dovrebbe

non

m

valori

certi

si evitano

di solito

di divisione,

il metodo

si usa

Quando

è conosciuta.

non

di divisione,

operazione

è abbastanza

veloce.

khk j

, no nonèpossibilecontrollarequestacondizione,p

un

solo

.

hk

allora

ha. h

funzione

della

il calcolo

100.

è k

12 e la chiave

ni

dimensione

ha

hash

se la tabella

è richiesta

Poiché per

è

hash

m.

esempio,

Per

della

il resto

d-lie

l a una

chiave

la funzione

Cioè

in.

di k per

divisione

una

si fa comspondere

hash,

funzioni

definire

per

prendendo

k mod

h l-

otesidi di otesi

l Pk

di divisione

d l lii

divisione

di

metodo

metodo

Nel

ro a i e robabile.

e

ni chiave sia estratta in modo indipendente da U

ilità

Il

12.3.1

a pprossimativamente

a ciascuna c

ueho-

distribuzionedi

hash

soddisfa

p onde

n,

uniformità

funzione

potenza funzione

di

metodo 2.

di su

multi

i

mnltiplicarione

cioè

ill

2

pCf

nel

calcolatori

che

intero

modo

se

m

di

il valore

i ll 1lche

-l.kAJ.

kA

cioè

lA,

di

tr zionaria

pare

p,

Si

uente.

non

Tipi i

è criti,o. cn

poiché

ii oche

suppdnga

pui la

t din1

e

lconw. e un natura naturali.

i

significativa.

Il

valore

hih

desider to

di

p

hi

coniisti

lei

p

bit

più

ii

nit iillivi

ili

i ,.

bus

Tabelle

w Qit

che

casuale

hash

che

probabilità

Sia

PJ

b

all o

P

ir

bit

della

chiave

di

In altre

traxe

te perdefinire

k è moltiplicata

opport ma.

I p bit

desiderato

hk.

significativi

pii

il valore

per della

uita ir

su

me à

meno

bit

Irash.

fim-ione a LA

pari

significativa

2

La

J, dove

del

rappresenta ione 0

A

coi

I è fama

cosranre

il valore

prodotto

forviano

costante

A, con

Il

con

e hy

sono

funziona

meglio

vengono

A

che

1 12

è probabile

con

altri.

La

Knuth

funzioni

esempio.

ottima

dipende

discute

dalle

la scelta

qualche

valore

dei

su cui

caratteristiche

di A in dettaglio

dati

e suggerisce

- 0.0041151

nell insieme

casualmente

scelte

nel

una

che

mostra

0,

di

-. . -i. io

di un

1.

m

1, ...,

universale

classe

la probabii .

laprobabilità

è esattamente

t, -...

hash

funzioni

medio.

caso

E2.3 da un insieme

h è scelta

Se

su

òi n chiavi

che

che

una

coinvolge

particolare

,

dove

la corriipi ..-- -

per

di ..

medio

il numero

n,

di

è minore

chiave.v

ed è usata

hash

di funzioni

universale di dimensione, ,,

tabella

una

l.

l j

m

10000

e A come

mod ...

mod

Per

Di nostra -ione.

bene.

0.61803...

76300.0041151

1/I11, che

esattamente

H,

da

hifi -hi

-

è preci ara..-.

hy

hx

casuale

in modo

scelta

--

L coppi-

ogni

se per

cui

H per

h c

hash hash

funzione

è

buono

comportamento

h-

hy

1234S6,

10000

.

della

della

ltash

...

123456

l 51

valore

scelta 123j

10000

10000

qualunque

ragionevolmente

se si ha /

al.

per

0.6180339887

che

hk

funzioni

le chiavi.

prese

i5

Per

metodo

questo

.

universo

dato

aniversale

è detto

insieme

un

da

vanno

che

hash

funzioni

di funzioni

una

teorema

Teorema Sebbene

l

i

posizi, -..

di identir-,

insieme

qualunque

per

le

con

identificatori

gli

ed è la stessa

l . Tale

m

y perx

seguente

di

il numero

U,

parole,

collisione

moltiplica io

1, ....

0.

x. y c

se h x II incrodo

comspondenza

è piccola

finito

insieme

intervallo

m.

p bit

hk Figura 2.4

un

H

distinte

estrae

accada

dimensione.

stessa X

in

male

mette

ciò

descritto

nell equazione

allora

12.2 .

Sia

..J

con

distinte,

di chiavi h

usando

c,

una

Pòiché.

e 0 altrimenti.

per

.. .--,.- -e 1 ir

casus

variabile

. in. .o

definizione....-..

si ha

1hn.

probabilitè

sia

l/m.

E c,

l J

collide

di chiavi

coppia

1 J

y,

collidono

se y e

cioè

-

coppie

ogni

totale

il numero

C,

di

ni contenente

dimensione

L equazione

o chiavi.

la

coinvolgono

che

collisioni

in

chiave.r

taheli. ... .....-.... h

una

T di

fornisce

6.24

J E il

41.

g CT

Et x

l g X

12.3.3

Funzione

hash

n

universale

l m

Se

un

avversario

tempo

dispettoso

scegliere

potrebbe

medio

di

comportamento scegliere

tempo

di di

hash

nel

su tutte

medio,

easuale

modo

la

stessa

posizione,

hash efficace

cosicché

approccio,

calcolare

alla

funzione

il sok

in nv do

cui

sia

dalle

sottoposta

1tashing chiavi

hash,

a

universale,

di

la

scelta

è eli selezionare,

quest approccio du

una

casuale

classe

di

garantisce

funzioni che

in modo attentamente

nessun

input

casuale. definite.

particolare

si ha

m,

di Ma

situazione

chiavi

n

Poiché

l.

E C,

un tipo

questo

la dalle

scelte

allora

provocando

migliorare

indipeirdenre

chiamato

a prescindere

è di

funzione

che

v nno

mantiene

un

è seteplice

quanto

è di

un,.l classe

definire

,

..

dall avversario. Ia funzione Come

nel

provochi

hash caro sempre

al del

universale

gi 1 . t -. t 1Clle. È ab..a.,t..

hash.

di tunzioni

il massimo di

sequenza

r

ialore

di

hyte

scelti

l elementi hash

funzione

corrispondente

un

Ire

siu a caio

. minore

eli in.

gfall insiet1se

-.

,

Si

denoti 0.

I,

COll ...,

m

..f , i,i1. rii hiCStB

yCl

Cl . j.

L111

. . Nll 1

,

è che base

esecuzione

quicksort,

chiavi

Qualunque

Quest

caso

le

corrispondano

peggiore

memorizzate.

prestazione

L idea

che 8n.

caso

funzione

effettivamente buona

ricerca nel

una

scegliesse

n chiavi

Si

l......

.

una

,

i

d. t t t. i

R.

il h x

g i0

Cori

qucita

a,.v,

Ùcl

mod

in

.

l

.3

inizioilc, I 2.4

della

funzione

hash.

Unu

cotti

v

prestazione

si ha solo

se il compilatore

ecc

lie una

V

fusione hl

1n

clCI11Cllll.

La

classe

12.4

A definita

Dimostrazioge.

dalle

equazioni

Si consideri

i procede

modo

in

qualunque

valore

l equazione

hx

fissato

se a,,

di

hi

coppia

qualunque

analogo

e 12.4

12.3

la

di chiavi

differenza

a,,,

a

è

in

classe

universale

distinte.v, uno

di funzioni

assuma

y. Si

degli

qualunque

è esattamente

vi

a, è la soluzione

questo

è una

un

di

valore

12.4

ch

altri a,

soddisfa

Vo

y,

.

m

mod

ha

verificare un

vedail

questa

inverso

.Q p aragrafo33.4 .

di a, poiché cioè

per

sequenza

si noti

proprietà,

moltiplicativo

essi

. Quindi, d

collidono

le chiavi

o

che, m,

di a ,

ni coppia

x e y co llidono

la quantità

vi è un unica

di chiavi

una

mostrato

ni è primo,

poiché

e cosi

esattamente

valore

l unico a,

modulo

volta

x e y collide ogni

per

sopra .

Poiché

esattamente

con

non

soluzione

per

sono

di

l/m.

inserito

Quindi

consentendo

memoria. Esercizi

129-l

Si supponga

di voler

ogni

dove chiave

eseguire

elemento

è una

contiene

lunga

dei

presenza

una una

stringa

valori

hash

di

su una

ricerca

/- insieme

chiave

caratteri.

nella

Come

ricerca

lista con

si

di una

concatenata valore

un

hash

chiave

nella

hl

n.

della

inserire

la chiave.

U x

h 123-2

Si supponga pp, dove

la

di avere stringa

ivisione. 32

un

si può d di

al di fuori

numero

stringa

in

trattata

applicare

caratteri della

una

come un

come

il metodo

senza

stringa

usare

di rcaratteri 128

ba e

rappresentato

di r caratteri,

Come

della e a stringa s

memoria

come

tra

è facilmente

i

la stringa

parole.

hash as

corrispondenza

è trattata

Il numero ma

bit,

molte

una

e di una

numero

di divisione un

di

più

parola

metod

d

di macchina

di

il

in base per

numero

e in posizioni.

usare

128,

richiede

l indirizzamento

h k,

0, una

di

tabella.

stessa

senza

consideri

Si

una e/

rn 2 la stringa y

è una r

allora

x

versione

del di

può

essere

corrispondono

in cui

di

in cui f l ,in base 2 .

divisione

,-

. stringa

e y

applicazione

metodo caratteri

derivata

questo

da allo

proprieth

rappresentata una

dei

permutazinne

stesso ere

valore t delle

hash.

/ mod Mostrare

caratteri Dare

difticoltà

itt una

m,

HwSH-It

di hush. 5

123-4

Si consideri mod

Ln gA 61,

62,

63,

u na 1J 64

tabella erA

hash 5

di dimensione

rn

11

le pusiliotli

. C,,lcol..ire

1000

e uosa

funzione

currispo,ldetlti,lie

hash

si assume

la chia,

lr 4 illi,n

im0

2

repeat

o wi

chiave

e

if 7U1

4

then

w m return

5 i

i

h/.

j

3

else

6

i

l j

i

l

e 65. until

7 8

error

i

OVt. l f1 1D

in sllll i

la funzione

r

il nunu

includa hash

divent i

di scansiosre

/ , la sequenza

chiave

ogni

tabuli

che

cosi

per che

e I, è proprio

l

SERT T,

l

perché

Cosi

di

tempo e inserita.

.

posizione

se

stringa

esempio

funzione

una

come

o una

hash

input.

in i.ui

vuota

esse

la funzione

le

successione

richiede

deve

che

chiave

secondo

per

1,

n

...,

1,

0,

dove

recieche e

della un

che

pseudocodice,

contiene

1

l che

tn

di

1

satellite.,

informazioni

posizione 12.3-3

seguente

Nel

di

nr

1, ...,

si richiede

m

h k,

...,

pane 0,

aperto

1,

h k,

-

l

come

da 0

in posizione

dalla

dipende

si estende

da esaminare,

l, ...,

0.

sequenza

dalla

e5mninate

i dai

liberata

veloce.

più

una

il

ma seguire

occupazione

di

a parità

si trova

di

extxa

si esaminano

finché

tabella

della 12.2-5 .

Invece

recupero

aperto,

scaiisione.

fissata

che

m

permutazione considerato eventualmente

di parole

costante

Con

sia

il valore

calcnlare

1, ...,

e un

essere

può

l Esercizio

memoria

tabella

elementi nell in-

elemento

i puntatori. La

la

per collisioni

poche

una

si tutto

esaminare.

da

l indirizzamento

di posizioni

esaminare

già 0,

del

posizioni

più

di essere

la posizione

di posi-ioni

lista

cioè

della evitare



liste

alt interno

veda

o si trova

Quindi

altro

nessun

concatenazione

per

tabella

posizioni

si esegue

la sequenza

On ,

di

usando

Invece

determinare

Per

dalla

tabella.

posizioni

ricerca

. Ogni

vantaggio

trarre

potrebbe

data

di lunghezza

liste

potenzialmente

l inserzione

eseguire

Per

l.

è di

fornisce

memorizzati

non

puntatori

sequenza

la

si calcola

puntatori.

h

superare

aperto

dell indirizzamento

vantaggio

riempirsi

mai

inutilizzate

altrimenti

posizioni

H

è universale.

può

può

sono

vi

concatenazione.

la

per finca

memorizzare

si potrebbero

nelle

hash, lai

per

non

di carico

Naturalmente,

a

hash

la tabella

aperto il fattore

succede

come

Non

tabella.

è nella

non

che

si

Quando

finché

tabella

della

le pasizioni

Cioè

stessa.

o vu..

dinamico

dell insieme

sistematicamente

tabella,

della

fuori

dirizzamento

si

valoriori va

valori

m Im

y m

a ...,

a,,

possibili

probabilità

x

m

per

valore m

nulla modulo

esattamente

possibile

vi

a,

elemento

è chiaro

o

desiderato

memorizzati Per

sono

o un

si esaminano

nella

memorizzati

gli elementi

contiene

tabella

della

un elemento,

l elemento

tutti

aperto

elemento

ogni ricerca

ga x,

hash

aperto

Indirizzamento

Nell indiriwamento

di

r

ao xo

tabella

è uni versale.

Per

byte.

che

non

I.

0 e y

le chiavi.i

si considerino

Suggerimento

a essere

12.3

124

equazione

nell*

definito

h

di a nell equazione

a

componente

H

l insieme

da 0, allora

diversa

ogni

si obbliga

se

che

Mostrare

E23-5 Teorema

219

hash

Tabelle

h iih

la posiziaite

ogni

elemento

la nuova gli

elementi

l elemen o è vuota .

chiave nella stesso

tabella

della fino

a riempire

tabella che

T siano la contiene.

si

hash tutta

chiai i Ogni

la

220

Capitolo

L algoritmo

di ricerca

dall algoritmo successo in

successiva

assume

che

prende

come

chiave

l, O

chiave

una

della vengano

non

input

una

se

la chiave

NIL

inserita.

vuota,

poiché

sequenza

di

T e una

non

chiave

è presente

sequenza

k sarebbe

stata Si

tabella

hash.

k, restituendo

nella

tabella

di posizioni

la ricerca

Quindi,

scansione.

dalla

cancellate

tabella

la stessa

I è stata

posizione

posizione

le chiavi

k scandisce

quando

trova

quando

una

della

di inserzione

inserita che

li e non

La

procedura

l 2

j contiene

i

l I,

la

T.

3

then

5

i

6

return

i

j

dove

return

L operazione

di

si cancella

Quando

recuperare

ed

zandovi

era

HASH-INSERT

nuova

chiave.

Cosi

la tecnica

semplice,

definita

ma

un inten

da

realizzare

collisioni

alla

sono

nel

maggior

numero

risultati

migliori.

vengono

funzione in cui

Però, usate

non

i era

posizione

dipendono

da

inserirvi

soltanto

più

cancellate,

m

dal

di solito

chiave di

hash

una

non

produce

funzione

opportune

I, ...,

0,

hash

aperto

di

scansione

garantiscono

di sequenze

che

solito

per lino re,

lig.

di scansione

0,

calcnlare

la sequenza

scansione h k.

m

fattore

La

hl.

ri

scansione

rn

si potrebbe

1

l

una

aspettare.

doppio. permutazione

di

in prati

e i 0,

1, ..., sono

i di accessi.

Questo

c, e m sono

vincolati 12-4

l hashing

Il Problema

per

ci-

ir

cui,

tratti

ài

è un

non

lineare

hanno

la stessa

Ir I,,O

hk0



lineare La

m-1.

di una

per

poter

fare

mostra

un

modo

i

h l ,,

implica

meglio

selezionare

1 k

questi

i . Questo

porta

iniziale

determina.l intera

Hashing

doppio

sequenzz,

sono

quindi

usate

solo

i

te.

hl. t

doppiai

L l ashii g

i

h, 4

ih, l

usa

fu szione

una

mod

m.

lu eh

folla

tnrtna

ma

numero

i valori

di

-..

hash. parametri.

a una

forma

Inoltre,

m distinte

se

due

somalo le stesse. più

Tutte di

dal

quadratico lineare,

di scansione

sequnsze

le loro

in modo

scansione

della tabella

dell intera

per allora

iniziale.

posizione

uso

dipende

che

quantith

molto

funziona

esaminaté

le posizioni

è Thk

esaminata

costanti

c, e c, c 0 sono

ausiliaria,

hash

funzione

una posizione

prima

distanziate

metodo

forma

della

n,

mod

scansione

nella

come

successivamente



valore

richiesta

c, i

h

ausiliarie

come

è difficile

scansione

sia

1 /in.

uniforme.

hash

funzione

una

usa

quadratica k

i

dove

ha.

un singolo

come

e hashing

quadratica

1 ...,

e. come

di

Per

vuota.

e la scansione

lunghi

più

hash

funzione

di una

posizione

precedente ancora

era

piene.

i

quadratica

si sceglie

di uniformi

uniforme

approssimazioni

11nr

è

riempita

a essere

la prossima

sia

la

se

a diventare

tendono

approssimazione

Scansione

seguito . usate

posizioni

di

probabilità

posizione

Di solito

in/8. i posizioni

una

considerata

la nozione

generalizza

Ia funzione

delle

ogni

permutazioni

hash

in verità,

a una occupate

lt l , liaslt

vuota

da

è preceduta

stata

la procedura

in modo

confronto

buona

perché la posizione

occupate

memoriz-

modificare

vuota

essere

impossibile

la posizione

allora

funzione delle

qualunque della

marcare

fosse

devono

della

situazione

se

essere la

quella

concatenazione.

per

di scansione.

le tecniche

tecniche

una fornaith

è di

Si dovrebbe

è difficile.

marcare

potrebbe

l inserzione,

di ricerca

le chiavi

aperto

semplicemente

facendo

soluzione

come

di u tifornutà

L uni

Cosi

di r n..

i tempi

però,

delle

prima,

Una

indirizzamento

si può

durante

posizione

quando

e in pratica

definito

tale

ad

i, non

quale,

invece

ragione,

probabile,

sequenza

l indirizzamento queste

occupata.

una

hash

posizione

la

per

DELETED

si fa l ipotesi

di scansione.

tabella

wL.

trovata

facendo,

equamente

sequenza

una

/

di risoluzione

Nell analisi

una

memorizzandovi

tratti

n. Perquesta

da

chiave

speciale

perché

di carico

Tre

stata

il valore

da

chiave

vuota

qualunque

esaminata

doppio,

una

come

posizione

in modo

cancellazione

che

la probabilità

allora

vuota

è vuota.

dispari

n/4

a circa

cresce

di accessi

medio

se una

tabella.

nella

chiavi

se ie posizioni

Pero

tratti.

in lunghi

indice

con

posizione accessi.

1,5

in media

il numero

locazioni,

e ogni

è occupata

pari

richiede

si verificano

agglomerati

gli

indice

successo

m12

n

le prime

sono

sial

senza

la ricerca

allora

untilTg wioi in

7

con

posizione

m/2

n

se vi sono

come

conosciuto

problema si accumulano

occupate

esempio,

Per

un

presenta

Le posizioni

di ricerca.

la

con

di scansione,

sequenza

l intera

si

T h l -1 .

si raggiunge

finché

si

di scansione.

ma

realizzare,

primaria.

medio

il tempo

ogni

determina sequenze

Tm

la posizione ...,

T1,

T0,

scansione

da

è facile

lineare

di agglomerazione

aumentando

l

solo

usate

fino

Quindi 1 . Quindi

è T h k .

esaminata

posizione a scandire

m diverse

della

iniziale

lineare

via

le posizioni

a scandire

sono

scansione

La

fenomeno 4

la

usa

lineare

di scansione

il metodo

l ,

m

k, la prima

1J, e cosi

T jh k

circolare

la posizione

scansione

i k

if T j

1, ...,

0,

la chiave

1. Data

la posizione

Poiché h k,

n

m

1, ...,

0,

in modo

torna

j m

i

AHI

i

per

0

repeat

mod

U m

HAsH-SEARcv

la posizione

k

i

h

hash

funzione

scandisce HASH-SERCH T,

hash

funzione

una

Data

asserzione

questa

lineare

Scansione

senza

proprio

noti

j se

esaminata

terminare

può

22I

hash

Tabelle

12

sequenze

sonile

chini poiché

di

ag l -

di scansione.

i

222

Capitolo

12

0

aperto

indirizzamento

con

hash

dell organizzazione

Analisi

223

hash

Tabel/e

l 2 termini 4

ogni

per

6

posizione

elemento

7 venga

che

assuma

Si

di scansione una

probabile,

Figura

12.5

i,

1nser ione

nella

con

3 eh k

mo

è vuota,

9 cl e

posi-ioide

hashing

1

doppio.

kmod

l

dopo

questo

caso

14 -1

mod13

11 .

Poiché

che

le posi -ioni

Iw

si

tabella

una

1 e 5 siano

hash

3 mod

e 14 srate

di rens o

di

I i, la chiave

esaminate

e 13 inserita

14sarà

e trovate

aperto

dove

h,

e h sono

i,

, modulo

caso

funzioni

esaminata

posizione

m. Quindi,

la sequenza

la distanza, di

Il valore chiave

di scansione

h, k

da

deve

chiave

qualche

della

l/d

essere

k, allora

una

hash.

dispari.

Un minore

positivo

rispetto

ricerca

alla

della

modi,

La

figura

t t

qua

Per

numero fornisce

h, k

l

dove

andrebbe

chiave

il Capitolo

ni della

33.

Un

è scegliere

t

esempio

si può

primo

h,

e h,

solo

della

con

fattore

sulle

a indirizzamento

hash

di

numero

del

analisi

dall

di

carico 1/ 1

è al più

s recesso

se rai

ricerca

di una

n,

il

l,

irln

n

assumendo

hash.

funzione

che che

in primo

qualunque 1 per

d una

produca

restituisca

che

non

la chiave

contiene

e l ultima

desiderata

l ultimo

tranne

ccesso

o,,ni

st,cces.,o

senza

ricerca

In una

Dimostra-,io,re. occupata

frazione

assicurare

di

comodo in modo

per

divisore

esaminare

in modo

scegliere

hash

comune

ad

modo

di 2 e definire

potenza

tabella

massimo

un

è a una

posizione è vuota.

considerata

posizione

Si

definisca

questa sempre

un

sempre

un 0. 1, 2, ....

peri

e porre

il numero

cui

n

Peri

si ha p di

medio

occupate

a posizioni

i accessi

esattamente

Pr

p

m

k mod

è scelto

m ,

0,

poiché

al più

trovare

si poisonu



n posizioni

occupate.

è

accessi

in modo

che

sia

di poco

minore

di in

l o m

peresempiom-

Per

i0

esempio.

la chiave

o sono

state

esaminate

tutte

do

i o rappresenta

un

miglioramento

della

scansione

lineare

o quadratica

almeno

Pr

le posizioni.

0.

i

per L hashinz

l equazione

valutare

q si trova

12.6

t gip,. 2. Per

la posizione

risulta schema

che

iniziale

il comportamento ideale della

h, l

e la distaiiza del l hashin z

funzione

ha h

h, k doppio uniforme.

possono sembra

variare essere

in nsodo molto

usare

quindi

puo

l identitè

6. 8

q,. il

in

chiave.

5i

occupate

a posizioni

i accessi

l. 2,

si definisce

12.6 .

per

gip,

dello

hash

kmodni,

I

Ne

considerando

probabile.

cominciando

aperto

a indirizzamento

di accessi

medio

un

per h

che funzione

della

successo.

senza

hash

tabella

una

Data

iniziale.

12.5

significa

12.5

Teoret ta

in questo

la posizione

poiché

chiave.

dimensione

avessero

di taIe

veda

modo di n .

a seconda

o quadratica,

lineare

il che

di una

Naturalmente

ogni

di una

posizione

l uniformità

m come

altr6

scansione I in due

chiave

se m e h, k

Si

della

precedente

ricerca.

la

sequenza

possibile

o una

e l operazione

hash,

ideale,

doppio.

primo

è di scegliere

numero

variare

dalla

è T h, l

esaminata

posizione

prima

caso

dalla

l hashing

Altrimenti

tabeIla

condizione

intero

con

ricercare.

dal

dipende

possono

inserzione

La

è distanziata

diversamente

o entrambe,

esempio

ausiliarie.

hash

successivamente

ricerca

in una

fatti

ogni

Cioè

stabilita,

funzione

della

un

più

equamente

k è, in modo

in un organizzazione

di accessi

medio

di uniformità

1.

inserzione

è equamente

scansione

di

per

di chiavi

spazio

sullo

il numero

ora ipotesi

nell

accessi

per

di scansione

sequenza

possibile

analizza

Si

occupare.

già

ogni

un

al

schema

questo

chiave

ogni

m

1, ...,

0,

sequenza

di probabilità

la distribuzione chiavi,

di

In

uniforme. 1

di elementi

si ha

l.

u

hash m

h k,

...,

equiprobabile una

ha associata

chiave

l,

h k,

permutazione

in modo

è usata

scansione data

0,

h k.

qualunque

implica

che

funzione

una

usata

8 sequenza

m,

n

e quindi

posizione,

per

Si ricorda

medio

aperto,

l indirizzamento

in

espressa

infinito.

il numero

di m posizioni, con

Naturalmente,

nlm.

è a

tabella

in una

memorizzati

sono

se n elementi

che 5

all

tendono

n ed m che

per

viene

concatenazione.

della

quella hash.

tabella

a della

di carico

fattore

del

come

aperto,

dell indirizzamento

L analisi 3

indipendente. vicino

a quello

è

Qual

il

è n/in.

occupata Il /I

di

valore per

q cui,

per

i

l

La

prob,hilitb

che

la

prinla

posizione

cui

si

acvede

sia

Tabetle

Con

una

funzione

se

il primo

Teorema

hash

ancora

posiziòni

non

è ad

uniforme,

un

esaminate,

una

secondo

n-1

delle

se necessario,

sono

quali

occupata

posizione

accesso,

occupate.

è sulle

rimanenti

Si fa un secondo

in

accesso

una

Data

solo

l

l i-esimo

posizione

esaminata

posizioni,

n

accesso

è fatto

è in modo

i

1 delle

se i primi

equamente sono

quali

i

l accessi una

probabile

occupate.

Per

sono

a posizioni delle

qualunque

occupate

restanti

e la

di

m

i

ricercata

usare

nella

una

tabella

La

l inserzione

. .

inserita

nella

occupate

sono

Si può di una

state

ora

valutare

ricerca

senza

1 gip,

n

j/m

ilni

j

esaminate

e non

l equazione

saranno

più

Data

12.6 .

successo

se n me

0.

j

Dopo

scandite,

l ipotesi

n accessi,

quindi

che

n

tutte 0 per

q,

l, il numero

tabella

i

Eseguendo

di accessi

in una

ogni

chiave

sia

su

media con

ricerca

se I è la

fatti le

tutte

di scansione

sequenza 12.á,

accessi

di

medio la

la stessa

Corollario

una

in

di

ricnca

nella

n chiavi

seguita

I -esima

i

tabella

p-

chiai . k è al

pi .

si ha

hash

successo

...

m

n.

/ . Dal

il numero

hash, i.

i0

k segue

chiave

chiave

con

E

le n posizioni

medio

che

e assumendo

equiprobabile.

di una

ricerca

in/ m

medio

1

n, poiché

uniforme

hash

funzione

dell elemento

i/in

1/ 1 numero

...,

I, il numero

a

l

-. 1,2,

di carico

fattore

è al più

sisccesso

con

in modo

i

peri

con

aperto

indirizzamento ricerca

cui, Dimostra-ione.

-. . -

solo

ad

in una

a

nell ipotesi In generale,

hash

l

, 1

ln n

tabella

di accessi

medio

.

- -.

12.7

l

cui,

per

hash

i0

1 in-n

Kir

di accessi

è

dove

i limiti

Usanda

1 q,

è 1 i-esimo

1/j

H,

1n i

H

armonico

numero 1 dalle

5 1n i

nell equazione

definito

come

equazioni

e

3.11

i.

3.5

si ottiene

3.12 .

i0

l

QQ

IR.7

Q

m

m

l

n

I l L equazione a

ne

ha un

12.7

è necessario

terzo

a

e cosi

un

interpretazione

secondo,

con

intuitiva

un accesso

fatto,

approssimativamente

probabilità

ri

ne

con

dx

l/x

J nr-n

Q

è sempre

probabilità

è necessario

l

un

n

1 n n/ m

via.

C l 1n

Se

u è una

tempo

costante,

01.

ricerca accessi

Per

senza

L

esempio,

è al più

arichiede

11 1 12.5

12

inserzione

se1a

successo

Il Teorema

Corollario

il Teorema

12.5 tabella

è al più 0.9

pronostica hash

ll 1

che

è mezza

D.5

una

ricerca

senza

il numero

piena,

successo

medio

richieda

di accessi

al 90

cento,

per

il numero

medio

lignite

sul

Se la tabellu

le prestazioni

della

procedura

hash

ad indirizzamento

H is -Irsenia

in modo

di

immediata.

1.387.

al piii

1/ 1

Dimostrazione.

zazione al Il

più calcolo

Un di

una

della

chiave

11 1

a. del

medio

è piena

hash

Se la tabella

a

in una accessi

tabella in media,

nell ipote i

aperto

di usare

còn

f , ttore

di

accessi

in

una

con

ricerca

a meth,

hash

il numem

è piena

al 90 per

successo.

teedio

di accessi

in una

cento,

il numero

medio

ricerca

con

è nteni

successo è meno

di accessi

di

.55 .

funzione

haih

numero

elemento

viene

inserito

chiave

richiede

un i

nella

privata

solo

posizione

se

vi

ricerca

senza

trovata

vuota.

è

sparin

nella

successo Quindi

il

tabella.

Si

consideri

dalla

nun1ero

n eùiu

n

l.

mem ri7.di

di

accessi

in

una

ricerc t

con

successo

i. L111 po

pii

inserzione

3 l,

delle

chiavi

10,

11

ungendo

l indirizzamento

usando

lu

4,

17.

15.

di

n

lunghezza

usando

la

usando

l haihin

scansione

lineare. doppio

cvn

h. k

I

scansione I-

aperto

nt

con

con

quadratici mod

l

in

5

88.

tahelb

uno

ha. h

funzione

c,

1 c

e

c,

.

acCei.i W

medio

l

uniforme.

percio

seguita

2S,

22.

di c rico l2.4-I

una

hash

è

numero

Esercizi

k

di un elemento

L inserzione

a

di

10.

fornisce

l

in una come

2. Se è piena

I/

C

l ihoriOiL .

IZ.4-2

in

Scrivere

I

I

I

I . TI

.

I

lu

pseudocodice HASll-INSI RT

I11 CllllC llt

C

procv lur lli ill-Sl hRCli

H xsit-DELts F.

come

plC. VCJ ll10

nel

cielineala ll

pi. IClltl

VùlOIC

teito LpLClill

hash

i

h l-,

1 /,

0,

h k,

1, ...,

0,

il , k

h, k 1, l

m

hl,

...,

se h, l

che

la

ad

rispetto

è primo

Si

si veda

Sirggerimenro

posizioni. richiesta

con

senza

successo i calcoli

di

l indirizzamento si verifichi

non si

veda

12.4-6

e una

va

una

senza

non

successo

successo. con

od

di

la stima

in

dimensione in -

p n,

m

p n,

e

n eccede

quando

usando che

la probabilità Sug la

m

volte

il numero u

l/ajln l/ l

con

medio

di accessi

di

medio

il numero

carico

di

su m

asintotico

limite

zione

e si supponga

chiave

comsponda

posizione

dopo

il valore

medio

n chi

che

a ogni che

posizione.

ha

n

che

Dedurre

a.

la probabilità

ricerca

b.

in una

cadano

d.

successo.

Mostrare

che

esiste

P,

l/n-

per

che e.

di Stirling

l approssimazione

Usare

che

ogni

qualunque EM,

che

dimostrare

da

è data

posizione

particolare

2.11

1 tate

che

ll r

Q

per

mostrare

per

k,

che

e Il .

Q 1g .

c Ignl1g

Concludere

lpi.

c lpi/1g

l

il maggior

contenente

la posizione n g,.

equazione

c

costante

una I-

P,

che

l . Mostrare

contenga

che

la probabilità

k, cioè

M

che ne

di chiavi

numero c.

in una

--

P, la probabilità

Sia

con di una

di accessi

k chiavi

che

Q,

concatena-

/1g lpt .

O lpt

superiore

adesso

Occorre

inserite.

state

sono

limite

un

per

probabile

di chiavi

numero

il massimo

M

Sia

le chiavi

tutte

di M.

i siano

risolte

equamente

Sia

tabella.

nella

inserite

le collisioni

con

e.

ricerca

di una

di una

di accessi

medio per

buono

altrettanto

sia almeno un

eoticatenazione

nel/a

di i posizioni,

hash

tabella

una

geri,nenro.

probabilità

fattore

aperto

il numero

cui

di avere

-

indirizzametsto

a per

a due

uguale

sia

Usare

ricerca

hash nullo

Sia

essere

tabella

della

dimensione

alla

Limite

L2-3

a zero.

rapidamente

tabella

il valore

che

Mostrare che

di

hash

uniforme.

successo

ricerca

successo

con

ricerca

Si supponga

tabella

hash

Dedurre

una

in

in una

di accessi

e 718.

una

funzione

2.7 .

accessi

di 314

in

chiavi

collisione.

alcuna

consideri

Si

n

aperto

le collisioni

Trovare

di carico

inserire

l equazione

evitare

medio

a

parte

senza dovrebbe

SE Rcw

risposta

m

extra

ad indirizzamento

hash

tabella medio

è il numero

112. Qual

i fattori

per

e una

uniforme

hash

a

è il numero

Qual

supponga

Si

funzione

di carico

fattore

Ripetere

z2.4-5

una

di usare

aperto

La

di

aperto

ir di memoria

m

quantità

di n.

in termini Si supponga

deIla

dell insieme.

a indirizzamento

è la minima

Qual

di una

medio

il tempo

perché il limite

uniforme.

hash

gli

usare

senza

peggiore,

elementi

hash

tabella

una

con

l insieme

tunzione

con

a memorizzare

necessaria

quella

realizzare

caso

nel

O lp

in tempo

realizzata

essere

può

oltre di

supponga

quanto

12.4-4

SEARCH

extra

memoria b.

33.

il Capitolo

che

Mostrare

scansione

di posizioni

sequenza

m.

a.

la funzione

di

sequenza

della

permutazione

si usi

cioè

doppio

Mostrare

è una

1

se e solo

m.

mod

m

un hashing

con

le collisioni

di risolvere

Si supponga

12.4-3

*

227

hash

Tabelle 12

Capitolo

22á

che

Mostrare

Problemi 1

clgn E BI 12-I

alla

Limite tabella

Una

hash

di

l uniformità

Assumendo che

h.

Mostrare

che

variabile

La parte

di

la lunghezza

Finor

si

siano

numeri.

ma una 111CAlC.

in

la

sola

è

Si operazione

...,

1,2,

peri

n, la probabilitè .

2

è al più

ora SE zcw. sùgli

n

una

richieda

più

di 21gn

vm iabile delle

qualunque

Ia sequenza

cnn

Sia elencanti

usi

insieme

it itico

che

Nella

inserzione.

i-esima

denoti

max X

X

casuale

1. 2.

n inserzintsi.

di scansione

disponibile in

mo tn

dinamico non

Ignei .

Calcolare

O lgii .

è EX

la

Esaminare

la

Porre

richiede

una

quantità,.irbitraria

che

l operazione

di le

n

elementi

in

di Si ,svrsl

cui

tempo si

per eie

le

chi ii i

e Dt .i.u i

l re

operazioni

che

a.

che

uit t

ese ,.uiii r ipid l-

h.

Mostrare

PIOY ifl

i -

l,

l insieme

l

mod

in sia

0.

l,

quesito

lli .1

D I iO

potenza cchema

la chi ve

L. Se

è trovata

o se

la posizione

è vuota.

appropriati pC 10fi

i 2.

j

m e tornare

mod

al passo

di è u

...,

0.

j

cercare

m e i m

1,

in

...,

il seguente.

. e porre

i per

posizinne

i valori CllC

hl

0,

posizioni

del le chiavi

spazio

ricerca.

Q

j

Si supponga

si i

ricerca

con

hash

tabella allo

comspondere

faccia

h che dell s

il valore

terminare

lunga

più

schensa

in una

I- da cercare

chiave

una

tunzione

una

I . Lo

producendo

l insietne

clgn 1glgn

qtcadratica

di avere

e di avere

3. de

clgn Iglgn

Pr M

O lpt/Ig

EM

Scansioite

22-4

stntico

lavorare

di

consideri

da

dall

richiesti La

che

Si supponga

1/n. meòia

insieme

l ipoteci

fatta

preelaborazione

un

l/n-.

a 1glgn

Concludere

m/2.

n

con

elementi,

inserzione

l i-esima

accessi

21 n

21gu

Pr X

che

di

richiesti

accessi

che

Ricerca

Pr X

che

d.

12-2

che

che

di I- accessi

più

, la probabilitè

il numero

X, denoti

c. Mostrare Mostrare

mostrare

strettamente

f

W

collisioni.

m

mostrato

numero

il massimo

delle

hash,

n

memorizzare

per

Pr

Iiash

l/ r -.

casuale si è già

b

funzione

richieda 1. 2, ...,

i

per

è al più

accessi

usata

è

organizzazione

un

la risoluzione

per

della

inserzione

l i-esima

m

è usato

in

lunga

pii

dimensione

aperto

L indirizzamento a.

scaitsioire

5

dellù

i tanz i delle

osl inii

CfllClI 1 IIL ll Ill11 l

schema r,

generale

e c, per Ll llllll1 l

di

sc.msionequvdratica

l equazione 1 111

p ll/LOI1C

l2.5 . dell I

till tll l.

228

Capito1o

12

12-5

Hashing

S ia a 0,

1,...,

A x ,,

k-universale

una

h

m

classe

h x,

1, ...,m

di funzioni

1 . Si dice

sia

una

che

hash

in cui

delle

qualunque

Ji facomspondere

ogni

M è k-universale

se, per

m

sequenze

ogni

l universo fissata

sequenza

di lunghezza

I- con

U delle di k chiavi

elementi

chiavi

presi

da

0,

1. R

a.

Mostrare

che

se

b.

Mostrare

che

la classe

c.

Mostrare

che

contenga

anche

lt,, x

è 2-universale,

se si modifica un

allora

R definita

neI

costante

12.3.3

paragrafo

la definizione

termine

è universale.

di b, cioè

R

nel

non

è 2-universale. 12.3.3

paragrafo

se si sostituisce

hx

cos1

che

ogni

funzione

con

H

allora

e DELETE.

INSERT

una

al capitolo

nel Knuth nizzazione con G.

e Gonnet

12

hash.

il metodo M.

Amdahl

Knuth

90

sono

accredita

di concatenazione propose

l idea

ottimi

riferimenti

a H. P. Luhn per

risolvere

dell indirizzamento

per 1953

di algoritmi

l analisi l invenzione

le collisioni.

delle

All incirca

basati tabelle nello

hash, stesso

caso

vedrà

insieme

aperto.

Nella

variante,

casuale

accesso Dopo

la

o il più

principali

Che

cos è

In

un

sodctisf.ittri

le cui

buone.

Il Capitolo Il Capieolo

cui

per

siano

14

in

èostruiti

prestazioni presenta

nel

caso

una

tale

i B-alberi

l9 presenta

ad

secondaria

memoria

su

dati

di

basi

v flore

albero

vi..

proprietà

tale

Un

è un

nodo

Il

di

albero

ricerca

dell albero

state

e come

5.

nel

Capitolo

albero

binario.

presentate

i li

llO lo sotto

chi vi

bittar. ci

eli

campo

ad

nome. du key

ai

ricerca

ak

II

sempre

albe

l O il

CUi

meinorizrate

dati nodi

come

di

strutture

una

e ai

rispettivamente

pu t uro

I tltlicu

un

ud

Oltre

che

il

rappresentato

es ere

puri

oggeno.

radi c

nvùo

piccolo

elemento

di un

ricerca.

suggerisce

come

e p

ri,,f t

lei.

sono

alberi

il più

di ricerca

è organizzato.

I 3.1.

di

binario

albero de li

di

binario la

da

binario

i campi

un

in modo

i valori

trovare

come

o il precedente

i paragrafi

ricerca,

elencare

per

di ricerca,

il successivo

tmvare

matematiche

ricerca

di ricerca

binario

di

binari

alberi

degli

base binario

albero

in un

elemento

ciascun

cui

di

albero

albero

tigura

in

il

valore come

un

un

contiene

contiene

un

proprietà

nell

puntatori

proprietà

un

cercare

binario

Un, lhero naostrato

delle visitare

elemento,

o cancellare

Le

nodo

come

grande

inserire

di ricerca

di ricerca

O lgn . di

gestione

si

13.4

è O lgn ,

dischi .

come

ordinato,

altezza

un

la

per

binari

tuttavia,

paragrafo

8 lgit .

binari

alberi

gli

alberi

eseguite

casuale

in modo tempo

comunque

sono infatti

adatti

presentazione

mostnno

seguenti

che

degli

base

hanno

particolarmente

che

garantire

varianti

di

operazioni

RB-alberi,

gli

sono

che

le

per

peggiore

13.1

tuttavia

casuale,

modo

sempre

vi sono

peggiore

sono

di n nodi, Nel

di 8 n .

costruito

richiedono

dinamici

insiemi

si può

non

pratica,

nel di ricerca

binario

albero

sugli

di base

le operazioni

periodo,

di un

l altezza

tempo

un

richiedono

operazioni che

caso

lineare

catena

è una

l albero

Se

O lp .

proporzionale

operazioni

tali

n nodi

con

tempo

un

richiedono

ricerca

di

completo

binario

albero

tempo

un

con

peggiore

stesse

le

sull orga-

Su un

binario

albero

su un

di base

de ll albero.

all altezza

come

che

un dizionario

come

sia

usato

essere

puo

priorità.

operazioni

Le

di ricerca

albero

operazioni SUCCESSOR,

PREDECESSOR,

MAXIMUM,

M1NIMUM,

delle

molte

realizzate

vengono

quali

SEARCH,

incluse

un

Quindi

con

coda

sulle

di dati

strutture

dinamici,

insiemi

sug1i

definite

è 2-universale.

sono

di ricerca

alberi

Gli

ga,x b maòm, i0

Note

di ricerca

binari

Alberi

distinte

satellite.

con

dati ciascun

al

corrispondenti

CU 11po

p ldt in

modo

C i

all..

che

iia

231

ricerca

di

binari

Alberi

Esercizi

13.1-2

heap

La

7.1

Suggerinrento Figura

13.

I

Alberi

binari

ricerca.

di

Per

nodo

qualunque

x, le chiavi

nel

sottoalbero

sinistro

inario

di

che

contiene

4

Sia

ricerca

di le

x un

alte -.a

stesse

nodo

2 cor

6 irodi.

Un

b

albero

binario

di

ricerca

meno

efficiente

di

Descrivere

13.1-4

alte a

chiavi.

di

un

albero

binario

di ricerca.

Se y è un

nodo

del

sottoalbero

sinistro

di r,

che

Dedurre

13.1-5

nella

sinistro

non

più

figura sono

più

3 nella

figura

13.1

grande

della

chiave

bii1ario visita

di

ricerca

in ordine

radice

di

un

sottoalbero

tutti

in

mo do

è elencata

di un

tra

suo

sottoalbero

confronti

usato

destro

non

arbitraria

di n elementi

suo

Per

esempio,

sottoalbero

sono

una

binario

di

di elencare

sinistro

un

semplice

deriva

il suo

del

suo

visita

ih

e una

visita

ricerca

tutte

e non

fatto

ordine

T si chiama

che

sinistro

atiticipato

in

in un

ricorsivo,

dal

sottoalbero

ordine

le chiavi

algoritmo nome

differito

con

per

da una

a partire

ci nfronto ha. ato

al-oritmo

caso

nel

1gn

Qn

tempo

algoritmi

gli

qualsiasi

di ricerca

binario

albero

richiede

lg .

Qn

su

. equenza

peggiore.

di ricerca

binario

albero

su un

Interrogazioni

albero

chianaato

L operazione

della del

suo

CSSCfC questo

i valori

dei

IvoRoER-TRE -W ix root

Oltre

nell albero.

memorizzata

un

su

O lt

di altezza

di ricerca

che

e si mostrerà

operazioni

queste binario

albero

SUCCESSOR

MAXIMUh1,

MIYIMUkl,

COm2

si esamineranno

paragrafo

in tempo

l operazione

ltltctTOgQZIOA1

tCdllZZGtC

di una

di ricerca

binari

alberi

sugli

di SEwacv.

è la ri er a

di ricerca

binario

albero

su un

eseguita

comune

più

la radice

prima elenca

di un

e differiu

anticipza

è più

la chiave e quelli

elenca

un

costruire

per

ati

usa la pila.

la chiave

13.2

i valori

i sot .oalberi

albero

2, 3 e 5 del

non

uguali.

le visite

di n elementi tempo

un

peggiore

sottoalbero

dell albero.

2 del

consente

attraverso

amente,

entrambi

chiave

algoritmo

Questo

i nodi

suo

destro.

di ricerca

ordinato

Ana

di

sottoalbero

7 e 8 del

tutti

per della

piccola

è 5, le chiavi

le chiavi

vale

binario

sottoalbero destro.

elementi

gli

suo

simmetrico.

i valori

quindi

è più

5 del

radice

come

proprietà

non

a

della

di 5, cosi

stessa

dell albero

proprietà

la chiave

a,

grandi

di 5. La

piccole

La

13.1

caso

nel

richiede Perciò,

che

elegante

di

struttura

come

8 itl.

l ordinamento

poiché

simmetrico.

in ordine

pila

sono

puntatori

eseguono

che

una ma

complicata,

ordinato

in modo

la ri.posta.

visita

una usa

che

dello

e la propri à

elencare

per

esegua

che

se due

ricorsivi

in tempo

nodi

di

albero

hiavi

di

insieme

di ricerca

Giustificare

On

più

verificare

algoritmi

gli

usata

soluzione

soluzione

si possa

che

assume

che

una

vi è anche

ausiliaria

di x sono

binario

essere

può

semplice

vi è una

albero

in tempo

ricorsivo

non

alooritmo

un

scrivere

D

heap

dello di n nodi

albero

b

dell

la proprietà

tra

proprietà

di un

le chiavi

2, 3. 4, 5 e 6 sull

di altezza

21 .

17,

è la differenza

Qual

E3.1-3

16,

10,

l, 4. 5,

di ricerca

binwi

alberi

Disegnare

13.1-1

chiave possono

è PRfDECiSSOR.

po. sono

eseguite

essere

lt.

T . Ricerca

INORDER-TREE-WALK X I

ifxwwc

2

seguente

La

then

INORDER TREF.-Wwt.v lefr r

di ricerca.

3

stampa

un

4

INOR DE R- TRE

le

x WALK l igltr

un

puntatore

nd

un

nodo

vie

o l

Dato

puntatore

v

esempio

di ricerca per

della

induzione,

chiamata nodo

la visita

in ordine

figura

direttamente

iniziale.lu nell albero

13.1

simmetrico

nell ordine dalla

elenca

le chiavi

2. 3. á, 5, 7, 8. La proprietà

dell albero

l

di ciascuno

dei

cnrrettezza binario

due

del1 algnritmo di

ricerc s.

alheri

per alla

con

radice

if.v

deriva. L aIgoritm i

then

l ey r

3

if

return.r l ey .v

k

ii i

th n

return

Ti r r.-St

i

else

return

Tnrt .-Sr

svcv right s .

r una

per

il figi

in sinistro

5

e l altra

per

il destro.

altrimenti

esiste

binari 2

/i

v.

una

e una

dell albero

k. ie

chiave

con

triodo

un

ricercare

k

TR r -Sz acs .i. Per

si usa

procedura

4 L

data chiave

chiave

in un a lbero

/-. Taa SE RcH

restituisce

ite.

binario

restituisce

In

La

almeno

l-cg r ,

quanto

nodo

x ha

key r

ed

Lo

del

del

nessuna

chiave

sinistro

non

kc v ,

di

graade nel

S

perciò

in le ..

radice

con

sottoalbero

-

picccl -1 - i la

è simmetrico.

TREE-Mzxtwuw

per

pseudocodice

è più trovata

essere

in x può

radice

è più

destro

w

è g

dir

in x è I ei- r .

radice

con sottoalbero

del

5

comtta.

destro

sottoalbero

sottoalbero

minima

aIlora

sottoalbero

con

sottoalbero

ogni

la chiave

sinistro,

chiave

ogni

del

minima

perciò

il sottoalbero

del

chiave

sia

TazE-Mu wuw

che

garantisce

allora

sinistro,

il sottoalbero

ha

x non

nodo

di ricerca

binario

albero

dell

proprietà

ricenu

di

binari

Alberi

TREE-MAXImUM x

13.2

Interro

il cammino

segue

oidi

a-i 15

g

h

o

l

ob

7 m

n

o dalla

.

albero 13

binario

di

ricerca.

a partiredalla

radice

rii i pi n

a ori

radice.

tutt e,i right.

Per La

piit

left.

puntatori

Il successore

det

cercare

la

chiave

13

chiave

piccola

teli

nell alb nlb

La

c/tiare

più

grande

è 20

nodo

con

chiave

15

è il nodo

,

r

I

i i suo

quin caso

sio

il nodo

successore cori

è il suo

chiave

15

è il

antenato suo

pi i

il cui

prossimo

x

return

3

d co

chiave

comincia

procedura

come

mostrato

kc x .

lle ddue

Se

la ricerca

nella

figura

chiavi

dalla

13.2. uguali

sono

radice

Per

su

Oh

la ricerca

continuanelsonoalberosinistrodir,poichélaproprietàdell c e non si possa trovare nel sottoalbero ey x ,

a ricerca

formano

un

continua

cammino

di TRAE-SEARcw La

stessa

che

è Oh

e

può

a maggior

parte

dalla

In

destro. radic

modo I nodi

d

1

while

2

discendente

nell albero

11

1b ero

b

d

simmetrico, inco

tr

se k t

e quindi

d

nodo

g

d

senza

nodo

4

else

in

modo

calcolatori

iterativo questa

trasformando versione

efficiente.

l

Un

x

3

ymp xj

4

svhile

è vuoto,

dell albero

seguendo . g

binario

i puntatori

2 3

lefi

ùi dalla

ricerca radic adice

la , hnn

h che

.. .si incontra

rocedu procedurarestituisceunpuntatorealminimoeIementodelrotto ilberii

in un

dato

nodo

TRee-MiiilMUM X 1

ha

se,

oppure

en.

Se

il sottoalbero

. .

..i. . ..

e

restituii-e.

procedura

e più. ,,-.

la chi ,

m

right y

e x

y w Sii

y

v pfyj

v

return

r.

come

x c. e

n o

. mostrato e rotto

re

lefi x do.a

c

c lefi xj

tvit.

di x è propri

il successnre

allora

13.2

il successore

del

il nodo

con

nodo

chiave

più

amministra

del

Per

15 è il nndo

i i- .. fi

nella

17.

chiave

con

che

de tro

esempio

A

nodo

del

destro

sot toalbero

Trar -Mlvus uw right r .

la clsiamau

Z attraverso

linea

nella

casi.

in due

è suddiviso

di TRAE-Svcccssoa

trovato

nella a i

erie

essere

l antenato 13. 2

più

hgura

si risi

le semplicemente cio

è gestito

prnssimo

l albero nelle

di.r

linee

il cui nodo

del

il successore

nella

p tdre

whi1e

return.v

di ricerca

bin rio

albero

seguente

ce. - i.-

il . u

TRE -Mwiwuw righr i

return

do

right v

e massimo

radice

La

chiavi.

le

.

e pii

chini

piccola

di determinare

lep x

x

ffsgura13. .Laseeuente .. con

di ricerca

binario

la più

con

consente

x

elemento

ttrovato

x è il nodo

w rii

if righr v

Il codice Minimo

di un nodo

..- ..-

S-

dell a beva.

simmetrica

visita



7

return

in un

nodo.v

determinato

dalla

TREE-SUCCESSOR x

l

è più

6

5

albero

confrontare

dover

di un

5 then

di un

talvolta

a trovare 1

riuscire

è importante

ricerca,

albero.

dell

k bey x

3

il successore

struttura

La

successore

di esecuzione

l ordinamento

distinte

sono

le chiavi

un

albero

un

di

secondo

successore

di / ey x . d

l a ricorsione

il tempo

un

Dato

x W NIL C k y key x

doif

di

e predecessore

then ITERATIVE-TREE-SEARCH A ,

binario

e eguit

sono

nell albero,

dell albero.

scritta dei

cammino

incontra, confronta la chiave I con -èpi . See I è iù picco icc 1o d i k cg v .laricerca 1b

h è l altezza essere

un

termina.

sottoalbero

discende

dove

procedura

i e.

nel

h.

fig

x che

destro.

albero

un

di altezza

discendenti

cammini

seguono

procedure

successore.

e segue nodo

ogni

le

entrambe

Poiché

Successore La

c sta right v

x-

do

2

tempo

estro,

od q

un

6g

o

su

right x

si hile

l Figura

d,, 3-7

figlio con

v tinchi dell

iiitistro

chi ive si in ontra

i proi edura

è anche

un

antenato

di.i.

Per

1 5. Per

l 3 è il nodo

con

chiave

nodo

che

è un figlio,ini.,-tro

un

Ti u -Succrssox.

e et .v trin . di, . .,

234

Il tempo un

di esecuzione

cammino

che

che

è simmetrica

o uno

alla

In conclusione

che

si è dimostrato

un

con

è eseguita

h è Oh,

la procedura

Anche

l albero.

discende

TRE -SuccpssbR

di altezza

su un albero

di TREE-SUCCESSOR

risale

tempo

13.3

e cancellazione

Inserzione

Oh.

operazioni

di

un

insieme

MtwtMvw,

Sewzcv,

dinamico

MAxmvu,

PREDECESSOR tempo

essere

possono

su

eseguite

albero

un

di

binario

ricerca

di

altezza

della

la gestione

mentre

semplice

è relativamente

elemento

di un nuovo

l inserzione

per

cti ricerca

binario

dell albero

albero

dell

amicata per

n odi

essere

deve

la proprietà

che

dinamico

dell insieme

medifica di dati

struttura

la modifica

che

Si vedrà

verificata.

ad essere

e

SuccessoR

La tale

in modo

ma

la

provocano

di ricerca.

binario

albero

cambiamento,

questo

continui Le

un

con

riflettere

13.1

e cancellazione

inserzione

di

operazioni

Le

rappresentato Teorema

235

o si segue

infatti

TRAE-PREoEczssoR,

teorema.

il seguente

ricerca

di

binari

Alberi

13

Capitolo

è in qualche

cancellazione

modo

h in complessa.

più

Oh.

Inserzione Esercizi

13-2.I

4

albero

In un

di ricerca,

binario

cercare

il numero

di nodi

esaminati

363.

si supponga delle

Quale

2,252,

b.

924,

220,911,

401,398,

244,

c.

925,

202.911,

240,912,

330,344.

sequenze

non

tra può

e di voler

l e 1000 una

essere

258,

362.363.

245,

363.

278,347,

621,

299.

381,278, 392.

Il professor binari

Volpini

di ricerca.

ricerca

termini

cammino

in una

di

ricerca

cammino

di ricerca.

e

B e c e

A, b c

di

pensa

363.

1

v

2

.i

3

l

foglia. B,

sul

Il professor

tre

cammino

Volpini

soddisfare

a11 affermazione

possibile

di una

Si considerino

le chiavi

C deve

un importante

scoperto

del

k in un A,

insiemi di ricerca

afferma

a

b

che

c. Dare

degli

proprietà

chiave

albero

le chiavi

C,

W

X

Usare

la proprietà

codice

di TREE-Svccessoa

binario

di ricerca

del

a destra

del

di chiavi

il controesempio

per

a

che

lefr x

x-

iight x

else y

.. i

9

piccolo

più

rigorosamente

provare

i wc

10

then

11

else

m

root TJ if

/ ey

l cg i

-

12

then

left y

13

else

right y

La

visita

in ordine

realizzata

La

è corretto.

simmetrico

trovando

eseguendo

it

eseguito

il I

in tempo

di un

chiamate

albero

di

binario

elemento

minimo

dell

ricerca

albero

n TRAE-Succrssoe.

con

Provare

di n nodi TREE-Mn che

13.3

figura

come

mostra

e

che

di altezza

a TaFE-Succzssor

successive

h richiedono

tempo

Ok

h

in un

a prescindere

dal

albero nodo

di ricerca

binario da

cui

Sia foglia grande

T

un

albero

e

sia di

y Rep .v

binario il

padre nppure

di di

ricerca

x. è

in

Mnstrvre la

più

cui che

grande

le

hi n I cg y

chiave

i s ivi o dell

è

tutte

le altre

eseguita

si p irte.

la

piii

albern

ii i.i

cliitinte. piccola Tpiii

un eli

chiglie piccnl

ci

n iclii T l,ci- .i

piii j.

i valori

si ass gttano

8-13

Cancellazione 13-2.á

w comincia

alle

Analogamente radice

dalla

dell

zcq

Torr-SA

procedure e segue

albero

un commi

no

è

On.

k chian1ate

TaEE-INSERT,

poi

quest al oritnto

Come Provare

opera

la TaEr,-lr,,sF

essere

può I IUiv1

linee

13-2.5

m

il

e IreR tw -TRE -SE e , 13-2.4

nell lhcro.

appropriata

posizione

key x x

then

8

professore.

dell albero

nella

YJIL

l cg -

if

i 13-2.3

da

X

dOyE

7 di

a sinistra

tripla

qualunque

alberi

binario

le chiavi

inserire

in modo

f. .p f,

f Tj

root 1llC

5

la ricerca

che

-

TRcz-l i

la procedura

zn

4

658.363.

aver

Si supponga

binario

.RT T.

6 13-Z.2

di

campi

T e altri

modifica

T si usa

di ricerca

v in un albero

sequenza

397,363.

898.

d. 2, 399, 387, 219, 266,382. 935,

numeri

TREE-li

a.

e.

seguenti

di avere

valore

un nuovo

inserire

Per

iu

un

in modo

tale

di ricerC su alberi primitive Oh. tempo h richiede di altezza

nperazioni albero

ai puntatori

che

- sia

la prncedura

inserito. TREE

INSERT

G

odo

è

di

binari

Alberi

CapitoIo

237

ricerca

E3

tratta

di TREE-DELETE

Il codice

diverso.

leggermente

in modo

casi

tre

questi

TREE-DELETE T,

then

4

Figura

13.3

indicano indica

Inser

il

di

ione

nimmino

dalla

il collegamento

wt

elemento radice

aggiunto

con alla

chiave

in

posizione albero

nel

13 in

per

cui

inserire

un

albero

binario

l elemento

è

il nuovo

di

ricerca.

inseriamo.

I nodi La

linea

grigi

pm.-l M

DISC

3

TREE-SUCCESSOR

w n.

if lefrfv

-

lefi$v

5

then

.r

6

else

.r m

right y

px

m

chiari

7

tratteggiata

elemento.

w zn.

ifx

8

then

10

then

roor TJ -r

l l

else

if

15

t

17

return

1-3 un

7-13

modificando

dalla

necessità

figlio

il

conteiruro

che

y.

13.3-2 il nodo

l3.3-4 esisos ituisc

ha

due

figli.

si .-

ni

estrae lla

il s uccisore chine

se

snstituito

coi

quello

di y. Il nodo

lo possa

nella

riutiIizzzre

complicata quando

nella

è restituito libera.

lista

di

è il successore

estratto

La

linea

procedura

h.

di altezza

tenrema.

13.2 e

IwscRv

operazioi i

Dvgv un

utilizzando

Oh

14-16,

il seguente

si è dimostrato

il nodo

linee

albero

modo si verificano

che

particolari

a

su

albero

din unico

insieme

un bimiriu

di

essere

possono di

ricerca

in

eseguite

h.

altezza

e

i cisti

cl e y di . satellite

non , di,-,

ha con

fi lio l,.i

inistro chiave

veda l Esercizio i i dati iatellite ie di i y. si

e

Si

uppong t

di

inserzioni

di

un

ll CI I

chi

in

cti valori

v flore ll c

i l O.

va

ricordai

veriivne

un

F mire

uncipiii

albero distinti, il llllllll. li

bi

della

ariii

ili

dl

11illli

baia

ri e vu che

D iiurrc

r.

Tut F.-lvsr u

prcwcdura

il numerai

esgininati

eli nodi qu indo

qucl

csaniinati v tliirc

equenzu

una

ttravcrio

costruito

è

linee

nelle

i è estratto

di y è in qualche

condizioni

.- se 4-6

linee

nelle

Quindi

Il nodo

ha figli.

se y non

di input

y è il nodo

Il nodo estrarre. ha due figli .

nelle

chiamante un

- se

L estrazione

delle

Infine,

u

Oh

vi.

e di.z.

fy

gestione

vene

di

Esercizi

13.3-f

se

di

la procedura

Teorema

di

Ni . di y oppure

adeguata

in tempo

Riassumendo,

coi

non

dell oggetto.-

I 7 in modo

tempo

è il successore

y è la radice.

o quando

è eseguita

Le

questi.

y da

il nodo

determina

oppure

i puntatori di un

, il contenuto

c

anche

copia

campi,

altri

l algoritmo

ad r il figlio

assegnato

w,.

s ha

Se

v

linee Nelle ha al più

di

J

key y

/ ey

then

l6

il conteiruui

-.v

if v z

14

13,4

right p/s

else

x

c

lefrp y

then

13

ura

lefi p y

y

12

,

pi

mx

if p v

9

Fi

sn.

o rigiv -

wc

if lefi .-

l 2

la

per i

it

ito

ricerca inserito

di

binmi

Alberi

13.5

Lemma

5 I , I,

Sia

...,

che

rappresenta

S

k

k una

k,,

successo

Un

21

G.

9

4

25

z

7

12

3

10

19

25

29

19

G,.

17

6

poiché

26

18

è p

S

29

4

I

Pr

t2

9

s

prova che

...,

l

là.5

birrario

di

1 due ricerca

G, alla

fino

e L, cfr

chiav e

verifica

con

il minimo

tra

si i , sia

Pr

1H

alla

un limite

dare

per

1n si. Poiché

degli

piccolo

n pm ve di Bernoulli, elementi 4, k.. lli.

probabilità k, k,

L.

prove,-.,ano da come

I , è indipendente

....

p

che

probabilità

5

i p-

ll H .

Il valore

vale

6.6

il Teorema

1, per

p

S

pH

l-In

contengoi o

k,

soddisfa

. 66

12

insiemi

se k, è più

prova

la probabilità

S tramire

dell insieme

la cardinalith

b Figura

4 32

e p

armonico

numero

I n-esimo



dove

nell i-esima

H

p

gS

o

13.1

i .

nell i-esima

19

L.

l

determinare

il Teorema

usare

di

atteso

k,

k,

ordinati

Si può

ogni l/n-,

si verifica

a sono

H

Si può

successo

indipendenti,

per

casuale

la v iabile

2.

1np-

un

insieme

l p

Dimostrazione. dove

1

p

S

l equazione

f

n e k

i

Pr

dell

e sia

distinti,

di n numeri

casuale

permutazione

la cardinalità

. l

Allora

chiavi

241

cerca

17.

le

chiavi

I nodi

à

con

su

un

chiat

czimmiirv

i in

G,

dalla neri

sorto

radice

di

im

albercr

- in

e i au di

con

chiosi

p /H. l p In n

p-

tn

In p-1

jp

l/n

segue

che

corrente e di

Z l. L, soirée

Al

fine

n numeri dei

La

rispondere

numero

nvn

è in

G essendo

piii

del

grande

mininro

corrente

l 9.

Le

strutture

di

si può siano

sono

uno

equiprobabili,

a questa

il minimo che

di camhiamenti

sia

in un

volte

si supponga

k, sia

è equiprobabile

in qualche volta

alla

quante

domanda che

medio

semplificare

inseriti

che

dei uno

cambia, l i-esimo

qualunque

degli

inserito

è lli,

dell insieme sia

k,. per

ranghi.

Teorema z ezza

f Per

i

strumenti

gli

per

limitare

l altezza

binario

di ricerca

di un

albero

binario

di ricerca

in

costruito

casuale.

che

le permutazioni

il rango

poiché

i possibili

dell insietae

Si supponga

Se tutte il minimo

numero

i numeri

scenario.

questo dinamico.

in media,

primi

il ininimo

per

modo insieme

ora

Si hanno

L

modo

dell analisi distinti

prababilità

i numeri

29

sinu ietriche.

numeri

n. La

chiave

di p.

dehnizione

dalla

J3.6

media

4i un

al/ero

in modo

costruito

iasu. l

è O lgn .

distinte

I, 2.....

di k, tra

i primi

Di conseguenza

il

Sia

Dimostra -ione.

l ,,

t una

I-.,

n chiavi

delle

casuale

pernn tazione

e sia

T l albero

è

l

g- e ii almeno

essere dove

K

1n

n

O

l

è l r -esimo

numcrn

nrm inicn

si

vcd

l Equaiionc

.i

c

il

Pnihlcln

i

Pr

l k,.

maui

vi , i.

i

Pr jc,j

t

T

Per

t/2.

13.2

ivt.

Q. E aillini 11110

1n ir. il seguente

lemma

mo tr

ch *

i

minima

la proh ibiliù

che

si i

no

to pii

renale.

Pr

Q

pt

112

ii11 1

Pl

Pi

j

AG

l,

I

tl

.

Si

i

j e À

11,i

k,

Á, per

v

lli

I

i

tl

242

Capitolo

dove

Pr k,

i n

vr s

rz,

S è definita

che

la probabilità

sono

aggiunti

condizione

come

casuale

decresce

k,

l,

li

si sta

minore

i

la probabilità

k che

quei

j ad non

più

i

n, poiché

decresce

di k,

grandi

si noti all

se

casuale

permutazione

sono

ragionamento,

questo

di i da

una

si

una

La la

ricerca.

numero

di

a.

ragionamento

un

Pr L

t/2 cui,

simmetrico,

Pr S

dalla

Pr d /-.

si può

che

provare

verificando

t

sceglie 1

Pr d / ,.

si ottiene

13.2 ,

elementi

r

T

2p

2p

Poiché

vi

1H,

dove

applicare

1

sono

H



l n-esimo

il Lemma 2Pr

la

disuguaglianza

2p

2p

al più

che

probabilità

nodi

numero

13.5 1

p

AS

volte,

1H,

e al

di un 2/n

più

un

per

armonico

concludere

e p

4.32

linea

si dovrà

11,

y ad

al valore

in base

che

binario

di

nodo

sia

volte

2/n.

binario

ricerca

Quindi,

l altezza

non

costruito

supera

n.

lHè

una

per

di ricerca

in modo

2p

in modo

casuale

media

tra

si alterna

che

. .l .

e x. Pe-.

e TRUE ogni

FwvsE

,

adx

lei i

J opz

volta

che

il n.w

-. -

-

e.

Mantenere

una

d.

Assegnare

in modo

lista

di nodi

con

chiavi

casuale

ad.v

left i

informalmente

e derivare

ad.v

uguali

ne1

quelle

- nella

inserire

ed

right v .

oppure

li. t . ..-

le prestw. .

Fornire

--

medio.

caso

dalla

Date

è minore

è allora

al

Alberi

13-2

ad almeno

pari

di h x ,

i i.

r. x e assegnare

nodo

sul

di

i -.z ..-

dell

la

dunque,

frazione

L altezza

casuale.

b xJ

booleana

-

ui.

u.

si . e

di

I

kc

inizialmente

le chiavi

n

la TaEE-Ir scRT.

durante

costruito

almeno

variabile

una

in . -.

5 se l-ey,.

linea

ricerca

si confrontano

sostituire

per

,

ni..

asintotiche

di

binario

albero

5 in cui

la linea

per

alla

Mantenere

soddisfa

H

n 2/n-

albero

n2

2/n

albero

qualturque al più

6.22 ,

l altezza

1H 1

in di

profondità

di Boole

delle

descritte

strategia

un

in

t/2 .

2, si puo

p

identiche

i-..

usata

l uguaglianza

vale

Se

le prestazioni

si trovino

afe.-.

inizialmente

della

prima

I eyjv .

11 se l e ., strategia,

viene

quando di ricerca

binario

verificando

TRE -INSERT

ogni

chiavi

sono

stessa

2Pr S

Per

con

peggiore

di

albero

in un

linea

della

strategie.

strategie

2/n- .

2/n

di TRE -IwsERv

asintotiche

degli

realizzazione

nella

problema

qualche

identiche

agaali

chiavi

con

pone

prestazioni chiavi

prima

segùenti

t/2 ,

disuguag1ianza

T

Inp

1

uguali

di migliorare

si propone

b. si

con

elementi

n

Se

le

sono

Quali

permutazione

di ricerca

bi tari

di chiavi

presenza

Ci

per

Alberi

13-1

rimuove

di un

con

insieme

di n elementi.

Usando

43

ricerca

di

Problemi

giustificare

il rango

sostituendo

di n

r/2

Per

13.1 .

Analogamente,

poiché

essere

può

k, pe ogni

se si estende

elementi.

più

che

e l,

nell equazione

non

che

elementi

binari

Alberi

13

più

O lgtl .

due

lessicografici a

stringhe

insieme

ordinato

di

stringa

h se vale

una

1.

esiste

2.

p

un

intero

a ,ago

...

a,

caratteri, delle

b,

,n-.

b, apparta.

a, ed ogni

ogni

dove

.l-ala

miaorc

a è lessicograficanrettre

1a stringa

che

dice

si due

...

b ,b,

e b

aftermazioni

seguenti

tale

j,con0 j min p,q ,

0.

a, h,perognii

che

.

l è

l.....i-

Esercizi

13.4-1

Descrivere nodo

un

nell albero

nodo

binario

sia

l altezza

grande un

albero

di ricerca

O lgn

di un

ma

albero

di n nodi

l altezza

binario

tale

che

dell albero di

sia

icnca

la profonditè m lgn .

di n nodi

media

Quanto

puo

se la profondità

di un

media

Mostrare

che

casuale.

la

dove

equtprobabile, ricerca

nozione

ogni

di

albero

i diversa

costruito

albero

binario dalla

in modo

binario

nnzinne

casual .

di

eli ricerca data

ricerca

di

di n chiavi in questn

n chiavi può

in

scelto

modo

binario

le possibilitè

peri

di

a sinistra

Data

una

albero

costante

binario

r

1, si determini

di ricerca

costruito

t in modo in modo

che

la probzbilitii

casuale

sia

almeno

che tH

l altezza

risulti

albero

se

I,

come

la regola

si cerca ce n, n

somma in

S essere

1. Sia

Per

un

usare I esempio

0. O l l.

la sequenza

10,

n,

dal

ùella

100.

Ji t

hinarie

t-, uro

t-. i -

di pro .

nodo

ntt

le iici

albero

pr

.

1

memorizzai

di strin he

insieme

con e

8 nj.

tempo

S un

13.6

a , a,...

a

la chiave

mostrare

figura

nella

mostrata

lessicografico

l

ill

re

nei i.v 4

usati

a quello

è simile

dalla

10110

10100

allora

binn ie.

2. L ordinamento

e 0. Quando

lessicograficamente dovrebbe

...,p. di cifre

stringhe

0 e a destra

a,

hannn

dell ordinamento

1 ,.5.

P I,

,P

l 01 I.

3. 13-.3

1343

per

I 0. O I I, 100

lunghezze

ordinare

in modo

di albero

paragrafn elencare

Suggerimento

scelto

es ere

cui

101000 di dati

10 I l,

i si va 13.4-2

se a e b sono

struttura

La binurie

i 0,

b, perngni

e 10 l 00

3

di

è 8 lgn

esempin,

Per j

essere

q e a,

Profoitdità

di ui

minore

media

di

tn

nodo

in

un

albero

binarie

di

in

cortruit

ricerra

m

casuale

di

1h .

13.4-4 3.4-4

Si

dell

consideri

input,

l al

tranne

oritmo

che

R i nowlzco-Qutcvson

per

l/n

pernn,trazioni.

cheopera

il

tempo

su

di

un isequcnz i li

esecuzione

inpirt

i

On

I,,nk

un

albero

bin irio

di

ricerc

e

l esecuzione

ili

R

s rx wizt .n-Qvicvsovr

del

f h p n

-. -

244

-

13

Capitolo

una

Descrivere

f.

elementi

di

binario

ricerca.

Sia

b

formula a.

b

per

e una

fatti

ms

differente.

essere

può

di

insieme in un albe

elementi

gli

In questo

n nodi.

con

diversi

n nodi

con

diversi

binari

alberi binari

una

trovare

bisogna

problema

asintotica.

stima

l e che,

cheh,

Mostrare

sono

i confronti

cui

in

un

ordinare

per

ad inserire

necessari

di quelli

stessi.

gli

degli di alberi

i1 numero

n

essere

numero

Il

13-4

gli

i confronti

in cui

quicksort

stessi

L ordine

devono

confronti

del

realizzazione esattamente

sono

-4

ricerca

di

binari

Alberi

1,

pern

n-I

bob,-i I- O Figura

13.6

chinve

di

Un

ogni

albero

lessicografico

r odo

è necessario, chiare solo

presenti

a.

sono

tracciare

per

le

are

I nodi

memori-a

deten rinata

minori

quindi,

maggiore

che

essere

può

scuri

1e srringlte

attraversando chiat i se

il cammino

le

nei

nodi

chiavi

per

binarie

nella

dalla sono

figura

corrispondevi

altri

1011,

il camminino

ti non

10,

radice

inostrare

sono

O l l,

100

a quel le

ehiai i

nell albero

e 0.

nodo. so1o

ta1i

b.

La

nodi

per

8x

albero Et x,

a.

ricordando

binario



dal

la somma

Capitolo

delle

5 che

la lunghezza di tutti

profondità

del

i nodi

cammino

x di T profondità

veda

interno

PT

di un

che

si denota

con

che

d x,

g xCT

la profondità

T

media

PT

di un

nodo

b.

si deve

Siano

n nodi,

PT

Lo

sviluppo

fx

g

il valore

T,e

P TR

l

1

in serie

di

f,

T

medio

di P T

i sottoalberi

sinistro

è di

On

e destro

lyt .

c.

Sia

P ir

la lunghezza

costruito

in modo

che

B .v

.

di f .v

Taylor

nel

da

a è dato

iniziale.v

punto

a ,

dell albero

T

Dedurre

che

n

.

l .

media casuale.

I di f in.z.

ordine

che

.

se

di

è la derivata

x

f

nwnero

l n-esimo e.

4x

x

Mostrare

allora

P Tp

Mostrare

generatrice .

ÁO

che

rispettivamente

T ha

di funzione

la definizione

in Tè

.

mostrare

per

l e quindi

B .z

dove Pertanto,

4-6

il Problema

.v8 x -

T.

Dedurre

generatrice

pb x n0

sono

s odi.

si Cominciamo

la funzione

Bx

Sia

Non

del

cammino

Mostrare

interno

di un

albero

binario

di ricerca

x

iniziale

di n nodi

che

Se

di

di Thylor

in serie

lo sviluppo

usando

Catalano

nel

4A

al

0.

si vuole.

invece

di usare

si può

di Taylor,

in serie

lo sviluppo

la generalizzazioni

usare

I Pn

P ti

gPi i0

i

1

n

1

.

se l d.

Mostrare

che

Pn

può

essere

riscrittcl

reale

numern 0.

intero

n e pualunpue

k,

si

1

nn

interpreta

... n

,.

conce

0 altrimenti.

COlllC d.

che

Mastrare

n-I Pn

e.

Facendo Pn

partizionare di ricerca

g Al

Pk

riterimento O ii

On

all anzlisi

.

della

versione

randomizzata

di quichsort.

concludere

partiziona

Note di elementi l insieme

che

devono

di ekmenti

essere che

ricadono

ordinati. nel

Ogni

nodo

sattoalbcro

di un albero radicato

l

O 1/n

.

che

Izt.

l insietne

,,

bn

4tl

hinurio

al capitolo ,

u

I

,- . , ,

in esso. I11oclo

ilidipetld iltc

vclio

li

f wlc

dc li

ai1tii

3 .

,.

.

-

i

enn ltclon

punk

i

RB-alberi

Nel

su un

. ere h posi come S - i -

di altezza

di ricerca

binario

di base

le operazioni

realizzare

per

un albero

come

13 si è mostrato

Capitolo

utilizzato

dinamico

insieme

in tempo O h . Perciò C DELETEIViSERT * . li ri ma se l a1tezza è grande allo è piccola Gli RB- I concatenata. una lista con ottenute a diventano quelle paragonabili prestazioni bilanciati di che consem . i ricerca di alberi di schemi uno dei molti rappresentano nel caso pe .in tempo O lgn di base degli insiemi dinamici eseguire le operazioni

14.1

sono veloci

Proprietà

degli

se l altezza

essere

che

puo dei nodi

cammino

non esistono,

di un nodo

Un albero

nodo

1. Ciascun Ciascuna

3.

Se un nodo

4.

Ogni

esempio Il numero

Si

i dato

lettnisce Il se

ricerca.

ucnte

allora

è rosso

foglia

sii.

è rosso

o il p vali r

campo

dell albero

di ricerc i.

binario

sulla

basata

impostazione le seguenti

se soddisfa

è un RB-albero

tn i l

chi ne. RB

proprietà

o nero. è nera. i t igli inno

entrambi

allora

semplice

can,mino

numero

l alNr

quindi

key, lefi, riglrr e p. Se un figlio vale NIL. Questi puntatore

color,

i campi

il corrispondente

di ricerca

binario

2.

altro

di qualsiasi

più del doppio

lungo

a nodi esterni foglie puntatori la normale è mantenuta dell albern

interni

per i nodi

in ogni nndi . il . con in più un campo binario re..., l,. d, Attraverso st. cx nero . precise che n . . u si ottiene dalla radice a una foglia,

come

considerati

deti. it

rosso cammino

contiene

dell albero

nodo

Ciascun

Un

oppure

bilanciato.

approssimativamente

sono

di ricerca

binario RaD

su qualsiasi risulti di un RB-albero

colorazione

U 1,

dell albero

RB-alberi

è un albero

Un RB-albero eofore,

MAXlM

SUCCESSOR,MINIMUlv1,

PREDECESSOR,

operazioni

neri.

da un nodo,d

una

foglia

nella

figura

14.1.

lo ..t o

contiene

sua discendente

di nodi neri. di

di nodi

che

è tnnstratu

RR-albero neri

tutti

lu h-altezza l mmu

su

un

cammino

i cammini di mostra

da

d l

discende iti un

r uale

nndo.v,

nodo

i t

iv i

non

h n no

l i h-ulterza

c in e

RB-albero

per

un

gli

RB-alberi

nd una

incluso.

il n edeiimo della risultano

st

numèro

di notti

raùice. casere

i

è cl1i lm

foglia

buoni

all ri

1

-

249

RB-alberi

Esercizi

1, 2...,

14.1 o nero.

albero

Un

ogni

RB

i nodi

con

neri

è nera

su.

foglia

in

nero

i figli

e quelli

di

un

rossi

nodo

in

rosso

Ogni

grigio.

sono

rodo

entrambi

iit

neri

ed

un

albero

ogni

un

nodo

Lemnra Un

cor

at.

contiene

con

Per

almeno

za di r.

Se

raòicato

prima

cosa

sua

a

b-altez

ha

si

i nodi

NtL

-1

hanno

una

ghhlrl

completare

almeno

meth

devono

essere

2 -

di

b-alte

a

uguale

a

0.

interni,

Di

radicato

lemma,

cammino

a

seconda

semplice la b-altezza

che

dalla

radice

suo

che

deve

foglia,

essere

14.2

sia

l I a sinistra

della

disuguaglianza

1

o h

2 Ig n

h/2

ed

applicando

il logaritmo

Se ecv, albero

conseguenza

immediata

PREDECESSOR, ottenendo

tempi

di

esecuzione

la proprietà

almeno

3

h/2

ut,

la

entrambi

ii

i lati

in

visite

destra.

e quella

sinistra

rotazione

lemma

due

ultime

Quando

è

rotazione

di

delle

chiarii a

tipi

sinistra

rotazione

una

si esegue

i due

mostra

14.

figura

La

nome

l ordiisansento

modit ca

u

-.i

nodo.i.

un

BT, y

IVllNlMVE1

è che

le operazioni

C MAXIMUM

O lgn ,

dato

che

possnnn su

un

degli es ere

comune

insiemi

dinan1ic

realizzate albero

su un di

/

i. RR-

ricerca

di

7

Roane T.x

Lr

v

P

P .,

,-

--

... ,

,- ,

,

rr

,

.

,

...

.

,

. L

,lt,

o

ercr .ir,ne

Rica -R n.,m i

.lie

fl,nra ioHe

slrlla

T, d ,. -..

s ...,

queste

non

il

prende

puntatori che

ricerca

simmetricu.

ordine

a qualche

il colore

puntatori.

dei

struttura di

deil albero

locale

operazione

r

e.c

anche

i

ba.

tempo

impiegano

ricerca

caebiare

è necessario

dei

la struttura la

catgbia

che

L operazione

cui

per

.a.,

di in

di

binari

alberi

sugli

proprietà

queste

e modificare

dell albero

nodo

Ia radice.

ripristinare

Per

14.1.

paragrafo

-i, u...

RB-albero

il più

ha

albero

interni

nodi

trai

alto

piii

Quale

l .

di questo

SUCCESSOR,

il rapporto

rapporto

rapporto.

è questo

C TREE-DELETE

Rin r-Ru u Una

b-altezza

1

esclusa

nd

cammini

con

RB-albero

in un

interni

realizzi

è questo

Qual

x nd una

nodo del

quella

possibile

che

n nodi

di

discendente.

ottenere.

un

Ig n

neri. e qual

possibile

numero

un

da

lungo

più doppia

più

di nodi

possibile

con

interni

TREE-INSERT

operazioni

secondo

ottiene

l albero

di nero,

Se la si colora

Rotazioni Le

haQ aalmeno meno

l.

P ortando

a

si

2

Per

in

nodi

figli.

colore

si voleva

dell albero. ad una

due

uguale

all altezza

fielio

almeno

il risultato

radice

della

il

anio

in x contiene

h l altezza

con

di x è inferiore che

rapporto

di induzione

interno

b-altezza

sua

foglia

una

piccolo

RB-albero

un

e quelli

rossi

sull altezil sottoalbero

il passo

nodo

figlio

cosi sia

un

concludere

per

dimostrando

del

conseguenza

l

di ciascun

induttiva

Per

e sia

bh x

induzione

per

è il più

Qual

al

lunghezza ad

nuntero

grande

a k

Descrivere

14.1-5

nodo.s

qualsiasi

e chiaramente

n. interni.

positiva

l altezza

il sottoalbero

su qualsiasi

neri.

o

foglia

0 nodi

.

.

1 nodi

una l

bh x

risultato

è il più

Qual

una

ha nodo.v

dal

corto

più

uguale

in un

dei

semplice

il cammino

RB-albero

in un

discendente

sua

semplice

1.

radicato

questo

altezza

che

l ipotesi

la dimostrazione nodi

2-

un

Dato

interni.Quindi l

di 2 1g n

il sottoalbero

essere

l

b-altezza o nero.

che

x deve

abbia

.

l

fl

x che

un altezza

Dimostriamo

2

applicare

può

1 nodi I

una

rosso

di x stesso, l

almeno nodo

al più,

interni.

di x è 0 allora

un

figlio

ha,

mostriamo

1 nodi

l altezza

rispettivamente

n

interni

in x contiene

Ciascun

Per

nodi

2

considerare

pb4 r -

la

E 4.1-4

Dimostrazione.

gbh x -

con

colorazioni

RB-albero

che

Mostrare

14.I-3

14.1

RB-albero

può

è eticlrertato

3 contenente

diverse

rossa.

sia

RB

cannnino

foglia Ogni

chiavi

altezza

rispettivamente

di un RB-albero

la radice

che

Si supponga

14.1-2

è ancora Figura

le

di tre

3 e 4.

Cl

è rosso

e fornire

abbiano

RB-alberi

risultanti

i tre

che

modo 45

completo iz

le fo lie

. Aeeiuneere

15

ricerca

di

binario

l albero

Disegnare

14.I-I

operazioni

posiann

essere

eseguite

su un

RB-alhero

in tempo

O

Igii

. yn

el

I

hi i

i

y

..c .

,

i,,

..r,rulr

I

imita

ii

r,r lire

stlrls,ic..

250

Capitolo

14

assume

che

il figlio

destro

pone

y come

nuova

radice

come

nuovo

figlio

La

non del

destro

y m

2

right x

3

ifleft y wwi.

4

5

pbl

6

if p i-

c

sinistra figlio

fa perno

sinistro

sull arco

di y ed

dar

il figlio

ag.

Essa

sinistro

di y

di x. assume

che

left y

m

p lefr y

right x

w zn..

then else

roor T

then

lefi p .r

else

rigltr p v

px

t

nel

t

Collegamento

v

Spostamento

di y. del

sottoalbero

sinistro

destro

di y

di x.

del

di.v

padre

ad y.

y y

x

di x alla

sinistra

14.è

illustra

il

Ricm-Romance solo

sui

funzionamento è simile.

deIla

Entrambe

e lasciano

puntatori

LEw-RotwtE.

procedura

le procedure

inalterati

tutti

sono altri

gli

Il

eseguite

campi

codice

in tempo

di un

14.3

la

per

01

Disegnare

1 RB-albero con

chiave

inserito,

si ottiene

Scrivere

la

nodo.

L

che 36

risulta

sull

dopn

albero

ancora

un

che

della

è stata

figura

RB-albero

14. I.

E se

eseguita Se

la

si colora

lo si colora

TREE-

procedura di

rosso

il rindo

pseudocodice

per1u

di un

inserzione

un

fosse

ricolorando

procedura

RB-1YSERT

a. b e c nodi della

figura

la rotazione

mbitrari 14.2.

destra

sul

rispettivamente Come

nodo

dei

cambiano

y d ila

fi

álbero sufficienti binario

che

di n nodi al più in cui

albero

qualsiasi

o

uinn lo n

di n nndi

On

1 rotazioni

ni no lu

ha

i lu

sottoalberi

le profondità

a,

pe

che

casi

eseguita

si

inserito

il nodo

La

si possono

maggior

in un

tempn

colora

di

del

parte

durante

presentare

alber6.

r T,.i-

TRcv.-I sw

RED

di

ydell albero

di a. l e r quando

3

è eseguita

puo

essere

Siiggeriitieirro

destre

trastormare

per liglio

ivhile

x do

ura

rotarioni.

un

i v ri

essere

IYSERT T

5

Mostrare

poi

le rotazioni.

eseguendo

gestire

per

ricerc i,

puo

Rica -Rotwl e.

procedura

COIOI X

Siano

ed

i nodi serve

dell

risistemazione

di nero

di

binario

albero

comune

di n nodi

RB-alLiero

in un

nodo

moditicato

RB

sinistra

14.2-4

chiavi.

Inserzione

1

14.2-3

clelle

alr ri

di

seepre i-a

stessa

la

proelucrwo

e se

se

INSERT

14.2-2

atri

moilijic

di y.

mg

Esercizi

14.2-1

x

LEpr. Rotore T,

sottoalbero

lefr p x

9

12

Rotazione

y

if x

10 left y

Inizializzazione

et.

8

I 1

t t

x

px

7

operano

rotazione x come

right x

then

figura

La

r

l

procedura

sn..

sia

sottoalbero,

Lcm-RovwvE

procedura

LEm-Ro ve T,

La

251

RB-alberi

trasform.ito mostrare qualsiasi

in un

qualsiasi prima

albero

che

6

altro sono

in unalheni

7

i

e

W r or T

REt

cerle rp .v

lr filg fg .i

itp .i-l then

y if

m

rightp Q s

jj zn

color yf t/1 A

CY lc l

f I

f

l

t

IC l

Bl.

at,s

r oliir y -

destro . 9

C

I é-

Iplj lXll i II i

ll

tCK

v.

Ill

t

caco

l

D

C 1S

I

t

C lYiO

I

1

C liO

l

O lp .

Per

rosso.

codice

della

la fase

di

253

RB-alberi 252

14

Capitolo

right p x

if .v

else

Il

x m

then

11

P CQSD 2

p .r

i

caso

B CIACK

t

caso3

RED

t

caso

x

Lzn-RotAvE T,



J -

14

color p x

15

co or p p x

16

Rtam-Rov tE T,

17

else

18

Il codice in tre

-

1-2.

linee

dopo

apportate

In secondo

left

e

I

Caso

3

scambiati

luogo

suddividendolo

esaminato

b

determinare

violazioni

quali

è stato

il nodo

che

si esaminerà

sarà

sembri

di quanto si devono

cosa

prima

vengono

de11 RB-albero

P CSSO

p px right

con

complesso

è meno Per

principali.

then

V

3

8LACK

di RB-INSERT

parti

a

M

al ramo

analogo

color roor Tj

2

il risultato

globale

i tre

in cui

e colorato

inserito del

alle

while

ciclo

proprietà

di rosso

nelle

linee

3-17.

nelle

-

CBSO

come

Infine,

terzo

come

vedrà

comportano

si

della

comportamento

di

proprietà

e ha figli

è rosso per

qualsiasi

zar.

nero ,

violata

wi.

cammino viene

da

2. La

Lo

scopo

del

z

iterazione,

punta

viene

oppure

r n..

un

nodo

rosso

che

whi1e

linee

nelle

prpprietà

ad

un

4

iterazione

ci

sono

che

rotazione

il ciclo

nel

ciclo

viene

La

uscite

inseritn

un nodo essere

di rosso

nell albero

questa di

violazione

nella

il nodo.i.

si inserisce

all inizio

ciascuna

alle

d

proprietà

x risale

l albero

termina. - ,

,....

vi sono

In realtà a seconda

che

in cui la

sia

Il caso á ad

cui

caso

il nonnn

tra.v

e p .v .

La

situazione

risolvendo a questo ripete

del

che

sono cos

punto il ciclo

casi

di.v,

ppi .

caso

1 linee Datn

il problema potrebbe ivhile

per

2 e 3 per

ipotesi

il colore

non

è la

allo l altrimenti

è

111fatti

llCfO

7-10

il padre

è mostrata

nella

ppv

J è nero,

e px

sotio

violata

I

px

tigura

adiacenti

proprietà

ed x il valore

pp r .

del

solo

il codice

importante

3 se

e quindi

ogni

di .r, nella

del

6 è eseguito si casi

è rosso

e la proprietà

l è eseguito e p p sj

e nlanienend il padre

di

r fg s

è ross ,

ili.r,

ic

si.ai. -,

. iene

a

esegui

-,

-

.

.

r

i in

.

C.

A

e weslci

nui r i

r,

i

ohe

rn

ctlberii

RB.

un

2 e 3. In

.i è violata

l

quando J di rosso,

la pri prii. ù i rosio

lo

ochdy,

3.

. Nella

linea

Il c isn

-. ,

-

m

il

esiste. zio

e y di nern

r

caio

che

passo

145.

etr

sono

che

i oltre

il controllo

v

tre di .s-.

nonno

p p .r

di x, detto

padre

altri

stabilendo

18

1inea

radice del

zio

si colorano

masi

destro

dalla

tratello

del

figlio fornito

di lavoro

garantita

px

agli

simmetrici

sono

i

è stato

il caso

che

essere

cui

tre

oppure

riglv p y x

che.a

assegnando

un

viene

ma

si esegue

il puntatore

rossi.

fatta che

proprietà

se y è rosso

solo

sinistro procedura

termina

dai

y è assegnato per

il figlio

Si è anche

nera

inserzione

ogni

sia p r

sinistro.

figlio

while,

4. Nella

sia linea

nella

1 si distingue

controllo

da considerare

di x, p x ,

sempre di

procedimento

linea

il padre

risulti

pr

radice

casi

è individuato

che

ppi ,

sei

3

Caso

Q

precisamente

più

il puntatore

c

lo stesso

potrebbe

colorato

Infatti, l unica

possibili

ed

J-2

nodo

è sempre

rossi

quando risalire

far

di

rosso

padre

due

il

linee

che

figli

x stesso

valida.

sempre

con

e si

mostra

x sostituicce

il nodo

violazione

è quello

3-17

rimane

rosso

nodo

qualche

dato

neri

proprietà

avere

può

nelle

di nodi

l unica

non

di tale

esempio

14.4

il nuovo

che

in quanto

Perciò

di x è rosso, un

dato

il numero

è soddisfatta figli

la

eseguita

che

e ha

figura

violate

essere

soddisfatte

dice

La

hile

del

esempio.

possono

nodo,

mostra

ogni

4, che

se il padre

ciclo

Per

dell albero.

che ad essere

dato

dice

14.4 a

mentre

RB-albero

il ciclo

è suddiviso

obiettivo.

loro

di un

di rosso

3, che

figura

violazione,

un

è violata

proprietà

questa

su

la proprietà

colorato

è la proprietà

un

il

RB-IwsERv

2 continuano

Anche

casi

raggiungere

per

procedura

l e la práprietà

proprietà

linea

le

sono

Quali

si spiegheranno

punto,

4, m r c uindi

..

I

rc

.

.. ,

.

,

ii

c te 4

l

C... camhi,n enti

ri1

I,

loviudi.l .

-

-,

di

colore

.

dei

nodi

.,

èd

..

una

r uzioi.. c

.

destra

cl ihbiatlu -,

c leI

.. DfC iCl- ,.l

al, . .i

etTcttuare

.

e

l.

LlllllOLIOI1 f

.

..

I,l

.,

l l 1l3l-lt.l.,l

4,

È10pi

ill

R8w1Sesi 14

Capimlo

Esercizi nuovo.v

C

A

a

D B

a

y 8

a

allora

non

NelIa

linea

nero

il colore

si è scelto

non

la proprietà3

nero

il colore

adx

assegnando

che

x

potrebbe

in.-- r.

5

i ii i

- P-r-h-

x

per

Y

y

143-2

.

dell zl

radice

alla

nero

il colore

si assegna

di RB-Issen

IS

i ia

nodo essere

al nuovo

rosso

il colore

si assegna

2 di RB-IRSERT

linea

Nella

143-1

Q--1

è il vantaggio

B

b x

A

,O,

E

y

a

a

p

Mostrare

143-3

14.5

ll caso

1 de1la

RB-IisERv.

pn cedura

La

3 è violata

proprietà

dato

e suo

che.v

padre

p .r

e

esse av

3 può

enire

.wlco

il nno

rn

o .v, che

è rosso,

e suo

se

pa -e

che

Mostrare

RB-Ivsezv.

procedura

è ines .

anclt

figura

ogni

la

4 dopo

se n

trastormazione

r

..

..

-.-.. .

cucce,,i

.-

un. .. -

ha almeno

l albero

1 alloro

--

in .

insnimenti

con

costruito

di n nodi

RB-albero

un

consideri

Si

143-5

.u. p, y, 5. e nelle la sua t - l .con

sottoalberi

in

la proprietà

mantenuta

sia

che

dei

nodo

ciascun

Etichettare

k.

sia

14.6

verificare

proprietà

vuoto.

di ciascuno

la b-altezza

che

Si supponga

ischi- - 1-- .

delle

successive

inserzioni

dalle

inizialmente

RB-albero

p 149-4

Figura

S in un

19,

risultano

che

RB-alberi

gli

3 1. 12,

-----

che

l esecuzione

non

è ripetuto

altra

volta

di

esecuzione

è il tempo

Qual albero

di n nodi

ripetuto

x. Per

si cui

eseguono

più

di due

ci sono

non

in quanto

ormai

della

esegue

il

caso

il numero

totale un

rotazioni

ùi

tempo

px

RB-It sen

in quanto

costa

volte

che di

while

del

l altezza

che

Dato un

il conseguente

totale

Il corpo

adiacenti.

rossi

tempo

verso

spostamento

il ciclo

while Vale

O lgn .

il czsg

se si esegue

può la

essere

di

Il ciclo

O lgn .

la

ripet

pena

i

t

14.4

Cancellazione

01

. Come

non

un

impiega

3 il ciclo

termina.

di

comune right

left.

Si a

1 asi .

2 e. 3 della c

caso

3 iir c vanto.

proc lu rr ccdura,

RB-I, B-lvst-,ta.

. Conle C

p

rota.

ione

simstra,

che

nel

caso

e I e

cnn

albero.

limite

caii

dei

T.

RB-albero

un

del

vulore

in

sentinelle

usa

è.

-i

1e

perii.

ni4

-*

ai

cancellazione

la

RB-albero

un

. t., Pi

a,.li. l... .-.

nari.t

i punt

tutti

RB-albero

i il P

ite. .i

gli

mentre

è st,icK

cofnr Nel

con

oggertn

-

e

im

sentinella

una è

i iIfT .

sentinella

alla

si nilfT

canspo

suo arbitrari.

valvri

assegnati

snno

puntatori le

usano

1, lag rr,prietit

3 c ,.iolata

si r

nel

si

quando

rei

dell

Il

un

nodo.

gestione Per

un

da

mndo

da

ge, tire

e un

nncto

t,,-lio

h

un

lio

vit.

un

di

r

rom-t .

ui,

come

n dna

y

a una

nndo

la

I l.2 .

paragrafo

di un

di

nodo

nodi,

n

di

RB-albero

cancelhzione

endice

nel il

veda

un

La

gn .

un

3

p.

nel

01

su

base

dell inserimento

semplificare si

di

operaziani

tempo

complicata

sostituiti

14.6 .

altre

le

per

si più

CBSO

2 siri

al padre.

il puntatore

per

del

radice

ivi

Figun g,

memoria

prevede

RB-

ehilà

che

osservare

2 o il caso

un

Per

caso

non

RB-alberi

è tiero.

TREE-Issai 1 con

nodi

due

più

procedura

la chiamata

-ItSERT,impiega

i

Quin

è O lgn ,

se

solo

puntatore

in quanto

termina un

la mppreien i-

RB-Issavate

etficientemente

realizzare

come

Descrivere

143-6

r

ll

nsentn

ud

attenzi ne

fare

dovri,

di,,i

. ..

as,.c.-n.i .-,

.

i nil T La

l

manipol..u

deve

RB-Dn

procedura

P

Cllè

delle

ll

I

ll

r ti .

COlll

proprietà

ll pllll

RB.

i

C

s

una

liti

ll

mp1

ll

i

ie

Ville l

li t .a

na

l

C

J

Csc

della

Ull

c

l

FO

t

l/

lllll

I

IKi

n

i,

t.-Dt

Tu

proceclura

i

li

li

i p--.. -

. ... ...

M 7

RB-alberi 256

Capitolo

J4

RB-Da.aiE I

nil T

if lefi then

y

else

y m

if lefifi

nil T

r m

else

x c-

if

else

then

root TJ

else

if y

-

Il

then

12

else

x

16 17

cfr

-

pv

x

rigkrlpÉyl

ifyc I-e

D

Reo w

color pl. ll M

COIOI p X

color

ar

eig

BLACK

x

st.sci

-

n

LEFT-ROTATE T.

21

Si copiano

l6

if color y

17

i dati

satellite

2

di y.

else

BLACK

return

sono son

tre

riferimenti

In secondo

rimosso

e

nodo

eseguita uan quan

Per

y estratto. nella

ci

unico

nodi

rossi

io di y prima

nil

è la chiamata

dato

Se

adiacenti. che

Il nodo

y fosse

le

caso

estratto

inea nel

7 assicura caso

Si

che

chex

può

fosse

adesso

e l albero

il p adre

c di.i.r

s sia

adesso ..

unn no nodo o interno i,

esaminare

come

con la

roce r p oc

il nodo chiave.

un .

che ... sia

-

in

cammino

E

qualsiasi

7

y nero,

r

caso

t

caso

-

t

CBCa

I

CASO

I

CQSO-

D

CQ50

-

l

C 15c

-

-

left

scambiati

linea

che

valide

è

La

da

iit..

ure

o

erara il i fosse

.

.ripristini

la

nella

incondizionato

che

a ad

1-22

ad un

nodo

è

proprie

J.

qual

il ciclo

extra.

Abbiamo , fosse

il caso

per

cnme

ad un se.v

verifica

2 si

il codice

figi io destro-

sempre

punta

linea

Nella

nera

sic

in cui,v

linea rimossa

l. ùel

de11 - ii

er

l.

23

pùni -

opp

è semp1icemente

in più

appropriate. nodo

nero,

un

figlio

iu

un

nella1inea

riportatn

nella

di nero

è colorato

caso

qual

ni d

ivi

1. Lo la radice

verso

u.

la propri,-.-

modo

la prnprieth

di troppo

u . ni d

cosi

facendo

è che

però

di

. ri

nodi

si estrae

Quando

ripristinare nero

e ricolorazioni

rotazioni

while,.r

toniito

nel

rosso,

la colorazione

caso

eseguite

es ere

possono

nero

nil T

nel

Dentro

u id

laa sentinella sentine

linee

punta

radice.

alla

diverso

nelle

1 .r

di

il colore

di

numero

in questo

violando

il compito

ha è di spostare

ivhile

finché

F

è soddisfatta. il problema

coniiòe-. nd

problema

1 al

si addiziona

la proprietà

x, allora

contiene

RB-Dccvve-Fixuv

procedura

ciclo

anche

che

se

cioè

a questo

ovviare

Si può

di y nell albero. extra nero

.. ult

la proprietà-

Quindi

he

t . ..

rimozione

la sua

in meno.

nero

un nodo

sul tiglio colorazione la sua stessa -doppiamente di nero, colorato essere

s potrebbe

al padre

colore

un

cammino

y ha ora

allora

C nero,

RB-DELETE

procedura

. 2-è

dalla

diverso

tiglio

radice di

o destro

sinistro

il codice

sinistro

per

pair

ll

il . . .-

in iii

un

Si nnntiehe

simmetrico.

un ..fiore

e con suo

put l.H,

di ricerca.

RB-DELETE

Fl iUP T,

I

while.v

2

do

x

piccolo

w root T if

x then

e cofr r r

il numero

m. cv.

del

I C uattro

nu nero iaii

di nel

segn lati

nodi

neri

cammino net

codice

nel da

canuisinii p .v

a.v.

sono

i latrati

da

y v

alla

nella

fr ura

foglia, ii

14.7.

che

Prima

è n

di

c

i l1cl i

p

cS ll11111-HA

lefi g s w if

6

e

con

si forza

altrimenti

5

then

contenesse

antenato

abbia

il nodo.v

che

che

da qualsiasi

violata

nella

d fi tcatanell albero

g namento

caso

i

7 di TRAE-DcLt.

rimangono

precedentemente nel

ll l T

si riferisce

ezzaèmo

figlio .

- E E- E-F xv

ur

RB b-alt

tutti

RB-DzcEvE-Fixuv

a RB-D

se y aveva

sentinellanil Tjseynonavevafigli.Nell ultim

linea

procedura

proprietà

nessuna

x passato

Sentinella

alla

al padre

puntatore

cosa,

prima

incondizionatamente

alla

y è r osso,

in questo

che

. P er

se x è mt. nella

il suo

T,

ecmE.

nferlmelltl

è eseguito

pt

differenza

con

verificare

per

r

se y è nero.

17

è estratto,

sono r

il controllo

terza

e e RB-D-

i sostitultl

SIQt1

se i è la sentinella

La

linea

ooilnodo, il nodo

e non

50110 .

luogo,

cui,

TzEE-DEI.Ev

le procedure

e l assegnamento

B DELETE.

l

tra

in TREE-DELETE

a vie

RB -DeLeTE. è stato

differenze

dalla

y estratto

il nodo

Se

v

qualsiasi Vi

caso

BLeXCk

C

COIOI- Y

3

c

t

roor TJ

c

ramo

al

analogo

case

RB-DEt.EtE-Ftvt v T..v

then

18

anche

Cà50

P. CQSc

right



BLACK

riglitfy x

-

color i

20

then

Em

u -

19

I

e

BLACK

color 1eft ivj

RIGHT-ROTATE T,

18

x

color right v

color v

left p vll

caso

Bl.ACK

Reo

color right tv

15

9

casi

c

pX

tben

13

nil T

10

14

C-

Z

11

right i

-

co or ia

14

if p y

13

then

lefi y

e

st.. ck

color left iv

10

pt-al - bl 8

if

9

TREE SLICCESSOR z

c pr

right p x

e-

w

8

c nil TJ

then 6

o righr --

2 3 4

LEFT-ROTATE T,

7

T,

righrfp xj colorjiv then-

vcn cr lr r v rolor p

oL, cv f.i-

m

er n

L

lliO

Clil

I

l

riCorC1i

che

ii pu ni i torr

v i ani gtAgi

ll tl C

l VL tlCI li

EX1I l .

All

LlChiO

111 Ll 1.1l

11ll lllCI

J i nvi1i

9

RB-alberi 14

Capirolo

e S

y

e

a

B

CASO

c

--- Il

nu

a 3

Il caso 5

y

z

Caso

Qual

il ciclo

Dentro p

il costo la

per

-

Icasidelcicloirhiledellaproce h raRB-DECEDE-F

14.7

-

ixt r. i .1 no d ii,tnere1tosonoqaellineri.

e

c

rosso

e sono

q, trelli

rap resenlari

da

chiari

grigi

c e c . Le

sono

lettere

a

che

qs elli

caso o

scant

che

implica

la

colore

tro

o il

ialt

ivne

ripeti

del

è il caso

ciclo

, 2.

colvrevreneronero

c di

ha

x,

m

cok

fO

B

v

n

n

e D

ed

.

alcuna

, c

-,

destra.

delle

4,

casé

Nel

d

degli

neridallaradiceuciascunodei

sottnalberi

alberi

RB .

a i

veriticare

2

count c , li

altri

sia caii

prima

Esercizio

il

che

dopo

i

ns,c

i

I

/

y,6.

ee

la

d

il

.

er

colore

l011l

quimli

IHlC1

L Sé glCCllClO

cicfc

h

ore

i

numero

trasformazione.

P Pt l.,lOI1C

l4.4-2

sll ll

Sllil

terntiita.

è2

, a ad

-i,

c.

n

FQ

proprietà

.

..

II

..

.

iolare

scii.a

rota ione

una

eseguendo

I

PlllllO

c è rosso.

il co1 ré

quctnto

alla

I,

In

di m do

nodi

sor,e

di i nitidi

RB-alb.ri

la

e al più

l.

è di Oilg.

e-Fisi .

terminare

di colorazione

iu

per

pro

dopo

eduu

Il c . o

tre rotazioni.

il puntatore del l esecuzione RBla procedura rotazioni. Quindi e senza volte di temp il anche e rotazioni, tre al più ed esegue

O lgn O lp

spostanda

while,

è O lp .

RB-Dzt.vE

procedura

è nero

allora

RB-Decevz.

143-3

Nell Esercizio

gli

RB- alberi

8.

12.

19.

38.

41.

chi ivi

31.

di un

r dice

della

se il colnre

che.

Mostrare

ni delle.

ù opo

di un

a RB-DzLv

3 e 4 fanno

delle

nes.u. .a

violata

ivhile.

del

l altezza

..u

. iv i.-tra

rotazion

sia

-lie

1 ri

ed

è nero

w di.z

dell albero

radice

condizione che

Dato

i

di in

per

A

14.4-1

termi,ra

i è

ui

Esercizi

, 1

11

li RB-

de

rosso

una che

senza

ciclo

ripetere al più

della

complessivo

esecuzione

proprietà

destro

- ini. tro

fi lio

In

arbirrari.

sottoalberi

u mo a

sia

essere .

r appresentano

p...

o ureico più.

. possiamo

delle

è

ini. zi

figlio

i suo

il fratello

la chiamata

senza i casi

tempo

un

impiega

DELETE-FIXUP

q

. n

quelligrigiscurisoirninodlrosnsie

per

il suo sv ed

tra

eseguendo

ed

della

di cambiamenti

costante

l alto

del

controllo

procedura,

si potrebbe

il quale verso

x nell albero F,eur.. Figura

i -he

mt

la condizii ne

a controllare

figlio

un

con

nodo.v

puntatore

di RB-DecHe

RB-DEcere-Fnev

di un numero

2 è l unico

e

del

.i

ad

della

totale

procedura

l esecuzione b

x è roseo.

alcuna

quando

di colori

di troppo

nero

al successivo

while

nero

nodo

scambi

alcuni

di esecuzione

è il tempo

è O lpi ,

a

nodo

i colori violare

si verihca

14.7 d

L assegnamento

RB.

terminare

x

pv

nuovo

4.

caso

il colore

eliminare

si può

px,

proprietà

d

a

x. Si i . .-

nuovo

ir è nero,

quancto

scambiare

un

è adesso

di.r

Facendo

n è rosso.

di

destro Y

h

neri

colore

un

come

si torna

quando

v senza

su

destra

e figura

17-21

4 linee

Il caso

ii

3 nel

il caso

trasformato

p

c del

si verifica

Si possono

rotazione

una

fratello

Il nuovo

s a

termina

14.7 c

è nero.

destro

figlio

eseguire

e poi

alberi.

3

con

I. il colore

caso

quindi

e figura

13-16

linee

il suo

ed

rosso

J

left iv

c

2 passando

while

ii

sia

while.

del

a

dal

ed

ibi

l- ,

nero

colore

un

i liire

al

e figun

aggiungendo

rosso

ciclo

del

l esecuzione

il ciclo

.i è

u

per

in ba. e

si distingunno

si toglie

w è nero,

w di colore

nero,

colore

rosso

era

originario

il p v

è nero

RB-DB.EIe-Fnuv

procedura

anche

che

Dato

neri.

si ripete al caso

se si arriva

che

x

b

linee

solo

Successivamente

px.

2

un

x con

lasciando

a x,

della

10-11

essi

ir è nero

il nodo

quando

2

caso

i.lie

nes.una

violare

j senza

di w, adesso

figli

dei

di x, uno

2, 3 o 4.

casi

dei

di w sono

i figli

entrambi

Y

Nel

n.

di

figli

dei

fratello

2, 3 e 4 si manifestano

I casi a

una

Il nuovo

su p v

sinistra

rotazione

eseguire

l in uno

il caso

trasformato

x

RB-alberi.

degli

proprietà a

e quindi

di ir e p r

i colori l

Caso

si è trovato

l RB-albero

3 1, l 2,

8 ics un

che

risultano

38.

41.

19.

dalle

RB-albero

è nero

dell e. eruzione

prima

dopo.

anche

ri ulta

che

c trvellaziuni

successive

in. erzio-

succe iive

dalle

vuoto.

inizialmente

albero

delle

alo,

ora

trar

nell ordine

chiavi

la tras Tnrnnizione.

neri

analogo.

dalla si

14.4-3

ractice

In quali l,

della

lince

RB-Di .u .tr -F x v

procedura

si potrebbe

o modi

esaminare

tic ire

il T

sentinella

pristino

l 43-5 . 144-4

e

e avere

i

ig

i neri,

si poiana

ic mhi ir

mantenere

I

il coclice

Sempliiicare il

puntatoiv

Li rr-R

di all

ragliai.

r

rr

biondo

una

sentinella

per

iii.

el

un altn

per

26I

RB-alberi

ciascuno

Per

14.4-5

dei dei

a ciascuno trasformazione calcoli

14.4-á . -á

a che

x sia

nodo

un

cancellato

di nodi

nodo

ha come

dalla

neri

ciascun

che

radice dopo

numero

la

c o c , usare

colore

nei

.

con

inserito

la pmcedura

L albero

RB-Da.eTE.

con

un

Quando o count c

count c

il numero

fornire

e verificare

j

p,,

inalterato.

la notazione

subito

14.7,

figura u,

rimane

suppon

S Si

della

casi

sottoalberi

e quindi

RB-IwsERv

risultante

a quello

è uguale

sia

iniziale

la risposta.

Giustificare

b

Problemi 148

Figura

14.1

Insiemi

Durante di

la vita

un o

dinamici di un

insieme

dinamico

è modificato,

che anche

ma

richiedere

separata nodo

5.

il nodo

poiché

si puo

S con

insieme.

nodo 7 già

Per

esiste

sinistro

f nodi

r.

radice

U

De.EvE

insieme,

á nell di

un

nuocio

è il nodo

una

esistente.

14. a.

un nunvo

con

C S, e.t,

u

5,.

il nuovo

e

r

esiste. con

solo

Il nuovo

una

e right

left

nodo

4 il cui

chiave parte

come

di partenza,

non

chiave

è il nodo

nella

figura

il campo

per

con

14.8 b .

il padre.

anche

ciascun

Per

un

inserire

per una I- da

una

restituisce

un

nuovo

nodo

che,

albero

i nodi

identificare

un

dati

devono

che

essere c.

un

albero oche

persistente

T ed

persistente rappresenta

una

T

il risultatn

d.

al numero

di

. persistente

I, c a T è,,qua t

L o spazio

l isonoi

tempoelospazio

impiegato

e.

ciascun nodo anche can i il camp d . I q uesto . COpl Q tUI C ClQ pel tC Cll P ER S I.ST ENT-- T REE-I- N .SER1 . Provare c ree cheie INSERT

richiederebbe

un

t m

o

d

.

Q

Note

Mostrare tempo

l uso e spazio

di pari

la chiave

Ol

ad

assegnare come

Descrivere

y.

senra

nodi

in tempo

il tempo

in T, e T,.

perché

un

Descrivere

con

algoritmo

a

uguale

b-altezza

una

hanno

che

i nodi

gr nde.

le

es.,ere

l.

proprietà

albero

2 e 4 degli

da

sostituito di ricerca.

binario

siano

RB-alberi

0 lgn .

3 in un tempo

la proprietà

v lere

f,t u

essere

possa

di un

le proprietà

violare

è O lp .

di 1 8-Jow

di esecuzione

T

conce

Descrivere

.i perchc

possa

un RB-

e T, restituendo

T

distrugge

bh T, .

fra

in T,, piii

in

che

di

bh T,

che

eneralitè che trovi

tempo

k d ove del

di

bil usciamcnto

nell albero. pre

e.

che

Mostnre nodo

al capitolo

L idea

nodi

con

da

è il colore

Spiegare

come

richiedere

è proporzionale

in

CBSQ PERSISTEI-TREE dei

di

radicato

T, in un

v

r

.v

inseriti.

incluso

sarebberonecessarieulterioriri

è il numero

di ricer

PcRstsl-E 1--TzrE-Ir,se

nodi aver

u

Qual

asintotico. di ciascun

x, T totale

n il numero

Sia

sottoalbero

mantenute binario

procedura

di nuovi

supponga

il

RB-Joti T,,

O lgri

y nero

il nodo T

Sia

T,.

perdere

di esecuzione

bh T ,

y.

T, si può

esecuzione la b-altezza

l

di un albero dalla

1tl gUCSlO

k o cancellare

PERSISTENT-TREE-INSERT

procedura inserire,

di ricerca,

persistente

chiave

u

x

determinare

ogni v

visitato. l operaziane

senza

Si assuma

b.

di k in T.

See l altezza impiegati

binario

albero

generico

Scrivere

Si

TA u

T

albero

l Esercizio

di

il tempo

aumentare

l a1bero

realizzare

Si desidera

mantenuto

essere

S

senza

RB-DEt.ETE

e

per

5

Spiegare

bh Tj.

campo

nel

RB-Iesina

che

au RB-alberi.

operazione

di questa

da

tale insieme

un

restituisc

Essa

b-altezza

sua

la

memorizza

e senza

nodo

ogni

per

si

possa

si discende

01

erano

T,

memoria

mentre

è già

che che

Si assuma veda

Si

dalla

raggiungibili

elemento.v

un

S, e S, ed

I cg x j.

la realizzazinne

esamina

si

problema

campo

questo

il figlio

chiave

nodi

alcuni

condividendo

volta

a sua

8 diventa

sinistro

dell albero,

mostrato

ma

con figlio

i odi

RB-alberi

su

dinamici

I-ey vj

I cg v,

RB-albero

un

tempo

de11 inserzione

d.

già

radice

le ,

i campi

te

perSistèll

5.

chiave

la

inserisce

si

join insiemi

due

prende

si abbia

S,.

In questo

Dato

a.

7.

chiave

Analogamente,

modificato.

di join

X

-6.

chiave

e.

10 che

si ricopia

nell albero abbia

cambiati b.

nuoia

Quindi

presenti nodo

chiave

con di

binario

albero

dni

è composta

precedenre

quando

di giun-ione

Opera ione

L operazione

realizzato

si crea

versioi e

aggiunti

ed

programma

nodo

soi o

sn ri

e la

r

radice

dal1a

ibili grigi

ulteriore

destro

L

1

volta

ogni

e Sz RcH

i mg

ragg

nodi

14-2

Ir sERt.

essere

può

del

l esecuzione

la chiave

inserire

e non

te.

persistei

l insieme

tutto

dai

passate

di meglio.

le operazioni

il figlio

diventa

ricopiare

molto

fare

è chiamato

insieme

nel

rallentare

può

le versioni

di memorizzare

tale

Un consiste

Talvolta

dell

chiave

con

aggiornato.

persistente

Questo

la necessità

persistente

spazio.

versione

ogni

chiave

si ha

approccio

questo

un insieme

per con

insieme

troppo

Si consideri

talvolta

viene

che un

10.

2, 3. 4, 7, 8,

chiavi

coi

ricerca

persistenti ri tmo,

al

realizzare

o per

di

binario

albero

Un

a

RB-alberi a O lgn

er . nel

ar aiitire caso

che

o

hi

inscrzi ne

u can .ill iziiinc

richicd.i

cent

liberi

nel

akron AVL

il

Un

altr.

1962

un

i cl

eli alberi

lise è

hildncianlento

di

un, lhcro

nl inlillutii

i

ricerca di

bi limai ili li

.illr ivers l

peggiore.

.ilhcri n nodi.

classe

di,rlheri

di

ricercu.,

e L. ndis

a Adel son-Vel 4ii

dovuta

alberi ricc va

hi,im,. li

poi

chi

C

Tolaziolti.

-3

lo ati

. tu

empiere

poiiun

prc.,ci tat

. da

f

A V L

3. E.

. che Yègli

richieste

Hopcrott

262

14

Capirolo

non

nel

pubblicato dei

zione ayer Gli

e

as

eri

e

e

convenzione Vi sono alberi

bero 18

a

2- 3, il bilanciamento . Ad una generalizzazione B-alberi , è dedicato

albero.

e chiamata

18 furono

inventati

da

Bayer

studiarono

93

con

17

le

con

la mani

al

2-3,

à

d

1b

il Capitolo

il nome

estesamente

è mantenuto

di

loro

B-

I -

1b

di dati

di strutture

Estensione

19. b ed

proprietà

introdussero

la

rosso/nero. molte splay

ngono , . D altra tutte

In un

dell

gewick

altre

ag

de

da di

iata

parte,

i alberi

Sleator

e tipo

questo

il bilanciamento

le volte

di ciascuna

varianti

presentati e

colore. 1

1970. nodi

cCreight

RB-alb

ui

dei

gradi

senza

che operazione

si fa un su

di

p laay

accesso un

aibero

bilanciati

è data

esplicita * che

all albero. con

forse che

177 ,

alberi

alcuna s

le o p erazioni

binari Tarjan

sono

da

i più affascinanti auto-aogiustanti .

includono Il costo

n nodi

rotazioni ammortizzato

g i gli U

Tarjan

condizione

n i sono

Gl

188 . di

bilanciamento sono si

eseguite veda

1b come nell

il a al-

il Capitolo

da

come

il comportamento

In

su

l 0

Capitolo di

elemento

su.

un

posizinne figura

n

sia

possibile

c

di

costi

ordinato

nello

in

moitr ta

un i

itruttur

On.

tempo

tempo di

n.

è.

In

questo

determinare

modo

atei ,

ordinato

2...,.

l,

insieme

un

su

selezione i c

dove

e ementi.

non

nell insiemc 15.1

.1

un

Con

un

si sovrappone.

il concettn

insieme

come

vedrh.,mche

Nella

di

la,.e.,ti, n

velocemente

determinare

possibile

p.ir.

dinamico

è introdotto

insieme

un

su

elemento

si

gli

sarà

per

temponli.

intervalli

esempio

per

di tempo,

intervallo

insieme

un

come

r.ito

Nel

di dati

tur

strut

di una

struttura

u

nell ordin.i . n

di RB-alberi.

di una

al progetto

supporto

utilizz t determini

si potrh

elemento

l estensione

semplificare

intervalli,

che

dell insieme

Selezione

tale

di un certo

dato

di dati.

intervallo

Ii

di

i

a partire essere

puo

di estensione

il processo

generalizza

che

la quale

di un dato

o il rangn

piccolo

potrà

come

è usato

dinamico

insieme

struttura

che

teorema

teorenm

questo

un

più 15.2

Il paragrafo

un

e presenta

15.3

elemento

l i-esimo insieme.

dell

totale

Si

e ere

strutl r i

costruite

di dati

e mediante

dinamico

insieme

su un

di selezione

velncemente

dati

Il paragrafo

a RB-albero.

le operazioni

per

Nel

i,.

tut ,

dovranno

corrispondente

sono

che

struttura

una

descrive

15.1

dati

di

strutture

due

si discuteranno

capitolo

questo

struttura

15.1

di ott i ere di dati.

struttura aggiunte

della

operazioni

intero ult- rieri

di base.

dati

di

dalle

que. te

per

permetteranno

le informazioni

che

dato

corretto

in modo

aggiornate

ed

mantenute

semplice.

un operazione

è sempre

non

che di una

L estensione

In

dati

aøgiungendovi

classica

operazinni

le nuove

applicazione.

dall

di

i i - ano

ma

originali.

più

struttura

nuova

dati

di

struttura

di essa

su

definire

richiesto

una

progettare

dati

di

a strutture

ricorrere

una

estendere

e quindi

informazioni

bidirezionali,

necessario

sempre

sufficiente

sarà

spesso

liste deve

si

cui

J. ti

i

strutture

binari.

o alberi

hash

tabelle

che

di più

niente

richiede

non

programmazione

esempio in

sarà

non

circostanze

la

per casi

altri

molti

anche

in cui

casi

molti sono manuale ,

Vi

è O lgn .

Ol tl ili

in

I i-e, in o

particolare

l clcmci

semplicemente.

ii

paragrafo

il rango

di

un

i

vedr

cle,ll ti ai

ill. che

annuente

per

vieni

di

i li /i

A

di

Estensione

264

il numero

del

la dimensione

si-e x Per

contiene

campo

Questo cioè

i casi

semplicemente,

come

n.,

rappresentare

limite

sottoalbero

si-e Ntt.

il valore

per argomento

visto

già

radicato

0, si ha

un.,

è zn.

nel

una

tutte

in x x incluso .

la seguente

realizzazione

le volte

14.4,

paragrafo

si-e nil T

ponendo

del

interni

identità.

effettiva

che

usare

si accede

una

potrebbe

al campo

si

il T

sentinella

e si

per

un

di

elemento

con

un

dato

rango

i

sono

scuri

nodi

di

come

mostrare

operazioni

l informazione

di inserzione

selezione razione

di ricerca

il puntatore

e cancellazione,

utilizzano

che

operazioni.

Per

la procedura

elemento

che

con

rango.

la i-esima

la i-esima

OS-SELECT l

chiave

OOE T ,

più

Cominceremo

La

chiave

gestita

durante

le

di due

algoritmi

di

analizzando

un

le realizzazioni

aggiunta.

il suo

essere

possa

si esamineranno

dato

contiene

trovare

dimensione

informazione

questa

di un

al nodo

sulla

più

OS-SELECT x,

procedura nel

piccoIa

in un albero

piccola

i

sottoalbero

di selezione

ope-

radicato

n ..

rango

nel

suo

4

2

i.

I

i

r c

2

si-e teft s

l

un RB-albero

ifi r

3

then

return

4

elseif

x

then

return

OS-SEt.Err left x ,

6

else

return

OS-SELECT rightjx ,

chiave

Capitolo

Nella

della 10

del

all interno

del linea

il valore

di

i

i Se

i

azcr

nodi

algoritmi che

Y1Stl

di selezione s

precedono 1 rappresenta

nella

del

di r

della

linea

5

se invece

i

r,

allora

elemento

l i-esimo

6 della

radicato

ro in ri

come

più radice,

albero

nle

h

nodo

i1

restituisce

procedura

un

insieme

all ahezz

proporzionale

più.

livello.

Dato

che

di

l altezza

nodi.

n è il numero

dei

dinamico

di n elementi

è O lgnl.

T, la procedura con una visita

simmetrica

è O lgn ,

di selezione u

al

di un

si scende

ricorsiva

di OS-SecEcr

dove

- . in.v.- corrisponde

lit .v . Questo

all i

elemet to

piccolo la cui

er l

a procedura

nell albero chiave

è 26,

di

r -esimo

i determinato

e con

OS-Su. cr cleii 11C i

si consideri lllù ll

l 7. Dato

Jk che

elemento

un

rango

di

elemento in modo

più

piccolo

c dele

nel

line.,i

ricorsivo

tlella

l i ricerca l igura

la dimensione

di l iliciaiietleiinui

l á. I. Si cominci del

sotto ilhero

un

nodo.v

di un

di r nell ordinamento

T,

OS-R.ir

r m

albero lineare

di selezione determinato

OS-R

v restituisie di T.

.v si

con.v iiniS11

I

e left r

VX 3 4

while

y do

root Tj

c

if

rightQ y

y

più

procedur .

Perverificarecomeo elemento

ra radicato .

ad

il puntatore

la posizione

1

r, il rango di x all interno del sottoalbero in radicato -,l i-e imo elemento linea 3 sii più piccolo per cui i ella elemento è nel sottoalbero sinistro di.v ed più piccolo

nodo.v .v è proprio r allora l i esimo

sottoalberob

sottoalbero

38.

chiave

con

visite

il rango

in x.

si calcola

ricorsiva

di

degli

si -e lei x

Quindi,

del

then

i C

6 ppiccolo

è,

OS-SeLecv

r

a quella

è il numero in x.

radicato

la chiamata

perciò

è simile

sizejlefr x

radicato

sottoalbero I di OS-S

x.

OS-SEl.ecr

procedura

sottoalbero

s sei rallorailno restituisce

di un

anche

di esecuzione

Determinazione

i

Dato

simmetrica

piccolo.

la

trovare

ir

5

L idea

Quindi

per

che

il

30 ed

chiave

nodo

significa

1 e ciò

del

piccolo

più con

nel

radicato

è á, il suo

41

ricnrsiva.

chiamata

nuova

dimensione

più

procedura chiansata

ad ogni

e quindi

il tempo

si ha che

ha

c Ire

38.

della

che

dato

dell albero,

elemento

secondo

complessivo

tempo

Il

sinistro

elemento è il nodo

ricorsiva,.v una

menrre

si e r

campo

chiave

con

nodo

del

sottoalbero

nel

ùn

iii x

4 è il quarto

rango

si effettua

piccolo.

più

chiave

con

al nodo

puntatore OS-SELECT X.

il

con

la chiamata

è 2. Quindi

sottoalbero

il sua

sinistro

Dopo

41.

elemento

2

sottoalbero

il nodo

cui

sottoalbero

è perciò

2 ed

rango

del

per

nodo

del

che

ora

Si trova

T si richiamerù

presenti

è 6,

radicato

Ira

x

rossi

i nodi

seno

grigi

nodo

ciasci n

sorroalbero

nel

1 nodi

esteso.

RB campi,

asuali

agli

la dimensione

sinistro

il secondo

suo

nodi

sottoalbero

nel

rango

Oltre

di

che

4. Dato

sottoalbero

restituisce

quelli

i1 numero

e i

41

ione,

albero

è un

che

scie neri.

di

albero

Un

15.1

rappresenta

Prima

e

0.

Figura

Ricerca

ecco

2á5

dati

1.

se il nodo

esplicitamente

o più

nodi

Definendo

si-e right x

correttamente

gestire

dei

sottoalbero.

si-e lefr x

verificare

nel

di

strutture

15

Capitolo

7

return

r

e-

r

si. e efl J trlll

pX

r li

he

Capitolo

RIGHT-ROTATE T,

i no

del i che

visita

while

ciclo

simmetrica,

menti,

di nodi I

più

y è un

o ps

glio

se p y

Perciò

nella

di pp

i nodi

linea

nel

del

fratello x.

n

4 1i

d ono.vnella

figlio

sinistro.

Si supponga, 38

sequenza

esempio,

per

chiave

di eseguire di

nell albero

valori

di

sinistro

d

d

J

ed

L aggiornamenro

15.2

figura

OS-RAw

trovare

per

ciclo

del

al rango ranno

proprio

while

il ran o

del la

ottiene

si

di i kcevx . v

15.2

figura

dell

4

26

4

il tempo

4

asintoticamente

17

complessivo

Dato

restituisce

il valore

17 come

che

iterazione

del

while

aad

livello hvello

chiave

ogni

iterazione.

all altezza

. il

ciclo tempo

dell albero

di

impiega esecuz

tempo

ed

d i OS-R..

ione lb

O1

01

AYK

y sale C Il l

d i selezione

nell albero caso

di

eeeinre

in un prima

Mantenimento

della

dimensione

dei

fase

per

o si. e

Y

in

stato

inutile

se questi

che

modificano

i bbase

o Nel

modificare

14.3

si è osservato

ig

io

Nella

i no

g 2

ox UI..

8

.

n enimento Nella

fase ue.

no

arco

si

I4

si e v

nel

di inse

asintot

campo

si -e

le modifiche

alla

n

rispettare

dalle a e o

h

d i queste inserzione dalla

.a fase

in

un

dalla

radice Q

soci.o c p ercorso

ey

trelàfOtQzioneèuts su

quale

C

QQ

IlC

m

si

e.j

si

e lei x

avviene pQfBgl 1fO

de l l albero

rotazione.

I 4. .

d

.

n nodi.

c

RB-albero

in. crendo l albero

15.E-I

Mostrare

come

opera

15.l-2

Mostrare

cnme

opera

10

OS-Select T,

che

i

cambiando

i

OS-R

v

T di

iuil RB-albero

T..v

i 5. l.

T di figura

sull RB-albero

sia

il ni.iovo

15.

t vzura

I i on

-

ni

35.

l cg .v

e,, , .,-l .

15.1-3

Scrivere

l5.1-4

Scrivere

una

di

iterati i

versione

OS-St. crct.

BOO o.

nndi,i

u

i

o

s

una di

Te

selezione di

l.

aiiuu a

che

le

chiavi

eli

ii Ici

ione

4

che

tutte

Tsian i

in

prende

t

input

i on e

JA

k nell insiClllè

il r u codi

k C fC illtlll Ce

chi I v

un

Si

-R, sw T.

OS-Kr

ricor ii u

procedura

rappresentato

Rie

SJlil iUftlClClltL

etto

I

i l i iun

ere

Ie

e

uei li

lin i.

15.1-5

D il1llll

n intcnt si.e rigl r l

t- - -

il.- .

temp.

e. impiegano

, oo

- i-

RB.

verso.o .

st

dicerie.

.i

operazioneloca la

impie

Esercizi

è O lgn . struttura

da

composto

di selezione

si

campi

- l .-

D.ili

arebbe -

operazinni.

radice

si risale

le proprieth

e

albero

dei

la gestione

pe

- --

t1i d

d

sull

nella e aprimafaseèsufficienteincremen rim

cammino

atOChesulcamn ino A....

del

operazione

Ne1lasec da

lavora

efficientemente

un

AoCQC

pos questo

le informazioni

lo erazion e di . a si . discende e l aIb bero

in modo ..., dei sottoalheri,

tutto

i tempi

compresi

albero

seconda ,

13

Ma

carne

primat se

attraversato

nell

e OS-R-

se1ezione.

di esecuzione

iunnodogiàesistente. o rotazioni

la dimensione

gestjre

sia

i tempi

. ffasi.

eseguen

della

mantenuti p i non p otesses ero essere -a unn RB-alber ero. Si S vedrà adesso come

o senza

ue

OS-SELECT

le procedure il problema

mantenute

dal

della, eiond

rotazioni

01

-

p.

Lin t , i

cammini .

sottoalberi

cam

o essere

i

me

Per P

nodo,

utiQ, i per

ri p osa

paragrafo a

ciascun .

per

ormazioni

Le

e è 0 lpt .

composi

del

sul

il tempo

O lgn ,

lunghezza

na

si estrae

il cammino nodo

i p . ..- -

prima oppure

fase

prima

risalire

di ciascun

si e ha

cammino

questo

il mantenimento

la cancellazione. Dato o il campo

ii nodi,

campo

del

l il valore

di con

RB-albero

Nella

è sufficiente

cottoalberi

dei

144 .

il paragrafo

veda

si

la dimensintte

de relllel1t ndu

radice

di ir nodi.

strutturale

modifica aquino . re

Per

di ricerc

albero

dell

la

fasi

tre rotazioni

al più

i. la cecondacausa

due

di

è composta

RB-albero

un

.

RB-albero.

comune

in un

l inserzione

per

da

cancellazione

di ba e

38. alcun

ciascuna

proporzionale

d e 1 no d o con

rano ango

a quello

.-

l- .

à 0

di n nodi

di selezione

in un albero

t- - -

. 3ui. .

è 01

si e

i campi

aggiornare

per

di un nodo

I inserimento

per uguale

la

Anche itruttura

la procedura

pri eduta

se , nùa

la

durante

rotazioni

due

più.

addizionale

il costo

di inserzione,

operazione

al

operate,

sono

RB-albero

un

2

3

--

è simmetrica. in

che

Dato

della

modifica

La

aggiornati.

sono

i campi

in cui

il modo

mostra

keyjy

30

G

,-.

nodo

La

38

p. . i

rvr, i,, c..

y e dell.

e di.v.

si

ci

1 duc fa

eseguire

campo

del

1a conoscen.a

richiedono

else

cui

su

orco

sull

mt ioni.

le

durairte

sottoafberi

dei

incidenti

ql,elli

seeuente seguente

Rtom-RovAvz

u nd Quindi

dimensione solo

triangoli.

c ome

mos1rati

della sono dato

locali.

sono

sotroalberi

r

iterazione

aggion,ati

essere

de,ano

che

comsponde

all inizio

15.1.1

4

agginrnamenri

di r, che

7

4

si-e lefrfp y jj

la procedura

figura

I eyfy

per

il valore

isce

p rocedurarestitu

12

x

LEm-RovatgT,

allora

,

root T ,allorala

l9

X

6

sottoalbero

y

19

d

.

di y che

Se y è un

il numero

precedono

aggiunae

si

5

ià contato

radicato

anch esso

precede

e tutti

destro

stesso.

radicato

destro

sottoalbern

in p yj. j. Si è

sottoalbero

del

sottoalbero

y

del

r ad icato

simmetrica

nel

er

nodo

il sottoalbero

visita

nella

numero

né p f v j né qualsiasi

p

si considera

precedonox i

un

dari

15

iterazione iter

con

di

strutture

di

Estensione

2áá

l

CIvI11Cllt0.1

de

li

di

eliminanti

ùn

alberi

ilell tlhcrii

di

n

nulli

cal

tA

Ittttlleto

n ll tr

ll

i.

.

2

Capitolo

15.1-6

Si osservi

che

calcolare

per

il campo

si e

il rango

dir

di memorizzare

direttamente Mostrare

è la radice. di

utilizzato

set toalbero in ogni

come

inserzione

richiedere

possono

è sempre

nel

esso

operazioni

nodo

OS-SEwcr

il suo

e cancellazione.

o da

OS-R vv.

in x. Di conseguenza, rango

rispetto

informazione

questa

rotazioni.

da

radicato

possa che

entrambe

le

Per

nelle

sottoalbero

operazioni

chiavi

memorizzate

già

Mostrare

come

il numero

si possa

usare

di inversioni

un

albero

veda

si

di selezione

il Problema

contare,

per

1-3

in un

in tempo

array

Oi

l informazione

il passo

Per

ii.

Si

considerino

n corde

Descrivere coppie

un

algoritmo

di corde

sono

tutte

corretta

che

cerchio,

con

che

Si

.

un

si

assuma

ciascuna

tempo

si intersecano

diametri

è

di

On all

Ign

del

nel

nessuna

cerchio.

centro

coppia

attraverso

i suoi

la determinazione

per

interno

incontrano

che

definita

del

del

Per

esempio,

cerchio,

allora

di corde

si tocchi

estremi. numero

di

se le n corde la

in un

Come

estendere

una

struttura

un piccolo in ciascun

risultano

veloci,

più

addizionali

estensione

si verifica

su intervalli. struttura

una

In questo di

estendere

dati.

facilmente

1.

scelta

determinazione

della

struttura

di dati

anche

dati

di

base

nel

in

modo

progetto

di

opportunamente

un

necessari

teorema

funzionaliù Nel

offrire

per

per che

offrire

algoritmi.

modificata

i passi

dimostrato

da

in

permette

di dati

essere

può

suddivisa

casi

deve

essere

mantenuta

le

sviluppate

sono

una

più

dati,

di

struttura le operazioni

efficienti

che

piuttosto

per

di

nuove

sviluppare

15.2-1.

nell Esercizio

conse

previste,

già

è

parte

di strutture

aII estensione

spinge

che

D altra

C OS-Raitv.

OS-SELECT

operazioni funzinnalità

nuove

estende

si

si utilizza

nella

struttura

di

la

di partenza

seguente

teorema di

possibiliù

le ar *omentazioni

eeneralizza

si-e

il campo

aggiungere

del

un

per

si è esaminata

I S, l in cui

paragrafo

trasformare

RB-albero

ùi

dimostrazione

La

semplice.

3 molto

tipi

certi

operazioni

dalle

mantenuti

il passo

rendere

da

inmodo

e cancellazione,

che

dimostrare

si puo

RB-albero.

efficientemente

essere

possono

un

estesa

di dati

struttura

come addizionali

intormazioni

passi del

che

informazione

questa

RB-alberi

di

inserzione aggiunta

di

modifica

di

di base

dell informazione

la

di del

dimensione

si memorizzala

quando

implica

nodo

nuovo

di realizzare

rendere

per

Estensione

della

molti

di

in quattro

un

e OS-R iv. la modifica

implica

minimo

operazioni

Quando di dati

si

raramente

Più

dell albero.

nodo di

Invece

essere

memorizzando

OS-Szxecr

le operazioni elemento

nuovo

rimane

dovrebbe

esempio,

Per

di dati.

nell albero,

di un

aggiunta,

l informazione

possano O lgn

di esecuzione

tempo

prossimo

estensione

questa

4,

la necessità

i oape erazioni,

RB-alberi.

struttura

struttura

di

si esamineranno

sarà

gli

di una

2.

struttura

frequentemente

paragrafo

Inoltre,

L estensione

una

abbastanza

si utilizzerà

paragrafo

dati

di

come

nodi.

il passo

dati. di

dati,

da

e cancellazione

inserzione

all, i struttura

rango

il suo

di

mantenere

l inserimento

in ogni

in O lgn

proprio 11 processo

che

piuttosto

puntatore

il loro

mentre

di modifiche

nodo

l inserimento

sottoalbero.

Per

un

operazioni

si-e.

per

principio,

ma

informazione

questa

da

le

solo Q lp .

tempo

con

eseguite

state

usando

rea1izzate

essere

potevano sarebbero

non

le

che campo

numero

direttamente

di dati

è costituita

del di

linea

In

sufficiente

soltanto

15.2

aggiunta

è verificato

si

3,

inalterato.

soluzione

estremo.

ma

l informazione

mantenere 15.1-9

nell albero,

efficienti.

più

15.2-1.

nell Esercizio

1gn .

di dimensione

e OS-Rw x

OS-SEiacr

le operazioni

esempio,

Per

.

le operazioni

rende

aggiunta

del

la dimensione

x memorizza

nodo

in ogni

che

si-e,

l informazione

in x. Di solito,

radicato

come

insieme,

dell

e PmoEcessoR.

il campo

2 si è scelto

il passo

2á9

dati

di

strutrure

elementi

degli

totale

ordinamento

un

prevedono

t, SuccessoR

Mmxwut

Mtvtwuw,

di cui

mantenuta

ricordi

Si

al sottoalbero essere

che

dinamici

insiemi

solo

si supponga

Talvolta, 15.1-7

di

Estensione

15

ill

Ull

I

Ql uCfO

selezione. 3.

4.

veri erifica caè èhe e l informazione ni di modifica

della

sviluppo

nuove

aggiunta gg

struttura

essere

possa

di dati

mantenuta

attraverso

le usuali

operazio-

di partenza

prescrive

di prove

in grado metodo dere struttura

ciecamente

ed errori

esempio,

la

di

cui

per

un

mantenere

la .stntttura ntttura di dati

ordine

non

prestabiIito, dei

diversi

è anche

un

una bonn

anzi

da

etticiente

fornisce

si deve

nello

procedere la maggior

passi,

dell informazione

in modo passi

ed

di progetto,

lo sviluppo

determinazione

in quattro

dalfattochegliR

metodo

qualsiasi

seguendo

passi

RB-albero

u

di

Estensione

operazioiti. Sia

Come

15.1

Teorema

delle

generalmente, aggiungere

le informazioni che

perinette

modo

per

organizzare

di focalizzare

lo

dei

Cii

delle

nonostante. gli

la docunlent rione

sforzi

che

estende

un

T

RB-albero

da

composto

n

nodi

,risultano

questo

iodate.

Di neutra

il

asintoticamente

int1uenzare

senza

l

Lapidea

di

dimoitr zivne

della

base

tempo

di

O lgn

i che

queste

quando

. sono

impiegati

peraltri

supponga

del

campo

che

il

ul1u

operazioni.

modilica

nell estensull,

nu, ,,

effici nti

si

Per nuove

estesa.

li RB-alberi

e

dimeni

in parallelo.

sviluppo

campo

conii t

progetto

procede e

aggiunte.

guida

sviluppo del

parte

f un

operazioni c .

iu

O1

per

la

iornamento

di

ovili

che

dipcndonu

ala

tale

nuidit ica.

f di

un

nodo

270

Capito1o

L

essere

di un fase

prima

in tempo

di x stesso

complessivo modifica due

l inserzione Come Nella suo

neIla

al più

l inserzione, fase

ipotesi,

per

da due

fase

che

esso

dipende

ai figli

due

che

Dato

contenuto

sono

entrambi

sull albero,

per

però

ogni

per

che

Nella

in una

seconda

x

degli

cui

campi

il tempo

anche

e poi

fettivamente

di

estratti.

al più

O lp

per

complessivo

o

quando

che

gli

fase

nodo

degli

richiede

propagare

il

cancellato

o

tre

rotazioni di f.

veda

si

il tempo

il

suo

l albero e per

per

come

Quindi,

144

15.3

ef-

modifiche

Alberi

di interva11i

In questo

paragrafo

intervalli. L interval1o

t,,

si assumnà

che

al pii il tempo

casi,

come

dell aggiornamento Teorema

per per

15.1.

una

L Esercizio

rotazione 15.2-4

campo

di

01,

è

ne

fornisce

si-e

per

anziché

un

alberi

gli

di selezione.

O lgn ,

come

restituite

e n è

sono

aggiungere

è necessario

r e

l insieme

il cnsto

dimostrato

nel

di questo

dati

di

r

di

Per

tempo.

ben

paragrafo

si potrebbe

esempio, verificati

si sono

eventi

quali

di eventi

rappresentazione

alla

adatti

sono

temporali,

dati

t,

l applicazione

chiusi

siano

intervalIi

R

reali

numeri

di

t,,

ottenuti

risultati

dei

r,

dove

r,

t..

o semiaperri

aperti

Intervalli

t .

di

dinamici

su insiemi

operazioni

offrire

per

ordinata

coppia

è una

chiuso

rappresenta

continuo

interva11i del

che

agli

intervalli

è immediata.

intervalli

Gli

il nmntenimento

gli

e semiaperti

aperti

è O lp .

n per odo In molti

r,

estesi

saranno

RB-alberi

gli

intervallo

Un

Modificato si impiega

l inserzione.

per

algoritmo

che

non

gerimeirro

che

un

dell RB-albero.

i. dal

sono

queste

rotazione

Sug

tali

con

solo

è sostituito

localmente.

ogni

di chiavi

possa

IA.

I

a

in.v

f è O lgsi .

successore da

m è il numero

albero.

dell

interni

nodi ai nodi

campi

nuovi

dove

1gii ,

8 in

dei

il numero

I unica

il paragrafo ato

come tempo

impiega

realizzata

271

dali

RB-E UX1ERATE X.O.

radicato

essere

IERATE

RB-ExUI

di

strutture

operazione

RB-albero

/ di un

le chiavi

nuova

una

con

RB-alberi

gli tutte

restituisce

Descrivere

Dopo

complessivo

cancell

di f causata

modificano

al più

fasi

se il nodo

aggiornamenti

aggiornamenti

gli

di due solo

agpornamenti

la cancellazione

per

all albero

propagazione

dato

la seconda

è composta

modifica

nuovo

La

O iglò

l RB-albem,

la cancellazione una

che

b

altri

sn..

estendere

Si desidera

152-D

può

cambiano

dei

inserzione,

14.3 ,

di f

fase,

rotazione

l aggiomamento

per

il paragrafo Il valore

dal

è O lgsr .

rotazioni.

rotazioni

solo

all indietro

rotazione

veda

si

esisteva.

già

àix,

dell inserzione

dalle

in ogni

fasi

px

è propagata

prima

ci sono

nodo

associate

deriva

si verifica

successore

tempo

che,

la modifica

impiegato

che

di un

è di O lp .

prima

costa

dato

all albero

il tempo

T è composto

figlio

informazioni

impiegato

visto

Quindi,

come

calcolato,

strutturale

nodi,

x in un albero

01

e dalle

è stato

x

f

nodo

x è inserito

calcolato

campi

di

Estensione

inserimento

Nella

che

15

utilizzata

essere

ad

si presta

durante

ciascuno

dei ad

richiedere certo

un

quaIi una

intervallo.

per

base

di

La

struttura

una

rappresentare

in

si manifesta

tale

dati

base

di i di

intervalli.

esempio. intervaIlo

un

rappresentare

Si può

t,.

r

come

i con

un oggetto

campi

low i

t,

l estremo

Esercizi i 152-1

Mostrare

come

MAX1MUM, selezione altre

15.2-2

senza

in tempo

È possibile

Ol

nel

sull albero

la b-altezza

per

questo

influire

sugli

RB-alberi

mantenere campo

caso

dei sulle

nodi

un

essere

come

asintotiche

albero

asintotiche

dovrebbero

di un RB-albero

prestazioni

su

prestazioni

di

a.

i ed

b.

high i

c.

high i

La

figura

proprietà

di

degli

tricotomia

intervnlli

vale

ciao

proprietà si sovrappongono.

i

delle

loire i ,

modificate.

nuovo

di una

seguenti

Xtiwwii ..

dinamico

eseguite,

Le non

Giustittcare

campo

dei

low i . 15.3

mostra

tre

queste

possibilith.

opera-

qualsiasi

la risposta.

la profonditè

dell albero

insieme

essere

peggiore.

nodi

efficientemente

dei

su un

possano

di selezione

mantenere

ordinaria

u1teriore

di interrogazione

C PREDECESSQR

operazioni

È possibile

zione

152-3

esteso,

usuali

nodi

le operazioni

SUpCESSOR

la

soddisfa

dei

Giustificare

nodi

in un

RB-albero

come

la risposta. la

IS.2-4

Sia

8

un operatore

di un

RB-albero.

f tale

che

f

r

simmetrico

dei

aggiornato

con

cegilito mantenuto

per

binario

a s-, nodi un

mostrare con

associativo

Si supponga

un

8 del

cc r,J

che

O

8

sottoalber

tempo

tempo

e sia

di voler

Ol anche 01

a i-

il campo ngni

mantenuto

in ogni

, dnve

radicatn j dopo

per

a un campo

includere

x,

i,....,.v

in x. Mostrare

una

rotazione.

si,,e

ne li

nodo

ulteriore

che

di

il campo il ielczione

nodu l

campo

è l elenco

Ad ttare alberi

in ciascun un

in ordine f può

essere

c

b

ragionamenti u

eiicrè.

iotazione. I ni

i

f.

c

lriylr

fi f è

Irni

fi .

esattamente

una

delle

tre

272

Capitolo

di

Esrensione

15

26 26 25

30

2

17

21

15

Oltre

agli

intervatli

8w9

grande

tra

Passo

3

tutti

gli

nel

destri

estremi

degli

grande in

che

Dato

qualsiasi il più

contiene

niax x

sinistro,

l estremo

quanto

in x.

radicato

sottoalbero

è il più

che

in x.

radicato

sottoalbero

almeno

vale

destro

l estremo

intervallo

10

58

nel

memorizzati

inax .v ,

un valore,

x contiene

nodo

ciascun

stessi,

intervalli

degli

estremi

23

273

dati

aggiunta

informazione

19m20 19

16

6

Passo

di

strùtture

03 0

5

10

15

so

i valori

ed

dei

max

modo

net

seguente

max right x .

nrax left x .

max high iist x ,

max x

inr x

l intervallo

dati

di max v

eseguite

essere

possano se sono

scopo,

il valore

determinare

di x, si puo

figli

nodi

A tale

di n nodi.

di intervalli

su un albero

O lgn

in tempo

e di cancellazione

di inserzione

1e operazioni

che

verificare

Si deve

aggiunta

dell informazione

mantenimento

in

Da Dl

formula.

questa

QX

4

Passo

L

b

nuova

unica

15

non

4

Un

rico

. albero

di

inten alli.

i e

tremi

sinistri.

i

n

d

Un

a

d iiroti

insiemedii

e

L albero

ò rispetro

di

agli

i 10 intena intenalli, inte va1l/

estrei ii

li

ra

albero

Un

di intervalli

ciascun

è un

elemento

le seguenti

RB-albero

x contenente

che

memorizza

un intervallo

a eiun ,e

x

intervallo,

1 elem

all albero

di

rimuove

x

INTERt AL-SEARCH T, che

int i .

un Sugli

insieme alberi

dinamico

di elementi.

di intervalli

sono

,

inr xJ

i

ento

x,

intervalli

2

while.v

c if

do

il

cui

campo

inr

si

suppone

un

contenga

simmetrico

a i.

i non

ed

sic

o

lefr x

else

5

sovra

pp one

d ll

all l intervallo

albero

di

ad un elemento , i, oppure

intervalli

si e

wc

a

sovrappone

int x lo

ina.v lefi .v j

15.4..

mostra

come

i quattro

1

struttura

lie

un

di un del

passi

di

RB-albero

albero b

un

metodo

dati

in

albero

di

cui

di

intervalli

sta

rappresenti

di intervalli

e delle

proposto

nel

i

ciascun

.se

un

ero

interra di i intervalli

tale

elemento i

i T tale non

nodo.s

contiene .v,

elenca

un

insieme

operazi

di .

ll . .

g

d

return

right .r

x

P

e procede

dell albern

cl1e

impie a

di prendere

le foglie. sic.

il x zlore di un

Dato

Essa che

termina

RB-albero

viene

quando iterazione

cia cuna

di n nndi

ed.v

assegnattdo

v i comincia

si sovrappone verso

quindi

l vltezza

Itnrvv,sc-Se i cw Prima

che

assume

quando. e dato

01

15.2.

paragrafo

x

di un intervallo

La ricerca è

esso,i

un

intervallo

inr .vj

c

la

chi,tvc

di

interv i

.. dell vlbero

lefi x

è O lgi .

del

si conclude

il i flore troi ciclo

to

della un

itmpiega che

radice

intervallo tempo

I i procedura

O lpr .

tempo

delln

la cnrrettezza

in considerazione

procedura

lsvvav.xt.-St wRcw.

se ne

base

., on

x

T.

a s nell albero

oppure

seguiranno

sce

intervalli

ci sono

T.

l elemento.v , il puntatore

res restituisce

si

a progettazione

come

nell albero

trova

tut t. se non

restituisce

i

x

3

previste

nell insieme.

Si

i . che

zRvwc-SEwRcw T,

i oppure

intervallo

all

roor Tj

1

6

ImERv t.-Da.ere T,

Passo

e 15.3-1.

operazioni.

INTERV L-INSERT T,

La

possono rotazione

ogni

sinistri.

then

g figura

dopo

r

INTERVAc-SEARCH T,

con

mcr 15.2-4

Esercizi

negli

è Im

si ha bisogno

di cui

si sovrappone

si sovrappongono

che

nell albero

i, disc isegnatoordinatoderlbasscriers r nato else

campi

operazioni

nuove

operazione che

T un interva11o Figura Fr eural

delle

sviluppo

e la cancellazione

l inserzione dei

mostrato

come

01.

che

l*aggiornamento

Infatti.

O lgn .

in tempo

effenuato

essere

può

per in tempo

eseguite

essere

si deduce

15.1,

il Teorema

ali

intervall

e d ittiti

o. rispetto

i

della1 Qi il di

ull slrcnso.iiniitro.

la

vincita

in

orcliii

dice,

il nodo

contenenle

8.

9.

he

a iud

v ito

non

ii s wrapj onc

l i. Aquinato

punlo.

max lefr x

10 è più

x come

nuovo

x.

restituisce

procedura Come

la radice

come

i e dato

che

contiene

valore

di x. Dato 23 8,

nel

cui

si va

sufficiente nodo

x, se int x

teorema

enuncia

cui

della

15.4.

radice,

16,

11,

9

8,

il figlio

destro

a i, per

di

cui

la

che

si comincia

non sul

si con

si sovrappone nodo

b

a

sinistro

che

destro

si sovrappone

in

a i e inax lep x

nessun

intervallo

nel

un solo

23J

15, termina

non

dalla

a i, la ricerca

che

si

radice.

più

idea

in una

o poi

sarà

è wc

Si

direzione

certa

se

una

iterazione

qualsiasi

la linea

x contiene

Se

un

del

4 la ricerca

intervallo

destro

è eseguita

di x non

La

5 la

alcun

si

NIL allora

while

della

a sinistra ,

sovrappone

15.5 a .

a i, dato

Dato

che

allora

o il sottoalbero nessun

sinistro

intervallo

nel

i ed

i non

implica

che

che

Dato

situazione.

questa

destro

higl i

lo i i J

a destra ,

che

allora

si sovrapponga

ad

il sottoalbero

i casi

3 si ha

Si osservi

contiene i un

ono

rappon

si sei

che

e dato

chiaramente

non

alcun

intervallo. del

la linea

contenere

.

destro

degl

di x

i intervalli

i

figlio

nessun

che

parta

vana.

ugualmente

di x sarebbe

ei figli

uno

ricerca

una

allora

dato,

a quello

u

cotuinua

lmERvAc-SEARcv

si sovrappone

che

intervallo

Esercizi

che lefi x

veda del

trova

dall altro

si sovrappongono.

non

se la procedura

che

garantisce

5, allora

che

si

di x e non

i e i

intervalli.

degli 15.2

Se lefr x

un intervallo perciò

sinistro

intervalli.

low ij.

J

Si supponga

sottoalbero

estremo

grande

può

degli

eseguita

inax left x

del

di x,

la tricotomia

Per

tricotomia

i

intervallo

perqual. i..-i

sinistro

i.

se viene

oppure

intervallo

J è il piii

che

dalla

at

lefr xj

in lefi x

non

dipende

di ricerca

dell albero

la proprieth

e quindi

sottoalbero

w 153-1

la figura

sottoalbero

Scrivere

lo

pseudocodice

intervalli

ed

ag giorni

inax

di

di

i

sui

operi

che

Lager-Ro pze

per i campi

albero

un

di

01.

in teisipo

si ha il codice

Riscrivere

159-2

high i j

campo

del

che

IivEav i-

procedura

a i oppure

prosegue

semplice.

linea

J. Sia

max lefr r

allora

è più

radicato che

low i

di x,

illustra

155 b

figura

a i.

di entrambi

della

il sottoalbero

e max lei x

sinistro

2 che

condizione

si sovrapponga et

allo

inten

qiutlsiasi

la det nizione

per i tale

intervallo

un

essere

deve

sotroalbero

i

...ili .i

inten , ni.

a i

Inoltre

lo v i .

nrax lefr x

che

di x ci

sinistro

low

ricerca

intervallo

dimostrazione

il caso

prima della

ij

un

sovrappone

si

loiv i .

ciclo

prosegue

che

di x si sovrappone

la linea

contiene

Dimostrazione.

a causa

nel

c

oppure

i non J. fo v i

intenallo

un

ess

inax lefi xj

Il Teorema

Si prova

3 si ha

linea

sottoalbero

preciso.

intervalli

sottoalbero 2.

nel

max, high i

i.

Se è eseguita di

destro

loire

che

daro

di.v,

Quindi

lr -l

l

a desrrr..

continaa

ricerca

l lOSlrala ,

110ll

max lefi xj .

high i

cl e

della

condizione

Il seguente

chn .

/

15.2.11 la

2

15.2

consideri

1.

d Caso

a

sia

in qualsiasi

trovato.

n

.-i

a i sinora-i0118

si sovrapporte

sorroalbero

del

La

SEARCH T.

che tale

di.v

sinisrro i

perché

è che,

os

tratteggiata.

è allo

inten

un

zn..

capire

di base

sempre

a i, prima

sinistro

il valore si deve

L

procede

sovrappone

in modo

proprietà

restituisce

ch

/1

linea

or

IT

10 sottoaIbero

a i ed il figlio

IvrERvAc-SEp,Rcw,

a partire

si sovrappone

si sovrappone

e la procedura

procedura

cammino

intervallo

Teorema

una

con

caso

ciascun

lli

Gli

1S.5

Fig

sottoalbero

che

intervallo

nuovo

21 ,

si sovrappone

noti

Si

un Di

si prosegue

nel

non

trovare

figura

intervallo

si va a destra.

della

questa

con

si sovrappone

voler

low i

nessun

L intervallo il ciclo

non

di della

di

L intervallo

quindi

c è un

supponga

l intervallo

che

la correttezza

esaminare

nell albero

noti

Si

continua

nodo

j

a i

a destra

verificare

9.

11, per

si sovrappone

si

di intervalli che

il ciclo nel

nodo.

è maggiore

seguito.

di loire i

piccolo

Per

fallita,

nell albero

inax lefr x

si vedrà

sinistro per

14

cui

per

memorizzato

a questo

ricerca

11,

l intervallo

a i, come è più

di

a i

22,

23

15,

il puntatore

esempio

sovrapponga

di low i

piccolo

L intervallo

275

f

F femionedisf hd

che

si assuma

quando

tutti

tale

ch

correttamente

Operi

aperti.

siano

intervalli

gli

nodo

in

lxirRvwi-5aAzcw

per

max feft xJJ low iJ.

e quindi.

per

la

dimostrazione Per

dimostrare

tricotomia del

caso il caso

degli

intervulli,

i

e i non

si

sovrappongono,

il che

completa

lu

l5

1, si ta l ipote i

che

nei

sottoalbero

sinistro

esistann

o di x possa

sovrapporsi

a i. Si

osservi

che

se

viene

ese uitu

la

linea

4.

algoritmo a i, che

si sovrappone

intervallo di x non

un

Descrivere che

2.

hon

abbia

dato

che.

efficiente

il piir

piccolo

un

intervallo

estremo

oppia

e rvallo

li

i. restituisce

sinistro.

se un tale

ii-

esiste.

intervaIli 1.5

destr

3-3

allor i

per

7-4

Dati

un

di

a hcro

intcrv ioli

Ti

intcrv,. lli

diti

d nn

la è il numero che

luii1

de li modifichi

l albcro.

ijinco

inlcrv Alo

cji output.

i. descrivere

O -ir n tl

i

com

. lf

elencare

piii ann

.l

.

o

Capitolo

276

15

153-5

Descrivere

possibili

intervalli

in

modo

modifiche

da

offrire

l operazione

da

apportare

alle

procedure

per

alberi

gli

Imzav t.-SE RcH-Ex cri.v T,

di

i.

b.

che f

restituisce loii

153-6

il puntatore

le operazioni,

compresa su

O 1gn

ne

come -Gev,

Mtr

Per

che

tempi

basi

lista

che

i due

che

un

contiene

low

tale

inr v

nodo.

essere

dinamico

Q di numeri

tra

18,22

i due

allora

numeri

numeri

più

tra

vicini

tra

in Q.

loro

loro

DELEGHE, SEaRcv

ed

e massime.

è necessario

rispondere

che

che

anche

l insieme

lati

non

dei

sia

algoritmo

elenchi

sovrapposizione

circuito

abbia

contenga

una

se i loro

attraverso

un

rappresentati

l algoritmo

esiste

rettangolo

di un rettangolo Fornire

cosi

un

rappresentano ogni

tutte

costituita

che

decida

due

rettangoli

sue

in tempo

le coppie

che

se un rettangolo

si intersecano.

dalle

che

come a li

paralleli

1gn

se un

si sovrappongono.

si intersecano. ne copre far

Suggerimento

e y.

coordinate

On

ma

deve

interamente scorrere

un

una

retta

rettangoli.

Problemi

l5-I Si

Punto di

intervalli base

un

di dati.

voler

Mostrare

vengono

15-2

Permuta -ione

siano

di

persona

è stata

li interi

a.

Si

supponga

calcola

ll probi m,i

intornn

la

i i. hiatnau

... n. Per m costante.

permutazione

coii

pr.rché

di

massima

numero

sovrapposi--ione

di intervalli

essere

possa

Giuseppe

e che

allontanate

1. 2,

punto

Flavio

allontanata.

sono

tale

grande

che

aggiornato

gli

di

un

insieme

di nella

si sovrappongono

in modo

efficiente

mentre

gli

e cancellati.

di

è ripetuto

procedimento

de

come

in circolo

I. si procede

il punto

il più

inseriti

numero

le persone

ha

Giuseppe

disposte

sovrapposizione

cpnoscere che

punto

intervalli

Il problema

N.d.R.

di massAna

supponga

Flavio è definito

sia

d, to

al cerchio il conteggio

finché

tutte

seguente.

allontanando

sono

rappresenta

i irril no

le persone tateullo ttanate.

di Giuseppe

Llll lllgoritmo Flavio

i irn ru cimtu

rimaste

n,

con

datla Dopo

nel

cerchio.

L ordine

cnn

di Giuseppe Flavio

tempo

7,

On

n persone

che

persona.

la permuta ioide

la permutn ir ne

supponga

Si

n. Cnminciando m-esima

ogni

lc n persone

DescriVCli

ni

positivo

con

di Giuseppe

iprite

modo

intern

continua

dal cerchio esempio

nel

un

3

i

che.

Flaviv

per ana che

ana

Questo il quale ir, m

6. 2, 7. 5. l. 4 .

3. dato

un

intero

ni .

dello

iteri

del

prinni

i ciil

Ciiuii pp

Shamos Tra

Flaviu.

n.

descrivono

160

importanti

i più

essi da

di n intervalli,

sccvrappongono

una

assi.i-

letteratura.

dati

più

analizzare

integrato

i lati

e

indipendentemente

15

quanto

e MIN-GwP

Flavio

n,

che.

lpr

On

due

dati

tn .

al capitolo

Preparata

in Q.

18

Rendere

la permutazione

calcola

tempo

con

algoritmo

di Giuseppe

in

l operazio-

restituisce

n e m,

un

Descrivere

l

eseguite

offrire

per

Mtv-Gev g

vicini

più

IxsERv,

che

interi

costante.

277

dati

Tutte

Note

comunemente

Si assuma

di rettangoli

altro.

15,

la rappresentazione

.r e y minime

Non

T non

dovrebbero

la differenza

le operazioni

VLSI

di dati

insieme

se

di esecuzione.

di rettangoli.

in modo

T tale

di intervalli

n.

di ii nodi.

1, 5,9,

Q

efficienti

i loro

dell albero

oppure

un insieme

15 e 18 sono

possibile

Le

albero

restituisce

se

nodo.v

IvrEav i-Se Rcw-Ex crcv,

un

mantenere

esempio.

3, datoahe,

un big/t i ,

tempo

Mostrare

153-7

ad

e liigli inr x

i

m non

Si supponga

di

srruttnre

di

Estensione

H.

Edelsbrunner

permenono a un

intervallo

di dato.

parecchi da

un

di

intervalli

che

di

vista

teorico

sono

punto e E. M.

1980 elencare,

alberi

in

tempo

McCreight Ok

1981 1g i ,

tutti

appaiono quelli

che, i /

in una

intervalli

nella proposti base

di

che

si

Introduzione

Tecniche

evolute

per

i/progetto

e l analisi

di algoritmi verranno

In questa

parte

àlgoritmi

efficienti

tolo

e l analisi

17

state

e la

la randomizzazione presentate

in

essenziali

per

introdotte

tecniche

che

La

programmazione

del

I

richiede

i

divide-et-impera

di

fa

piii

sottoproblemi snttoproblema

una

soluzione Inoltre

stese ,

Questi

Una

ottima molte

strate

sottopr blcmw

del

In in un

scritto

divide-et-impera risolvono

indipendenti,

sottoproblemi

per

determina-

anche

quando

ottenute

le soluzioni

assieme

problemi

tabulare. metodo

sul

basati

di

algoritmi

vnlta

irohlema. li soluzione

si ripresenta

viene diverse

ammettono una

cl ito

i on

che

viene

possono

di problensi

per

pii,

di una

di

di ottimizz

per

sequenza

risolvere

A ogni

i

volte ciascun

è associato o il minimo

il ntasiimo

ottimo

ottima.

soluzioni

con

di decisioni

ma valore

bendi

l idca

una

nt timo.

di risolvere

richiedono

di

problemi

soluzione

la soluzione

rione

metodo

più

tabella.

in una

diverse

sul

risolve risolvono

dinamica

il valore

esistere

che

i

sottoproblemi

basato

dato

soluzinni.

detta

alcuni

algoritmo

adottata

con

soluzione

nttimo

un

la soluzione

generalmente

valore

casi,

prngri mmazione

e memorizzano

applicare

può

soluzione

necessario

strettamente

di quello

si la

termini ln questi

comuni.

lavoro

con

ie

di

sattoproblensi.

programma

soluzione

di

invece,

in altri

determinare

soluzione

di

risolve

un

si intende

algoritmi

dinamica,

problemi

e si desidera

e le

realizzazione

alla

di

numero

certo

metodn

fondono

indipendenti

dinamica

programmazione

sono

originale.

Gli

nla

un

numero

certo

sottoprobletni

risolvere

ottimizzazione.

4

sono

e

I concetti

computazianali. ed

verranno

che

precedenza

divide-et-impera. un

non

I, gli

Capitoln un

programmazione

comuni.

valnre .

ma

e infine

problema

non

sottoproblemi

un valore

nel in

problema

della

metodo

I

di

i sottoproblemi

la soluzione

La

metodo

descritto il

ricorsivamente

Il

il

come

di programmazione

abbiamo

Come suddividono

re

il termine

linguaggio

qualche

in

all analisi

applicate

le soluzioni assieme programmazione

dinamica,

con

quelle problemi

sono

divide-et-impera.

algoritmiche

descritte

Capi-

libro

di questo quali

tecniche

di

e l analisi greedy

in seguito.

mettendo

computazionali questo

parte

questa

si incontreranno

contesto

verranno

algoritmi

precedenti

parti

Le

numerosi

efficace

il progetta

gli

applicabilità,

di

sofisticate

più

in modo in

algoritmi

sono

Nelle

di vasta ricarrenze.

delle

soluzione

parte

questa affrontare

IS .

Capitolo

per 16 ,

Capitolo

algoritmiche

tecniche

importanti

molto

dinamica

ammortizzata diverse

presentate

metodi

tre

presentati

la programmazione

fondznentale

piii

-. Parte

ynrrogu-ione

IV

della

programmazione.

modo

tale

risolto

in

che

dinamica

algoritmi

Generalmente

di passi

alternative.

Per per

potrebbe

essere

adottano

la strategia

In altri

termini,

ottima

di

ottenere Un

dare

per

supera

di

di affermare

grado Nel

Capitolo

determinare L analisi

precisione introdotta

di ciascuna dell intera

mentre

altre non

attività

collegate

Capitolo Nel

totale

sequenza

di una

Nel

metodo

Quando tizzato costo

metodo

degli

operazioni

aggiuntivo come

tre

vari

a determinate credito un

una

la cui

non

soluzione

ottima

non

molto

sempre

si è in

può

essere

che

eseguono

molto

utile

per

della di

di

sequenza,

operazioni.

è impossibile

tutte

operazioni

ma

ammortizdell

Tuttavia. anche

permette del

della

essere

potranno

e l analisi

efficacia

le operazioni

economiche.

di analisi,

suo

di

definendo

l analisi Il niotivo

che

sequenze

operazioni

tempo

molto l analisi

di ragionare

sul

di esecuzione

metodi

diversi

Il costo

a seconda

del

tipo.

operazioni prepagnto

può

Il metodo

amnsortizzata Tn

che

a quello

costo

da T n l

il costo

accantonamenti questo

del

è dato

di oceani operazione.

accadere

degli

sequenza

relativamente

operazione

ammortizzato

aIlora

della

superiore

di una

il costo

diverso,

l analisi

un limite

ammortizzato

si stabilisce di tipn

effettuare

per

si determina

addebito specifico

ammor-

addebita deve op

etto

un essere de.Ila

di dati.

addebitato

il credito

è usato

perdefinire

un

minere

di que lo

costo

potenziale,

consiste somma

il costo reale.

di quelle

Il metodo

operazioni del

potenziale

a cui

altrimenti

ha c iratt risti-

a dd e b ito

questo dal

degli

metodo di dati.

nel

o più

metodo

viene

aggregati, del

semplicemente

per

dove

il credito il credito

potenziale ,

stabilisce

il costo

ammortizzato

p erazioni

d

compensare

u t i 1iz zato

potenziale il

che

senso il costo

inizialmente,

sovrastimando,

operazione,

struttura

efficace.

sequenza

Alcune

prima

ogni

di monete

problema

Tuttavia

algoritmi una

di un algoritmo

di n operazioni.

operazione

per

nel

accantonamenti,

degli

al metodo

di monete.

totale

questo

spesso

particolarmente

aggregati

simili

che

stretto.

accantonamenti

di una

spesso

strumento

introdotti

degli

Successivamente, verrebbe

modo

di

operazione

risultare

si considerano

considerato struttura

in

analizzare

pessimo.

il progetto

18 Verranno

di algoritmi.

caso

uno

infatti

sua

soluzione

utilizzati

minimo

massimo

sarà

che

sequenza

molto

loro

potranno

di algnritmi

progetto

che

è solamente

risolve

greedy

il costo

costo

nel

numero

fornisce

matroidi

per

limitare

costo

eseguite

essere

il numero

dinamica.

soluzione

strumento

fatto

la

greedy.

del

dal

determina

restituito.

greedy

dei

dyl

è dato

ammortizzata

una

limite

siano

costose,

che

di

ottima. nella

ente un

di valore

ancora

metodo

la teoria

è uno Invece

greedy

la migliore.

problema

possono

con

che

programmazione

metodo

del

che

minimizzare

strategia

essere

un

il limite un idea

questa

sequenza

n.

di un

identiche.

fornisce

Nel

con

resto

di monete

deve

di

17 verrà

ammortizzata

separatamente

sono

in cui

la bontà

operazioni

zata

problemi metodo

Una

numero

che

un

deI si deve

cliente.

certo

di denaro

numerosi

velocemente

un

come

vamente,

problema

formulato

a un

volta

risultato

è la decisione

ottima

greedy

stesso algoritmi

appare

greedy

algoritmi

gli

lo

di problemi.

dal

cosi

il resto

ogni

l ammontare

Esistono

di

è fornito essere

può

algoritmo

di scelte

programmazione

Gli

localmente,

soluzione

costituiti

numero

di

efficienti.

di

permetta

sono

tecniche

al momento, che,

a una un

tuttavia classi

che,

in

polinomiale.

certo

oneroso

e più

decisione

esiste

di

inutilmente

decisione

idea

complessità

un

28

orini

un sottoproblema

di ottimizzazione

I*uso

semplici

quella

sempre

con

si presentano

risulta

sottoproblemi

questi

semplice

questa

di problemi

porterà

problema.

esempio

selezionare

presa

di alcune

come

passo,

più

di

di risolvere

in algoritmi

a ogni

decisione

non

qualsiasi

problema

necessarie

più

quella

soluzioni

si richieda

ottimizzaziòne,

di prendere sempre

vedrà

si

migliore

scelta

se tale

semplice

di

algoritmi

generale,

un

in cui,

con

le soluzioni

Questo

nel

la

viene

In

globalità.

16

le in cui

la risoluzione

per

ottenuto

caso

esponenziale

problemi

decidere

preoccuparsi

nel

Capitolo

elementari

alcuni

dinamica

memorizzare

complessità

algoritmi

gli

sequenze

senza

con

è di

utilizzate

Nel

precedenza.

trasformare

da

essere

possano

Afg

agli

i costi

f . Differented l d

sottostimati.

è assoc è più della

propriamente struttura

visto di dati.

come

di

successie11a

dinamica

Programmazione

La

mettendo

computazionali

con

contesto

questo

nel

descritto

certo

numero fondono

anche

quando

sul

basato risolve

metodo volte

più

modo

lo stesso

sottoproblema.

valore .

sviluppo

di un

prob

che

possono

dinamica

di programmazione

algoritmo

ottimo

il massimo ottima,

può

essere

di

è associato o il minimo ma

una

bensi

valore

con

soluzioni

risolto

problemi

soluzione

soluzione

diverse

esistere

tabella

essere

ottimo. tasi

in quattro

diviso

pB. iSl

1. 2.

Definizione

3.

Calcolo

4.

Costruzione

faii

pz so

Nel

auiili.irie

4

valore

di una

di

non

iltc

valore soluzione

caso x,ieise

l . cilitano

it

cui

preso

soluzione

ottima.

di una

soluzione

ottima.

di

base ii

debba in

li

soluzioni

u

solamente

determinare

Tutt,via.

d1

p iiiu

4.

una dalle

a partire

con,ickra ivne.

l esecrazione

con

attinia

ottimu

soluzione

l

definiieoito

l-3

del una

ricnrsiva dd

di una

struttura

della

Caratterizzazione

problema. il

dato

e ma.

la

detta

viene

non

ottimo

il valore

con

soluzione

una

valore

con

in una deve

risolvere

per A ogni

soluzioni.

diverse

che

che

dato dinamica

la soluzione

adottata

viene

generalmente

algoritmo

necessario

volta

ogni

la soluzione

di alcuni un

programmazione

e memorizzano

volta

sola

di

applicare

può

casi,

questi

strettamente

algoritmi

Gli

ammettono

determinare

del

ottima

soluzione

Le

dinamica

soluzione

Una

di quello

lavoro

nuovamente

problemi

e si desidera

un valore

una

di calcolare

Questi

i

1

comuni.

sottoproblemi

programmazione

ottimiz.azione.

O

fa più

i

In

sottoproblemi.

i medesimi

risolvere

divide-et-impera

si evita

in questo

Lo

di

si

la soluzione

termini

in altri

indipendenti

del

la soluzione

invece.

dinamica,

programmazione sono

i

ricorsivamente

determinare

per

il

suddividano

risolvono

ottenute

le soluzioni

della non

sottoproblema

ciascun

risolvono

La

metodo

richiede

sottoproblemi

di

abbiamo

Come

divide-et-impera

indipendenti,

In in un

scritto

tabulare.

di soluzione metodo

sul

problemi

sottoproblemi.

di

un programma

si intende

non

basati

assieme

i sottoproblemi

sottoproblemi

f

Il

originale.

prnblema

metodo

e infine

un

sottoproblemi

un

ma

algoritmi

1, gli

Capitolo

in

problema

di

numero

certo

un

le soluzioni assieme -programmazione

di programmazione

linguaggio

qualche

I

il termine

risolve

divide-et-impera,

metodo

il

come

dinamica,

programmazione

pm

bnttom-up.

strategia

cakolate.

intornlazioni

rammazione il

quotando

di

dinamica

valore

di è

una

riHsiesto

soluzione di

costruire

un

certo

ottimo. una

Nei re

segueriti

paragrafi

alcuni

di

problemi di

prodotto

una

scalari.

le due

mozione soluzione

del

paragrafo

16.4

di

una

tecnica

della

problema viene

in

usata

della

modo

da

deve

di

soluzione

del

affinché

di due

una

2

then

3

else

Prodotto

di una

sequenza

nel

Il nostro

di una

calcolare A

esempio

primo

prodotto

triangolazione

de

il prodotto

algoritmo

A

una

che

sequenza

risolve

il problema

di n matrici,

matriciale 16.1

del

v al utile

l espressione

di due

prodotto

sulI ordine

matrici,

dopo

dei

tra

prodotti completamenteparen1esi ato di due

parentesi. prodotto risultato.

Per

matriciale

A,

le

una

esempio, A A,

sequenza.

A,

tutte

essere

può

Un

di un unica

che

zzazioni

sequenza

completamente

di

elimini

di

do return

Dato

definiscono matrici

che

A,,

AA ,

moltiplicazioni

da

dobbiamo

di

necessarie

matrice il

modi

5

con

prodotto

moltiplicazioni

matrici

è 10 volte

distinti

data

seguente. A,A, ,

A,

A,

A,

A,A,

A,

A,

A, ,

A,A,

A,

A,

i-1

la matrice

Risulta

evidente

che

di

prodotto

una

sequenza

x p

con

i

di 1,2,

i

A cile

,

di

sequenza

modo

nel

formulato

A

matrice

generica

ha

parentesizzazione di maltiplicaziolli

conlplessivo

il numero

minimizzi

di

totale

parentesizzazione.

strutturaài

una

determinare

la

dove

scalari un

della

prodotto

essere

puo

A

numero

A questo

scalari.

del il

della

matriciale. di

standard

indichiamo

due

del

Prima matrici.

prodotto

rispettivarnente

il numero

n .atrici

al numero

di

parentesizzazinne

prodotto prodotto

l algoritn o

del

Determinazione

A .

struttura

calcola

A e B possono di righe di B. Se

essere A è una

di La

di

una

sequenza

tutto

di righe

matrice

influisce

il co to

sul

dell

al

costo

di

del

oritnso

Nel

seguito

e di colonne solo

in

se

con

di una il numero

p x q e B è una

rons A matrice

q x r.

le

Pn

eft cicnte.

Con

n matrici.

Dato

seguito,

moltiplicazioni

i

te mpo

di

esecuzion .

verrò

sei ipre

espresso

ii

termini

parentesizzazioni

con

soluzione,

un

non

indichiamo

china

di A è ugiule il risultato

delle

rentesizzazione

dell i

n

lei

nun ero

li

scalari.

g

Il

è

Prohlctna d ti

cl il1 t

k

l 3-4 segusini

sc

di

chiedev elci

numeri

un

parentesizzaziuni di matrici

sequenza

originale.

per

di

algoritmo

di una puo

risoluzione sequenza

essere

I

un genericn

sempre

I,

I

SCII

PkPn

iecjuenza

fornisce

dél

dinamica.

programmazione

di ricorrCAe. l

equazione

la seguente

1. abbi imo

ilella

matrici

rimanenti

una

di

parentesizzazione

A

diverse

delle

il numero

di

algoritmo

parentesizzaziotti

possibili

e cc lm u s Aj

di cnlonne

matrice

tutte

di

descrive

pseudocodice

la

presentare

he esaustivo

procedura

matrici.

moltiplicate

matrici

determiniamo

seguente

due

Prima

di

di

numero

I Nel

A ..

A,,

n. si deve

...,

matrici

di

sequen-a

n matrici

i ielle 25000

50

abbiamo

la prima

considerando

effettuato

una

AIA,

prodotto

viene

se

del

il calcolo

Pertantn

moltiplicazioni

. Pertanto

A,A

5

x 50.

100

2500

50 A,.

A, , A,

calcolo

Due

p del

completa

A,A ,

A,

La

dimensioni

A, con

scalari.

del

Il problema

la matrice

5

sequenza

della

delle

per 100

10

10

100

il numero

allora

A, ,

la matrice

necessarie

di dimensioni

A,A, ovvero

veloce

più

sono

50000,

50

100

moltiplicare

75000

A, A, la matrice

le

sommare A, A con se il prodotto

Invece,

A. ,

x 5 e 5 x

100

A

A,

A. .

A.

A,,

si eseguono

A, A,

dobbiamo

scalari.

calcolare

10

aggiungere per

per

matrici

10 x 100,

prodotto

la matrice

moltiplicare

moltiplicazioni

per

dal

matriciale

prodotto

tre

di

la parentesizzazione

numero

A questo

parentesizzazione

scalari

con

medesimo

del sequenza

rispettivamente,

siano,

10 x 5 risultante

scalari.

di 7500

la

B k,J7

k

A i,

jj

una

sequenza

della

necessarie

scalari un totale

C i,

differenti

matrici

delle

di dimensioni

la matrice

5000

m

j

consideriamo

le dimensioni

calcolare

moltiplicazioni

detto

l operazione

la medesima

in cinque

parentesizzato

co1umns A

parentesizzazioni

differenti,

il prodotto

si calcola

caIcolato

le ambiguità viene

Se

che

a costi

origine

abbiamo

delimitato

che

A,

1 to C i.

C

in evidenza

mettere

moltiplicazioni

standard

matrici

o è il prodotta,

parentesizzati.

le parentesi la

l algoritmo

prodotto

matrice,

completamente

considerando

sottoprogramma

parentesizzazione

della

se consiste

è associativa,

come

opportuna

matrici

di matrici

prodotti

matriciale

utilizzando

16.1

m0 l m

for

Per

50.

si vuole

A, -A

Possiamo

cofumns B

C i,j

7

di matrici.

è un

A

1 to

j m do

Supponiamo Sia A

for

e sorprenden-

I

dinamica

di matrici.

compatibili

non

rows AJ

6

di matrici

di programmazione

sequenza

1 to

5

danno

del

i m

fo

8

16.1

dimensioni

error

4

la

Infine,

considerevoli

presenta

descrive

sequenze.

w robes 8

if colusmts A

16.2

la program-

16.3

determinare

l

di

il paragrafo

Il paragrafo

per

sequenza

complessivo

dinamica,

comune

problema di una

numero

del

problema

8

Mzmtx-Mu.ttt tv A,

risolve-

per

il

un problema

dinamica

prodotto

il

efficiente.

sottosequenza

quest*ultimo

il problema

affronteremo

minimizzare

pnssederc

la programmazione

convesso

16.1

di programmazione

che

lunga

più

dinamica

programmazione

paragrafo

esempio

questo peculiari

risulti

con

matrici

Dopo

di un poligono

ti analogie

Nel

caratteristiche

dinamica

ottima

il metodo

sequenza

moltiplicazioni discute

utilizzeremo onimizzazione.

285

dinamica

programmazione

tt

2 .

Clll,

dil11OYll lli

Catnlani

II

S 11U/lOlli

di

c uesl t

cquszionc

di

ricorreh/a

di

Capirolo

15

Cn

I,

di A

A.

i

A

iI

necessarie

CIOVC

cn

di una

Il numero ottima

.

di soluzioni, di una

è esponenziale

quindi,

di matrici

sequenza

in n

il metodo

pertanto

determinare

per

di soluzione

brutale

sizzazione

la parente

della

A,

k

Struttura

della

ottima

parentesizzazione

che

passo

strut

del la soluzione

tura

questo

del

passo

notazione,

ottima.

essere

può

indichiamo

A A,

A,

Una

sottoproblemi

che

delle

prodotto dalla

somma

a cui

si deve

k tale

del

La

k

del

del

di

i1 costo

della del

mettere

prodotto

delle

in rilievo

una

due

il costo

del

è presto

proprietà

di Q,

parentesizzazione A, A,

A, con

di A,A,

a una

porta

cruciale

proprieth

A, nella

del

essere

Pertanto,

all

ottime

una al suo

distintivi

dei

facile

ottima

di una criteri

soluzione

dei

di

delle

vale

una

A

s i,

della

valore

del dei

valore

definisce

j

se

i j,

se

i j.

16.2

delle

una

soluzione

A A

iI

i

valore

k tale

costi

ottiaii

A.

una

valore

quel

tenere

k per

dei

Calcolo

anche

per A

la

Alla

deve

di

dei

delle

considerazioni

p, p,.

p,

sulla A,.

del

segni

è il punto

Questo sequenza

programmazione

di matrici

o ani

algoritmo

questo

algoritmo

modo

esaustivo

ricorsi

algoritmo n

vt 1.

minimo

in

controlla

un

il costo

del

nel

è esponenziale tutte

le

pnssibili

per

fare

una un

abbiamo

di i e j.

ricorsivo.

cnn

nei

diversi

no

distintivo

basso

relativamente 1

i

cammini

Nel

decisiva.

osservazione nunero

n, per

j

del

suo

un

di

totale

albem

del

problema

n

,

di ricorsione.

di

prodotto un

di sottoproblemi

ài

sottoproblen i.

urrà

del

della

paradigma

soluzione Nel

ottima czso

pro

ricoriii del

prnblema

rammazinne anicnte

dii amica in

del

termini

prodolto

consiste

dei

valori

di

una

ne l i ilill

scqcienz i

definizione

olu ivni di

ovini n itrici.

i

è

il

secondo

se

e

criterio

di

applicabilith

d ll

una

problema

8 -. può

richiedere

ricorsiva

d namica.

vo,

prodotto

prodouo.

scelta

possibile

calcola ronfo 16.2,

par

che

ingenuo

l algoriuno

come

parentesizzazinni

16.2 , nel

vedremo

come

Tuttavia,

che

definire

facile

è abbastanza

precedenti

di ricorrenzo

equazione

basato

tempo.

matrici

ottostrutture

è uno

luce

A, A,

per

passo

cui.

termini,

In altri

ottima.

I, j

ml

L

n i.

j

jj

parentesizzazione

j

m i,

che

Per

sottoproblemi. s i,

definiamo

ottima,

si ottiene

dei

ottime

soluzioni

i costi

costruire

in cui

il prodotto è quel

j

n muni secondo

tn i,

di

modo

del

Un

Il

prodono

una

dinamica.

Soluzione

del

ottima

di

A,

di 16.2.

paragrafo

tecniche

Pertanto

precedente.

parentesizzazione

pqp,

min m i,k m k 1,j p

dividendo

zzazione

sequenza

L esistenza nel

Poiché il valore

val ori.

di questi

l equazione

questo

j-1.

diventa

A

traccia

À,

eli

I.....

ragionamento

di A,

A

prod6tto

vedremo

con e

A

chiaramente

i, i

k

a t- uno

minimizza della

minimo

ma

noto

che

i dato

j

assegnare che

valore

dal

costo

del

di l sono

necessariamente

a l è dato

di l sia

il valore

che

assume valori

deve

ottima

assegnare

li.il

stiamo

ottenere

questo

ottima

Dato

moltiplicazioni

p, p

lkj

parentesizznziòne

analoga

sottoproblensi.

I applicazione

per

di A, A,

la parentesi

Chianmente

proprietà

del due

una

di p,

e

matrici.

due

di queste

prodotto

A, minimi

i costi

sommando

l esecuzione

0

Ilperchédellavalidità

sostituire

parentesizzazione

problema

ottima,

scelta

di

del

A,

ottima

ottime

ottima

per

j del

richiede

e A,,

i possibili

ricorsiva

A,,

il costo

con

una

ottima

i prodotti

assieme

è ottenuto

I, 2, di

struttura

la parentesizzazione

che

combinando

di m i,

alcuna i

0 per

la

considerazione

in

assumiamo

ottenuto

sia

e A, A,

tiene

ij

m i,

che

consegue

sequenza

eseguire

l,p Pi-iPcPp

Tuttavia,

definizione

A,

che

costosa

ottenere

una

che

parentesizzazione

le sol uzinni

meno

è sufficiente

di A, A

nella

A

strategia

possibile

ottima

vedere

A,

soluzione

interno e

una

sarebbe

ottima È

una

interno

esistesse

di quella

A

tra

questo

j

il valore

che

A,

Da

la

j allora

i

Se

del

problema

parentesizzazione A,,

A allora

parentesizzazione

di A,,

necessariamente

Se

inferiore

contraddizione.

parentesizzazione

contiene

A,

un costo

A nella

detto.

A,

A

vedere

va precedente

ricorsi

scalari matrice

della

calcolo

è necessario

non

A

A

1. Infatti,

al passo

matrici.

devenecessariamenteessereunaparentesizzazioneotri nadiA,A, di questa

la

è dato

di

calcolo

che

parentesizzazione

moltiplicazioni

del

seguente.

modo che

di m i,

il calcolo

j,

prodono

mk

nel dato

il prodotto.

A,A,

m i,k

da

migliore

per

ottima

parentesizzazione

con

,

due

matrici. le matrici

del

la parentesizzazione

è il risultato

A,

i

sottoprodotti

è il caso.

Il

di A, A,

parentesizzazione

A,

nei

il problema

finale

della

matriciale

rimanenti

si determinano

soluzione

Il costo

matrice

delle

j

non

per cui

consegue

ne

di

minimo

il costo

pertanto

pertanto

calcolare

j. È facile

L equazione di

convenienza

prodotto

A, divide

prima

la

del

prodntto

termini,

in precedenza.

calcolo

A,A,

e del

di

dei

il calcolo

m i,

di matrici

sequenza

ragioni

valutazione

prodotto

della

caratterizzazione

di una

Per

della

/ . Infine,

è la

prodotto

seguente.

/ matrici

ir. In altri

valore

vogliamo

punto

esaminando.

l

ottenute

costo

modo risultato

prime

del

problema

ottima

che

aggiungere

A questo

nel

delle

matrici

due

del

la matrice

determinato

un

per

A,

prodotto

intero

qualche

caso

Nel

realizzato

con

dinamica

programmazione

parentesizzazione

del

e A ,,

della

paradigma

i

j

prodotto l

j

calcolo

scalari Il primo

il

A,

di una

minimo numero

il minimo

j

n.

determinata

ottima

con

I.

del

in

in i.

Sia

ricarsivamente

matrice,

singola

caso

Nel

tale

sia

inefficiente.

particolarmente

n.

soluzione

risulta

esaustiva

ricerca

....

in i,

scalare

operazione

j

ti 1,

da

definire

consiste

ii.

la matrice

è dato

A,,

Possiamo

Q 4 /n

per

i

calcolare

per

prodotto

l

il casto

di determinare

nel problema

consistono

sottoproblemi Pn

un

287

dinamica

Progranuna ione

286

prugr imnsazione

di

gg

Invece

di

calcolare con

procediamo costo

della

assume

utilizza

tabella costo

n,

della

modalità

in 1

ausiIiaria

I ..

n

p,,

p

.. n, I .. n

1, 2,

i

, dove

p

fength

per

memorizzare

il valore

dell indice

calcoliamo

linea

il

....

n. 11 dato

di

modalità

n

l. Infine

la

destra.

p i costi

m i,

k per

cui

è un

j

1

n

2

fori

ORDER p

length pj

do

m i,

fori

k

e in k

1, j ,

di

livelli di

cicli

della

procedura

I cicli

e dagli

p, p

si

annidati

sono valori

dei

che

di questo

di esecuzione

uno

possono

variabili

le

procedura

il tempo

che

p,

M tRtx-Cvww-DRoER

n è il numero nella

una verso

sinistra

1.

j

On .

in tempo

presenti

di mostrare

si richiede

lá.1-3

dei

cicli

inoltre

annidamento,

controllo

1, ...,

soluzione

scalare

prodotto

i, i

ogni stessa

con

tabella da

calcolati

k

per

una

trova

del

valutazione

della

righe

vengono

riga

ogni

dei

strunura

della

i, 1 e k . algoritmo

è Q ir . i

la

Inolue,

-0

di

quantità

che

esponenziale dofori

I ton

I

necessaria

memoria

molto

si dimostra tutte

esaustivo

in modo

controlla

le

memorizzare

per

MwvRm-Ca t -ORoaR

la pmcedura

ton

2

5

dalla

m i,

tre

con

conclusione, 4

dipende

l algoritmo

variabili

le

Nell Esercizio

l

I ton

3

che

l altro,

assumere

gli j

le

determina di

elementi

m i,

analisi

semplice

facilmente

dentro MATRLX-CHAIN

tabella

della una

vede

elemento

Ogni

Da

ottimo.

mentre

che della

matrici

di

a sequenze

relativi

inoltre.

Si noti,

da A e da A,

partono

i valori

MATRIX-CHAIi-ORDER

procedura

bottam-up,

elementi

ed una

j

m i,

La

lunghezza.

di seguito

che

diagonali

contiene

tabella

della

orizzontale

linee

delle

di intersezione

il punto

16.2 .

descritta

procedura

x p con

p,,

ricorrenza

dinamica.

La

p ...,

memorizzare

per

di

programmazione

bottom-up.

di dimensioni

sia

sequenza

tabella

s 1.

dell equazione

soluzione

paradigma una A

è una

una

ausiliaria

del con

matrice

procedura

la

ricorsivo

fase

ottima

la generica

della

procedura

modo

la terza

soluzione

che

ingresso

in

289

dinamica

programma-ione

16

Capitolo

le possibili

m e s è 8 n- .

tabelle

più efficiente

dell

In

algoritmo

parentesizzazioni.

l S

6

60

-i l-

j

7

m i,

8

forkc

l m

j

itoj do

9

q -

10

m i,

ifq

Il

i

1

J

k

m i, then

m l-

j

s i,

13

return

m ed

L algoritmo

mostra

il costo

solamente di j

dal

i

di k-

m i,

costo

l

del

di

calcolo

calcolo

termini, i

j

q l

j

m nello

sequenza

j

del

l. In altri i

la tabella unh

su

che

p, p

s

costruisce

parentesizzazione

p,

j

m i,

12

1, j

J

del

del

1 matrici,

ordine di

i, i

in cui

di una

1...

sequenza

l

i

16.2 Figura le

minore prodotto

k

i

j

l

matrici. 2.... L algoritmo

per

costo

minimo

dalle

istruzioni m i, il cielo

i

2 il

il costo ni k La

l istruzione

1 . In seguito,

viene

i

l, 2,

eseguito

minimo

ca1colato

16.1

vedere

diagonale

1 , per

calcolati

figura

esegue

di lunghezza

linee -12,

viene

jj

1, j

facile

i

costo

in i,

2-3

linee

i i,

i

e-

0 per

l esecuzione

durante

i

I,

del

ciclo

il

n

Jinc .e

di ricorrenza 16.2

costo

minimo

volt

si calcola

di lunghezza

l

il valore

sn i,

via.

e cosi

3

solamente

di lunghezza

sequenze

per

pa sn

della

tabella

i

l.

del

ciclo

35 x 15

A.

15 x

5

A,

5 x

0

x

20

I

utilizzata

subito mininso

sotto ni i,

tabella

la figura. j

del

i Per

prodotto

he I

la-ORDER

54wtklx-Cw

procedura

siano.

Ox i

.

/ j e

ni i,

di questa solo

m i,

j

u

prncedura

q rella

della

parte

è dctinito

una

di n

sequenza

tabella

che

rimane

È

6 matrici.

al di

sopra

dell.i

i

quando

j.

Nella

figura

la cliagonali

. .

ùisposla cnme

orizzc ntalmente

èdispost ila

di una

scquenra

tabella

e la nella

di matrici

sequenza

figura A A,

delle

16. I, A

matrici

i può pii

notare

risei

i

elenchi

che

il coito

trovato

s ipr

m 2, 7125.

3

4

j

i r 5.

$j

5

j

j

p

f pp

ID 0

6

13000,

-0

15

Sù0 35

pp

pp ,

3

solo

j

della

principale

dall t

e n calcolnte

dimensione

30 x 35

A

.

I

per

A opii

valori

dai

2j.

i

matrici

A

formato

percalcolare

r

tabelle

delle

precedenti.

il s ulore

principale

il

9- l 2 dipende

il risultatn

viene

l

l equazione

seconda

sequenze

per nelle

descrive

n

una

ai passi

che

...,

utilizzata

Le

A,

A,

delle

il valore

...,

sequenze

per

Quando

cosa

prima

16.1

dinrensioiri

matrice

del

di j

prodotto

4

AI

A

A,

A

dipende

lunghezza

il risultato

è

del

debbia

1 matrici

di una

A

è il risultato

il problema L equazione

di j

di matrici

l, la matrice

jAl,

risolto

crescente.

di sequenze

e la matrice

viene

lunghezza

prodotto

prodotto

I

per

stesso

matrici

AQ 5.

71 -5

ji

-

43

tS

0

35

10

0

I1375

.

caso

iir

cui

n

6 e

290

E6

Capitolo

Costruzione

di

una

soluzione

ottima

lé.1-3

Sia

R i.

il

j

Nel

paragrafo

mina

ottimo

di moltiplicazioni

di matrici

esecuzione

dinamica del

nelle

fasi

la

della

j

dato

migliore

prodotto

calcolati

in

assieme

nel

calcolo

di A,

calcolo

di A,,

matrici

indici 5,

I,

di una

prodotto

A

...

A,

i e j. Si assume

A che

k per

che

ottime

n

strategia

soluzione dei

prodotti

cui

la parentesizzazione ottime

il

n

Anatogamente,

sequenza

gi

s costruita

la chiamata

iniziale

1, n

dalla

della

16.2

prodotto

sia

Nel

paragrafo

e gli t.rivLs

di

esamineremo

le due di

then

3 4 5

else

Nell esempio

A,

i,

j

della

X c

iX4tRtx-Cvew-Mua1t t.v A,

s, i, s i,

Y C

LXIATRIX-CHAhv-MULTIPLY A,

s,

return

MATRIX-MULTIPLY X,

retufn

A

di figura

il prodotto

dei

memorizzazione

della

che

comuni, la

un

della

tecnica

della

tecnica

program-

si avvantaggia

che

nsemoi -ation ,

la

paragrafo

questo

applicare

possa

variante

una

presenterenso con

ricorsione

comuni.

sottoproblemi

.4, A,

A, A,

j

j

Soltostruttura

Y

Il primo

la chiama a

sequenza

della

di nsatrici

la parentesizzazione 16.3

Diciamo

soluzione

ottima

Ogni

qualvolta

buon

indizio

questo

di dimensioni

10,

5.

3,

12.

5, 50,

del

di una

prodotto

sequenza

definisca

un

algoritmo ottima

parentesizzazioiie Psr ris CHAIt-ORDLR.

llù

COI11t. CUOIO

S i discolpo

di

una

le

della

Palivv-Orr w, i-Pwver s,

sequenra l1

caratteristiche

di tùl1l.ll l

matrici. .l

COhlIUI1 1

e le proprietà

per La

procedur i Ci lll I

del

stampare

Piu -Ovn w pli CCJtll ,I

l algoritmo

iM 11 -

proposti .

la

soluzioni ottima,

sottostruttura della

tecnica

di

della soluzio-

di una

struttura

in maui una

ottimava

nel

caso

ottime

dei

sottoproblemi.

questo

potrebbe dinamica.

programmazione

l applicabilith

anche

indicare

sottostrattura

interno

strategia

una

essere

un

Tuttavia. greedy

vedi

17. 16.1

paragrato

abbiamo

soluzianiuttime A

A,

mostrato

dei La

problemi che

tecnica

che

che

abbiamn

ottinsalith

del del

sottoproblema problema

e si dinaostra originale.

che

del

il problema

trovano

le

prodotto

di

una

di

parentesizzazioni

adottato

per

dimostrare

questa

ipotesi

porta

6.

efficiente,

p Ll ll11CtPO

una

al suo una

presenta

della

caratterizzazione

presenta

contiene

problema

volere

potrebbe

migtiore Si

un

nella

Ia tecnica

mediante

di ottimizzazione

problema

problema

problema

dell applicabilità

di matrici A ,,

un

che del

un

di consiste

dinamica

ne ottima.

contiene ottim

parenteiizzazione

risoluzione

s, l, 6

Mwmlx-Chage-h4uuivcv A,

procedura secondo

A

una

di

passo

Nel

Si determini

ottima

1, j

programmazione

16.1,

della

s i,

Esercizi

j6.1-2

detta

si

della sia

quale

e sottoproblemi

ottima

affinché

In

tecnica.

questa

sonostruttura possedere

Inoltre.

dinamic a.

proprietà

Capitolo

16.1-1

deve

chiedersi

ifj i

2

calcola

s,

ha

applicazione

di

esempio

è naturale

punto con

risolti

basilari.

proprietà

dinamica,

a questo

essere

possono

un

solamente

mostrato

dinamica

ottimizzazione

programmazione mazione

abbiamo

che

problemi

A.

11 .

l

n elementi

con

espressione

di parentesi.

dinamica

programmazione

la sequenza

problema

MATR1X-CHAIY-MULTIPLY A,

1 coppie

di una

completa

la parentesizzazione r

precedente

della

classe

Ma,TRtx-CwAii-Mt

che

di programmazione

Elementi

A

MwvRtx-Cesti-Oeoee

procedura

procedura

1 /6.

prodotto

la matrice sono

procedura

del-

dall utilizzo

facilitata

essere

può

problema

l 2n

nn

è

essere

l ultimo

calcola

g,,

esattamente

tecnica

I parametri

della

l ultimo

i-

A.

di A,

possono

definisce

ricorsiva

-

ottimo

del

soluzione

la

Si mostri

A

A,

A,,

matriciali solamente

n

procedura

di matrici.

. la tabella

definisce

16.1-4

di A A,

calcolo

n

per

elemento

generico

Ae nel

prodotti

s s l,

seguente

A,

che

Si dimostri

da

m è dato

tabella

m.

tabella

della

elementi

j

5uggerimenro

necessarie

ottima

di A

questi s 1,

Un

matriciale

prodotto

s 1,

La

matriciali.

alla

accede

Mwmix-CHwtv,-ORoER

procedura

altri

ottima

sottoproblemi

le informazioni

dei

C111818mente

,.

tutte

j

la

che degli

calcolo

J

di una

la reale

programmazione

una

soluzioni

contiene

l ultimo

il valore

nel

di

sulle

le parentesizzazioni

ricorsivo

matriciale

I .. n

calcolo

A,

modo

del

di

ci assicura A,

.. n.

valore

que

matriciale

risultato

s1

strategia

contiene

combinando

dal

di costruire

nel

di accessi

totale

JR i,

della

paradigma

permette

infnrmazioni

il prodotto sia

quale

il numero

l equazione

la tabella

informazione

Questa

del

passo che

calcolare

per

direttamente

deter-

precedenti.

tabella

è ottenuta

dalle

Mwvex-Cwwts-Oro

necessarie

mostra

la strategia

dipende

la procedura

scalari

Il quarto

di definire

esempio,

determinare

che

non

matriciali.

la strategia

nostro

mostrato

la procedura

prodotti

il compito

problema,

Nel

tuttavia

dei ha

calcolate

s i,

abbiamo

il numero

sequenza di

precedente,

volte

di

numero m i,

all elemento

29

dinamica

Progranuna ione

che

.s contraddiie

sequenza

A, A,

di

A,e

i snttoproblemi

l ipotesi

di

Capitolo

16

Spesso,

la

sottostruttura

sottoproblemi

che

esempio,

di

inpesso.

dei

matrici

soqoproblemi dei

sottoproblemi

strettamente Se

caso

della

dei

un

del

sottoproblemi

numero

di

sequenza

sequenze

arbitra-

basato

di

Per

di una

le strutture

esempio,

sequenza

ottime

considerare

dopo

tutti

lo

dalle

Sottoproblemi

metodo

esaminato

dei

dello

spazio

sono

altro

di matrici

della

che più

torma

A.

A

i

del

via.

un

iir

accesso

singolo

if

l

sottosequenze

di

e

maneggevole

da

2

n.

3

mi

jc

4

for

kc

itoj

do

C/

cnn

l, j

l

i

j

j

comuni

return

then

5

0

l E

seconda

applicare piccolo

la ,

tecnica

nel

di

che

un

algoritmo

e con un

ca

cola

volta

si presenta semplice Per

come

illustrue

interiori

dei

3,

5

e in

tabella.

fv1 I viene

4 3.

6j.

di tutti

Sc. m

per 3.

A

quattro calce l. tt

lo stesso

6

if

tabella

q

richiede

s nipre

consideriamo

nluzioni

delle volte.

ricorsi

vo.

parametri

i e j.

con

Infatti.

si può

istruzioni

delle

Per

di or 2.

11uos ametlte

ogni

vC lta,

esempio,

itlvecc

che

dimostrare

di valori

coppie

albero

ha

siano

ripetute.

come

calcolo

del

Tn

di esecuzione

il tempo

della

chiamata

dalla

prodono dell

nodo

Ogni

alcune

come

noti

4.

procedura dei

i valori

etichetta

di ni 1.

con

n

questa

un

1-2

linee

si ottiene

procedura

e 6-7

una

almeno

richieda

di

unith

tempo.

Da

un

una

volta

della

analisi

di ricorrenza

equazione

la seguente

costunte.

delle

il calcolo

l,

Si

ricorsiona

di

Inalbero

mostra

T1

1,

Tn

1

il problema

superinri.

jj

16.2

figura

4. che

l

n

Tn

gTk

righe

i j

k

l eleSi

durante

p

q

jj

REcuRsivE-M mx-Cvisw p,

Qù indn

trovata

sottoproblemi

p

è ri olto

tabella.

tempo

in i,

return

La

dinami-

viene un

un

differenza

passo

nuovamente

dei

righe

La

in una

soluzione

n i,

thea

8

il

in cui

sottoprnblema

Ogni

f

in ingresso.

ni .I i so

a opri

1, j

j

stessi

gli

di programmazione

ua

le

dati

problema.

memorizzate la

volta

ni i,

li

J,

sia

GeneraImente, dei

tecnica.

comuni. sono

riutilizzi

sottnprublemi ben

Ioidi

si possa

soluzioni

di una

più

comu ri

algoritmi

gli

mi comuni,

trr dei

utilizzato

delle

dimensioni

quest ultima

Invece,

olla

tojirc blc

reix-C , ii-Or

ii oluzione

volta

sottoproblema

ot

spazio

sottoprobletni

sottoproblemi

L icceiso

ti dei

affinché

sottoproblemi.

nelle

i sottoproblemi

il medeiins

la propri

durante nei 3.

è che

della

proprieù

lo risolve

nuovi

di una

piii

nuovo.

alla

la procedura

ha

risolvere

divide-et-impera

e le soluzioni

enerare

ottimizzazione di

ricorsivo

è polinomiale

completamente

nuovamente accesso

mento m

la tecnica

a

distinti di

è che

soddisfare

7 di risoluzione

continuare

richiede

si avvantaggiano

una

che

deve

dinamica,

programmazione un algoritmo

problema

problenu

di ottimizzazione

problema

sottoprnblemi

ricorsivo

principa genera

che

piuttosto

totale

Diciamo

un

della

senso

sottoproblemi. numero

che

proprietà.

k

i.

RECURSIVE-.vtATRIX-CW.tIs p,

Rzcuastvc-MATRIX-CHAIN

La

4.

ij

di

A,

l.

Me ioizeo-MwvRtx-Ceca p.

nodo

di questa

prodotti

....,

Ogni

è sosriruita

n grigio

sottoalberi

dai

del RECURSIVE-MATRIX-CHAIN p,

termine

di

1, 4 .

REcuRsivE-M TRtx-CH tii p. illustrata

chiamora

nella

tabella

di

chiamata computa ione

della

parte

ogni

naturale il

La

esaminare

per

Al

i e j.

i parametri

della

ricorsione

di

L albero

16.2

contiene

dei

di

problema

meccanismo

e cosi

sottoproblemi

e

problema

ottima

lo stesso

sottosottoproblemi

dei

del

la sottostruttura

applicare

non

spazio

di definizione ottima

2.2

1..1

3..3

2..2

3.3

quello

da

possiamo

sequenze

buon

sottostruttura

i sottoproblemi

Pertanto,

è dato

avere

sottoproblemi,

che

A, .

un la

di matrici,

dei

scopriamo A ....

dinamica,

nell analizzare

2..2

4..4

3,.3

Figura

programmazione

i

i

ri

dei

su questo

maggiore

problemi

mw

j,è ri

di

spazio

quest ultimo dinamica

di Per

di una

prodotto

della

Tuttavia

di programmazione

risolvere

caso

sottosequenze

di ingresso.

algoritmo

dovrebbe

consiste

sottoproblema. prodotto

A,.

spazio

nel

di della

necessario.

sottoproblemi

analisi

un

le

insieme tecnica

diverse classi naturali .

di sot toproblemi

considerato

come

un la

esistono

problema

per

di

applicare

può

le classi

abbiamo

sequenza

l esistenza

si

certo

come

scegliere dalla

grande

cui

i sottoproblemi

anche

a partire

un

per

che

tutti

potuto

è troppo

a

considerate

sottoproblemi

costruite

indica

problema

Generalmente,

include

Avremmo

di matrici

un

sotroproblenri

essere

possono

lo spazio

sequenza

di

dei

dinamica.

sottoproblemi

spazio

ottima spa.-io

detto

programmazione

rie

293

dinamica

Pmgrammazione

292

n

n iti

un

come

l. 4j.

termine

generico

Ti.

per

i

l,

2,

Citare IJ

SOllllllDtOI

C ll

I

tUOl1

I

8 lll l

i0111Al ilOf1 i

l .

n

per

pO iSlùl110

....

it

I,

si

presenti

fl iC1 IVCre ec uazione

T4

coiae

di

ricorrenza

COI11C

Tn i

termini

clcll cquazione

di ricorreivz.

1 i.2 .

i

I

g

2g

Ti t.

I

n

.

164

294

16

Capitolo

Mediante

il metodo

di sostituzione

striamoperinduzioneche

Tn 2

dimostriamo ,perognin 2.

2 il passo

induttivo

che

Tn

Q2 .

In

dimo-

particolare.

La

seguente

con

versione

è una

procedura

della

memorizzazione

95

dinamica

ranuna-ione

Prog

ReciRst E-

procedun

Labasedell induzioneèimmediatadato MATRIX-CHA1N.

che

Tl

1

Per

2.

n

risulta MEh10lZED-MATRIX-CHAIN p

n-I

Tn

n

22 il

1

length p

1

n

2

forim

1 ton

n-

22

2

if m i,

l conclude

la dimostrazione.

chiamata

della

In conclusione,

il numero

Recuastve-Mwmn-CHwtw p,

il precedente

algoritmo

l,

ricorsi

delle

totale risulta

vo top-down

essere

con

operazioni

eseguite

esponenziale

in n.

l algoritmo

j

2 ifi

3

di programmazio-

then

return

then

m i.

dinamica

risolve

li

ciascuno

una

volta.

sola

Al

4

for

else

j

j

0

k m

i to j

q c

do

6

l algoritmo

contrario.

m i.

j

5 programmazione

1, n

i. j

LooKUP-CHAIN p,

Si confronti

m

j

Loovue-Cewti p,

return

n

pn-I

a una

mji,

do

5 2

i ton

j

4

g pn-I

Questo

for

do

3

n i0

1 i. k

Loovup-Citi p.

I-

Loovuv-Cv. i p,

applicare

si ripresenta la tecnica

volte.

più

della

allora

è una

idea

buona

se non

domandarsi

siapossibile

con

una

Esiste

memorizzazione

variante

ne dinamica. in

La

tutte

le

al

r itmo

la

dinamica

efficienza

p ro ram mmazione

strategia

di controllo

ricorsiio

ricorsivo. iv

ma

novità

la

costruzione

della

le

soluzioni

tabella

che

memori-a-ione

utilizza

men oi -ed

ima

stato

un

calcolato.

risolvere

Quand

la p rima

pper

si memorizza

sottoproblema. p

valore

nella .. sem

speciale

per

. durante

l esecuzione

indicare

che

il Valore

dell

,

volta

u n

enericn

tabella. a. Q Quamio

ic p I icemcnte

si accede ,

sottoproblema, viene richiesto . allatabeltae

al ,

di

oritmo

allora . risolvere

si restituisce,

di

quell

tàbellQ

ne

chiamata

nel

j

che

l elemento

..

i

lo

ris ltato.

sateismo

e

j.

il valore

di

nr iu

tecnicllC

oidi

che

i

ir

I. l1ISllii , 1Vi.

.

1

p Il lllll ll1

LILI

i. lll 1plOI1II Illl

VLI1Ll ll 1

Ut/ll//, Ill

IIlll11C lll11C

ILlllilXll

u, i,

lli

I,

fi

j.

ma

ura

16.2

mediante

datn

il valore

usare che

quello

della

v.,flore

questn con

calcul t,

la prncedura

accesso

etTettivamente

speciale

solo

per

indi are

utilizzati . la

valore valnre i, j

Loovuv-Cerve ,

procedura

in

lo si memorizu

iniziale ietilP

reititui ce

la prima

n,lta

in,-..i

i e i.

i parametri

come

un

viene

stesso come

i ime

Altrimenti.

2.

il co to.

si calcola

ù- .la

nwmento

la procedura. empii . linea

RecuRsivz-M tetx-CHA

il valore ottenuti

allnra

in precedenza

Conviene

calcolato.

la chiamata

mostra

.

j

calcolatn

è significativo

non

procedura

è chiamati

procedura La

il valore tabella

In conclusione.

si richiede

nuovamente come

non

della

3

linea

m i,

RECURSIVE-MATRI -C w.

procedura

della

m i. j

il costo

risultato

si restituisce

e poi

m i. illl

ic u ione la soluzione

. czlcol i si

della

i. j ,

Looxup-Cap,t .p,

procedura come

caso

sono

soluzione

utilizzo I

Ill

elemento

memorizzato.

Questa

i i deiei

deve

scalari

moltiplicazioni

della

que ta

è sostanzial-

ricorsivo.

di

al

Se,

calcolato.

O.-. i

A,

it corrispond nne

che

indicare

per

ancora

essere

l

rapprese

j

metri,.e

la

calcolare

per

il valore

prende

11., ti-C .i -

procedura m i.

elemento

generico

necessarie

scalari

inizialmente

un

nj dove

1 ..

n,

moltiplicazioni

tabella

della

stesso

allo ..

m1

tabella

di

minin,o

te restituisce

di

principale

m i. assume

della

q

j

j

una

utilizza

numero

ricorsivo.

con

m i.

Mewo,zzo- V Rix-ChA r,,

procedura

elemento

onte . Conte

rn i,

return

numero

di tipo

strategia

di prnerammazio-

algoritmo ... in questo caso

anche

tabella,

della

una

algoritmiche

, inefficiente,

ma

una

adottando

pur

soluzioni

dinamica in

dall algoritmo

che,

delle

-, il naturale,

orizzare

memorizzate

dalla

definita

iniz almente

di

è di mem di

è data

rammazione

la stessa

vengono

quella

ancora

idea

soluzioni

a ternativa mente

ro

presceta

L

sottoproblemi

Un

della

spesso

modo

p, p,

dinamica.

programmazione

GRDER,

top-down,

p,,

j

then

8 9

Ricorsione

ai i,

if q

7 sottoproblema

1, j

ila

1 -, lotzt

beli i

e non

n-Ma1

i lciilzli

mx-CHwti

sia

diretumente.

piii

et tiiiel1 C

d

la

Capirolo

K

tabella,

in

pertanto.

memorizzazione

tempo

si

sia

da

memorizzazione,

un

un

che

algoritmo

una

richiederebbe

e le volta.

sola

un

tempo

che

Senza

I uso

tecnica

comuni

che

di

ci sono

soluzione

la

essere

può

di

Entrambe solamente

8 n-

sottoproblemu

verrebbe

risolto



D, A, B

Y. La

che

è lunga C,

se

generale,

rispetto

a un

costo

tutti

i sottoproblemi

bottom-u algoritmo

degli

regolare

algoritmo

di

spazio.

rara

notevole

se

mai

un

vantaeeio

tabella

alla

spazio

di

di r

v ere

solo

alcuni ridurre

una

dei

che

è che

un

di

c è alcun

in modo

In questo

della

Caratterizzazione

che

viene

fuori

i dia

la

di ricorrenza 16.4

dall analisi

del

motivazione

ricorrenza

medio

tempo

intuitiva

debbano

essere

con

del

cosi

l equazione

di esecuzione

Un

ha

soluzioni

le

perché

del

oritmo delle

due

di Xe

sottosequenze

scalari

nel

efficiente

lunga

sottosequenza

del

problema

a un

sottoinsieme

possi

del

numerodimoltiplicazioni Si

CHALX

di

ottimo

sequenra

di

e calcolare,

prodotto

matrici

t.

quickso

equazioni

di

de Più

della

tutte

B.

A,

le

B,

Si disegni fo

I.è. cui

pper

viene

1, quando la tecnica

eefficienza come

.

de v

-

descritta

procedure VIERGE-SORT,

applicata

a un

ricorsione

con

viene

quando

della

applicata

vettore

16 elementi.

con

memorizzazione a un

buon

nel

Si spieghi

t on

aal or t ri mo

1.

paruerail motivo

un aumento d d ivi e-et-imper i

produce d i tipo t

pro,sinodo

eC èmenti Lmr...,

della

lunga

più che

problema

iOttOSC

Llcl1l. 18

tl

e.

è

r., r,,

i .... ,...

i i,

se

lá.

I

è

Se.v

2.

Se. -

3.

Se

di

LCS

y

-,

-,

e

w

.v

y

e

.v

una

y

LCS

e Z,,

è

allora

Z

è

una

LCS

di

X,,

. allora

Z

è

u

LCS

di

X

w x ,.

,w

e

sequenze

Z ,,

sia

una

....

,

Y.

Xe

allora

y, W

due

Y y,,y ....y

LCS

ana

di

ottima

5ottostruttura

s

e

di

X,

e

V.

e

Y,

Y

d

11.

I

è

Ullg,.l

SOttOSC.gUcI1Z.,1

sottoiequenza

COI11LlllL..

I

fobie 1

comune

di

COI11U11C

1Vdi

a Z

Z

e

di

Y,

si i

la

I

. Chianinente. cotnune

sottoicquenza

ho ga

i

hcr a

liin

y

l elemento.v

1.

ch

Dimoitriah1o

i

etto illclici

..

.

c

Iit-, C,,l Q d.

st ttovequen -a ...... X tale di

llll,.l

di elle

per

..

COll

ClC

-.. St.. fllClll

X tlttti

se

J

eiiite eli

X X

queste

questo di

una .ci indici

..T,.... .........

sec u nz t. j

I.

2....

OllOSCCjllill/ 1

X,

c

l,

di

lieve i

lun

m,l

IA..i

X

.

strali I.

v tic

Nci

T..

I

Ci

i

l acrw iinii

ùil

termini

in

lcic1

iii

cit

C

im man itihcequeniv.

iure

di

l

l.

Al or.

X

pretisso

lll1I

I

Uslollc

.

X

di

comune

sottosequenza

una

costruire

potrebbe

concatin iri. che

X,

si

. allora

- c,v

baiterebbe

dell ipotesi

contraddizione

uno

Se

l

ione, lungherza

Y di

i

Furnnlme i

d. di

comune

il probi

.

nessuno...-.

eventu,.ilmehte

crescente. s

sottosequenza

nnlizzerento

iene mente

X è i prejisso

in. Pere empio.

vuota.

la sequenza

e Xè

8

dei

sequenze

il fu1zem-Sonar.

II problema

Ullu

A,

di

Xe

Il

B,

...xe ,

X C.

B.

che

diciamo 1, 2....,

i

con

due

delle

prefissi x

v ...,

X r,

l

se X X

allora

X r,,x ...,x

Di nostra

16,3

D, A,

Teorema Siano

di ricorsione

sequenza

di

come

naturale

classe

la

il

parentesizzazione,

la risposta.

l albero

conciate

una

seguito,

coppie

nelle

LCS

data

X se e solo

sequenza

C.

della

problema

ten po

un

ottima,

sottostruttura

della nel

vedremo

Come

seguente.

più

lunghe.

sequenze

prnprietà

sulla

richiede

ingenua

soluzione

la per

la

soddisfa

LCS

precisamente,

qualunque

16.2-3

X,

di

impraticabile

pertantn, della

teorema

dal

scalari,oppureeseguirelaproceduraREcuRsivz-Mavex-

giustifichi

punto. indici

di

m

rendendola.

dimostrato

moltiplicazioni

enumerare

ogni

per

a quel

di

di X corrisponde

sottosequenza

ogni

che

le

tutte

sottosequenza

l informazione

mantenere

bisogna Dato

una

anche

sia

sottosequenza

risolutivo

fino

2....,

l.

il problema

Tuttavia,

X di una

prodntto

ili parentesizzazioni

il numero

risolto

essere

possa

nell enumerare

consiste

LCS

della

ogni

che

procedimento

trovata

sottoproblemi

determinare

LCS

della

X,,

À

lunghezza

Ydi

dinamica.

che

diverse.

per

Xe

comune

il problema

per

controllare

nel del

fase

ogni

i-esiino

è il m o d o piii

Q Qual

ingenuo

di soluzione

metodo

di ingresso. 16.2-2

X

sequenze

due

date

il problema

sottosequenza

lunga

più

il

necessari.

di ricorrenza 8.4

dell al

sono

programmazione

non

memorizzazione

esponenziale. l equazione

comane

alcuna

e di

Esercizi

Si confronti

8, a 5.

come

della

la tecnica

sequenza

esiste

non

8

A,

D,

sequenza

4. La

lunghezza

a X e Y, ha

di

Y, dato

di Xe

LCS -

lasottosequenzacomunedi

determinare

mostreremo

paragrafo con

efficiente

Y. Durante

lé.2-I

e si vuole

comune

B,

A,

comune

sottosequenza

è una

o uguale

sottosequenza

lunga

piii

la

pure

comune se X

la un

da

tempo

strettamente

della

e Y v,,y ...,y

...,x

esempio,

sottosequenza è comune

maggiore

di 1unghezza

sottosequen a

C, A

B,

lunga che

C, B, A ,

X e Y, come

di

le sequenze

la sequenza

A

Z è una X e Y. Per

sequenza

una

che

è la più

non B,

LCS

comune

problema

massima.

utilizzata

C, A

è una

A

sottosequenza

costante

Inoltre.

sottoproblemi

con sono

non

tabella.

i vincoli

ricorsiva

allora

fattore

essere

può

esistono

sottoproblemi

quei

un

della

ulteriormente

soluzione

volta,

una di

Il motivo

problemi

sottoproblemi

allon

almeno

efficiente

il mantenimento

per

per

dei

risolti.

risolti è più

memorizzazione.

minore

dinamica

nello essere

di

con

costo

accessi

mmazione

Tuttavia,

necessitano

dinamica

vo top-down

e si ha

essere

devono

rammazione

ricorsi

la ricorsione

per

struttura

d i pro

8,

3 e la sequenza

8,

Nel

C, A, 8,

D,

dove

8,

D. A,

C, 8,

B,

A,

è, 5, 7 .

2,

di entrambe

sottosequenza

e Y

di X

sottosequenza

risulta

X e Y, diciamo

sequenza 8,

Xe

è una

B

di indici

sottosequenze

due

C, B,

B,

naturale

ricorsivo

sottoproblema

le

C, D,

8,

sequenza

di X e Y se Z è una

con

volte.

alooritmo

Z

esempio,

Per

Date

in un

ricorsione

ogni

l algoritmo

lo stesso

risolto

dinamica.

memorizzazione,

dato

esponenziale

una

-

.z,

con

On .

impiega

sottoproblemi

ricorsione

la corrispondente

di matrici

calcolano della

della

di programmazione

dei

procedure

tecnica

algoritmo

sequenza

bottom-up

proprietà

due

la

Quindi,

in un

di una

top-down,

della

distinti

On .

Q2

prodotto

algoritmo

da un

tempo

algoritmo del

si avvantaggiano

sottoproblemi esattamente

impiega

il problema

On

soluzioni

totale

trasforma

In conclusione,

In

297

dinamica

Progranvnazione

296

cunc itenando

e

Y.

è.

dinamica

Progranvna ione

298

Capitolo

E6

1V con

l elemento

x

di I-. Pertanto

otteniamo c.z,

allora

sottosequenza

La

comune

di X e Y di lunghezza

maggiore

è

una

W di X,,

comune

di X

Si dimostra

Il Teorema interno

con

comune

e Y di lunghezza

maggiore

e Y. Questa

è una

ragionamento

di caratterizzazione

una

LCS

sottoseqdenza nel

un

dei

di

X,

e

Y.

di k, allora

contraddizione

comune

seguito,

Soluzione

una

16.1

soddisfa

esistesse

Se

W sarebbe

dell ipotesi

ricorsiva

dei

a quello

dimostra due

che

una

sequenze.

la proprietà

soluzione

ricorsiva

simmetrico

delle

prefissi

della

che

una

anche

una

una

LCS

Z sia

LCS

il

sottostruttura anche

nel

di due

Quindi,

della

soddisfa

usato

sequenze

contiene della

problema ottima.

la proprietà

Inoltre,

dei

La

Y

y,,

16.1 y ...,

determinare LCS

implica si

y, , una

bisogna LCS

è una

Per

nel

dell elemento

c vt,

lunga

come

LCS LEiSGTH X,

vedre-

di X,

che

considerare

caso

LCS

determinare

uno

trovare

in cui

di X,

o due

una

x

w y,

e Y che

il problema

LCS

Y,.

e Y,.

sottoproblemi

m

length XJ

di Xe

della

Y si deve

Entrambi

una

LCS

di X

sottoproblemi.

LCS

di X

allora

una

LCS

rn-

LCS

di Xe

e-

La

due

più

x

se.v

caso

del

determinare delle

del

molti

soddisfa

la proprietà trovare

devono

altri

il costo

sequenze

X

sottosequenze

ha LCS

problema

del

problema della

problema

di una e Y.

dei sia

risolvere

snttoproble

LCS

2

n c

length

3

fori

uno

ci

j

lunghezza

1, j

nttima.

0,

max c i.

j

à

una

1, ci

1, j

di

LCS

della

lutighezza

di

l equazione

ricorsivo,

tecnica

esponenziale

della

pro

di in

r imm.wiollc

1

il i ali -.-

di X e Y.

LCS

for

i

do

c 0.

do

for

0

j

a

1tom

fori

7

due

1 to

j do

9

if

n i

v then

comuni.

di X,

e Y sia

e risol

vere

una

c i,

j

b i,

j

LCS

ha

j

come

i e j è ueuale lunghezza

0.

la nostra

equazione

else

LCS

i mede

la lunghezza

La

allora

una

sottnstruttura

di una

LCS

c i,

j

h i,

j -

c i.

j

I i.

j

delle

due

ottima

del

i0 i j0

j O, e

x, y,,

se

i j0

e

x, y,.

o

16

16.3

figura

tzbella

una

tempo.

La

dinan ic

-T c i. m

1

j

m

in tempo

è calcolato

restituite

le tabelle

nsostra

01

cnmc

risultato

della

di esecuzioise

il tempo

e quindi

dell

dallachiznsata

facilmente

poisi mo

calcola

pcr

LCS-

procedura

i 0

proi eduta

tabella

di b

uoa

LCS l Ila

restituit i

LCS-Lc w

procedura

puo

utilizzat t

essere

per ige li

16,5 che

1. j

ci

l6.5

LCS

ricorrenza

m

b, c

return

17

l

e i. j

then

else per

La

SC

m 1. j

soluzione

ricorsiva

se

l

l

1, j

ci

if chi i

in ,i

di ricorrenza

a 0.

-

una

c Utilizzando

b e c

tabelle

0

0 to

j c-

Costruzione Calcolo

b .. ottima

soluzione

per

di queste

di trovare

matrici

di una c i.

indici

la formula

1

sequenza

Definiamo

degli la

quindi

di derivare

I

due

sempliti -.

elemento

Y

dee i.0

6

a quest

sottoproblemi

affrontare

la definizione

o l altro

0 eli.

per

I tom

sottoproblemi

grande

il problema

mi devono

di una

prodotto comporta

soluzione

Se

permette

le

restituisce

r.- -

e

i,

e concatenare

I

risolvere

V,.

r,....,

v,

Infatti,

e Y

l

si devono

necessariamente

i sottoproblemi

Chiaramente,

nel

della

scelta

alla

1 .. n

il generico

è che

..

prim

seconda

della

comuni.

14 Come

.. m,

termini.

altri

quelli

poi

b1

tabella

procedura

di una

sottoproblemi.

ricorsii a

La

In

x.....-

r,.

p

1

10

una

di Xe

g.

righe.

X

al suo

più

5

si vuole

quando

di X e Y basta

una

c i,

prima

corrisponde

sequenze

riga,

intuitiva

L idea

che

è la lunghezza

n

della seconda

di X e Y.

notare

trovare

LCS

sia

LCS

È facile

che,

y . Nel

trovare

di

calcolo

sottoproblema

una

tabella

della

posizione

elementi

ottima.

soluzione

una

gli anche

destra, utilizza

delle

l ordine

le due

sottoproblemi

devono

LCS

l elemento.v

verso

procedura di

la costruzione punta alla

2.

punto

via.

e cosi

di ingresso

parametri

seguendo

calcolati

sono

tabella

da sinistn

calcolano,

4 Il Teorema

come

ha

LCS-Lemma

procedura

dell ipotesi.

sottosequenza

Y.

3

mo

sottosequenza

contraddizione

Z

comune

sottosequenza di Xe

una

una

elementi

-,

Se

2

si ottiene

y

la

iruvare

luisghezz i

le

ioluzioni

di

criverc una

con

LCS

uria

un di

mn lith

due

al

oritmo

iiqiisnze.

hottciin-up.

.

..

.

. NC AO

co

l x .ice

iutti ti tllClli,.l ,,

ù.ll

300

Capitolo



0

j

1

a, i I

0

2

3

4

5

D

C

A

a

0

o

.p

A

o

T

o

T

5

o

tuttavia,

che

in spazio. Per

o

p

0 -.I

o

I.

2

il valore

0

5

1

l

D

6

2

2

2

t

1

2

33

2

t

3

0

B

1

0

l

procedura

PRO-LCS si

2

3

t 2

tp

2

3

3

4

4

8 mn Tuttavia.

4

6.3.

Le

tabelle

c

c e b calcolare ...,,,

ge

dalla

.,C,A,B,A .

LCS-LE

procechrra

E el

emenro

delfa . .

r,

ENGTH

tabella va

di

app

rlgn

l icata

alle

i e coloima

e

X

j contiene

e

ore

seqr,er,-e

emenro

c 7,

6

A.

il valore

in

b

a

U,

f n,

o

16.3-4.

gni

è sufficieirte

segnire N

ddel I ti p o

ffreccia jj

6n c

le frecce sul l ca nnrino

LCS,.

B,,

LCS.

b i,

a partire

dall angolo

corrisponde

a

cn

inferiore

elemento

destro

del1a

C/

in

richiesto

spazio

tabella.

11O fg

allora

la una

ricostruire C

di una di

tabella LCS

se il problema

in un

.i

-

èlC l

inti nv i

P

n.

di O i

dell ordine

tempo

gli

abbastanza

conterrebbe

non

minori

..

cui

in

caso

di restituire

. ao

.pi

di tahell-l

della

nel

solo

richiede

ùl

c. la ri

quantità riga

na

effettivi

sono

LCS

dimensioni

una

utilizzare

può

LCS-I .i - 1

procedura tabella

della

righe

memorizzare

per

miglioramenti

Questi

la lunghezza

determinare c

j

dello

maggiore

leggermente

si

realtà.

In

due

di sole

necessita

esame.

dalla

richiesto

asintotico

lo spazio

istante, in

riga

i rdine

d-11

c.

tabella

nell ai qolri

,... d.

j .c .j- e i una

a ogni e la

l Esercizio O,l,.

la

non

LCS

una

spazio

uno

di

bisogno

. p io

li

riduia di

calcolo

alla

E -- ciglio

Yell

modifica il

per

sempre

abbiamo

n.

Om

è stato

imito

molto

procedura

questa

necessario

po. o i oliari

tre

di questi

tempo

Sebbene

spazio

infatti

diminuire

possiamo

precedenza

lo

in

LCS

procedura.

asintotico

la procedura,

infatti Figura F o

la O mn ,

memorizzare

per

una

costruire

scrivere

quantità

in modo

diminuisce

2 t

di

una

una

utilizzando

Quindi,

j.

possiamo

chiede di

c i,

di e i..i

il valore

h, quale

tabella

alla

accedere

solamente 1 J. Dato

e c f i j-

r

di Atri

valore

dal

.

1- t ll

utilizzare

non

potrebbe

dipende

j

1, j

1, ci

e senza

01

c i.

elemento 1, j-

c fi

LCS

della

problema

generico c

calcolare

per

richiesto

3

un

in tempo

utilizzato

16.3-2 --t

T

.A

7

t 2

di tabella

della

determinare,

2

1

4

2

2

del

ia in temP

asintotici.

miglioramenti

a sostanziali

portare

possono

la soluzione

esempio,

Infatti.

g

le modifiche

casi,

elementi 2

30I

dinamica

Pmgrnmnazione

l

I, ,.

Esercizi PRttvT-LCS b, l

X, i, j 0

ifi

oppure

2

then

3

ifb i,

then

PRIxT-LCS b,

determini

lá.3-2

Si

mostri

else

if

X,

i

1, j

l

X X

1

b i,

16.3-3

j

7

then

P m-LCS

8

else

PRtrlv-LCS b,

esempio,

considerando D ato si ha,che

j,

Una

b,

X, i

i, j

i. j

X,

la tabella c

e in tutti

il tempo

più

b descritta i livelli

nella

della

di esecuzione

della

accade

Questo immedinta Alcune Al i un

figura

ricorsione

l 6.3. ..

la

d U

pO

si decrementa

sempre

è Om

procedura

,

costante.

.. pi t a spessn memoria

utilizzata

frequentemente

tecniche

modifiche fattore

di

quantità molto

con

1

1. 0.

I, 0.

e

1. 0.

l,

1. 0,

0,

1. l. 0 .

.

O vi

tempo

in

c e le SCQU

la tabella

disposizione

avendo

LCS

una

ricostruire

possibile f . ma

Si

dia

una

versione

ricorsiva

in tempo

O mn .

P

A d

l

Si mostri

come

calcolare

elementi

della

t debella

di

. possono ma

pro

semplificare senza

nel

ranuzzzioiw.

porture

Jella

memorizzazione

con

risolvere

n1ostri

come

spazin

addizionale

dall al caso

d

-

LCS-l-

procedura

lo

IA goritmi

p izio

uno

sesso

con

solo

1CI11pO

O I1

probleina

- miil .

solamente

utilizzando

LCS

Succe siian - ti .

Ol.

addizionalè

lensenti

n

min ni.

più

Ol.

n.

- àdi accorgersi

o itmo

di una

la lunghezza c più

Si

un

determini

sl

oritmv

efficiente

uan s oilprogettodiunalgnritmo,ca . Quandosièconclu e la

0.

XX CYQ V fV

monotona

esecuzione

0,

l.

1

16.3-á

soluzione

di

ia

come la tabella

eseguibile

16.3-4 Per

LCS

una

x,.

print -

Si

utilizzare

5 6

16.3-I

return 4

j

4

0

j

.

possono che

che

essere hztin

uno

il tempop di n i liorati.

J G.3-6

Si

determini

di

crescente

un

al

ori mo

per una

per

in

trovare sequenza

tro, , .

ùi

e in

n

IQ più

.

lllll l

l .9

numeri.

tempo

On

Ign

la

pii,

lun

a ii ti l

snluziune

dinamica.

c., la .struttur ura a nti lineame

d e ll t,

a 1g goritmue

-

mi

d ella

liorur ff

icicn a.

e I etticient,t fn alcuni

lllOt II/1I1t d in rcii .

lL

LOllOlCC ltCll/v

C llltli l il

c llc

indole

sii

mi

1

1

uno

Capirolo

16.4

Triangolazione

303

dinamica

programma inne

16

302

0

di un

ottima

poligono

I i I I I

In

questo

esamineremo

paragrafo

della

il problema

triangolazione

di

ottima

un

poligono

I

I

I

I

convesso.

A

geometrica di

una

dispetto

della delle

presenta sequenza

apparenza

vedremo

esteriore, oli e sorprendenti

considerei

che

con

analogie

di

problema

questo

I

I

I I

del

il problema

natura

prodono

l

I

I

i

l

di matrici.

I I i

I

1

è una

Un poligono che

spezzata i lati

de1

poligono. Un

paragrafo

considereremo

da

un

stanno all

sui

punti

del

del

è formato un

Generalmente vertici. i,i

che

divide

di

un

un

triangolazioni la sola

corda

che

triangoli del

non

e divide Nel

dalle

L D dove, idalla

in n

pesi

dei

L j1 it

/,.

v. è la distanza sci.lta

della

funzione

di retta

T-2

La

che

figura

triangolazione

In una

...,

inoltre

l insieme

T interseca

almeno essere

poligono

i .

Una

16.4

non

T delle

corde

una

delle

sia corde

della

convesso

una

due

hanno

con

ed

una

funzione nel

tn

di

w definita

peso

determinare

tri n,,olazione

una

strutture

in un

ad

Inalbero

del

poligono.

sui

una dei

triangolazione

che

lati

ri vertici

3 corde

T.

ha n

un formati

triangoli

Una

che funzione

di un

triangolazione parentesizzazione Il modo

peso

tra

i

e i . L algoritmo

1 i tunz on

peso

che puo

essere

stiaimo definita

pro

ettando in modo

espressione

migliore

per

come

spiccare

di

cr r

7

rri

a

unalogie

con

questa

descrive

che

quella

è fare

analogia

della

di parsiisg

del

parentesizzazione

La

dell espressione. della

prodotto

un

a

corrisponde

espressione

una

di parsi tg

albero

i

-

Ogni

foglia

la radice

dai

lati

mitsimizza pe.,-o

gli

poligono

alberi

non

di

riferimentn

a

sequenza

binario

albero

descrive

16.5

figura

di matrici

16.6

del

di parsing

dell albero

ha

sottoalbero tleitro.

di parsing

che

un

e le es pressioni

e

a,-,oci t,

dipenùe

irbitrario.

O

a micnc

il umetto lhcro

è etichettata

sottoalbero

rappresenta

li

,

il

il prodotto

s

l, .1, j

euclidea

pc ligono rricmgoli

soiprendenti

delle

pre enta

poligono

di una

completa detto

altrimenti

è

l,l

un rii

albero.

parentesizzazione

completo,

possibili

I lati

triangolazione

di m,mea

un

intersezioni

in

consideriamo

pvligoiro

in

il poligw,o

e li,.ide

parentesizzazione

di matrici.

sequenza

sottoalbero ottima

nella

della della

problema

Una

è massimale

corde

la

con

Il problema

corda

il poligono

descrive

le corde

4

3

triangola io re

Ogrri

coiivesso.

poligono 7

da

triangota-io te

divide

tn a

uguale

corde

5.

Analogia

dei

nsodulo

detmite

del

di

di

ioni

triangola

Dire

16.4

rm,rirmero

Ira

poligono.

le operazioni

tutte

sempre

corda ,

poligono

di un poligono

consist

triangoli

4

lati

2 triangoli.

ai triangoli l,i

disgiunti.

e v,

del

possono

tria rgola -ione

v, i . i,..., Il problema

naturale

Iati

triangolazione

ogni

di P.

dei

modo

corde

è detto

v

...,

T di

terminali ,

punti

all insieme

della

P

somma in

dei

il poligono

corde

tre

da un triangolazione

problema

convesso

con

,v,

,,,

v,

insieme

poligono

Infine,

poligono

il segmento

di 7 lati.

appartiene

risultanti

poligono.

sono

b

a Figura

P è costituito

seguito

Nel

.

I

l

due

l insieme

orario, allora

I

1

una

poligoni

in un

eccezione

i

del

I

I

stanno presi

il segmento

in senso

come del

che se.

I

g I

che

piano

punti

o all interno

convesso.

poligono

vertici

dei

del

convesso

poligono,

elencando, un

interpretato dei

adiacenti,

poligoni

di un

con

non in due

triangoli

di

gli

consiste

poligono

insieme

viene indici

del

al perimetro

C

punti

piano

I

poligono.

vertici

poligono

l

dei

è detto

o all interno

rappresentato

VA

in questo racchiusi

l insieme

semplice

appartengono

viene 1 dove

del

Infine,

poligono

al perimetro,

coinvolgono

i e v. due

Siano i,v,

i,v,

Un

de

del

L insieme

poligono.

vertice

se stesso

con

dei

detti

punti

intexsezioni insieme

di retta. un

è chiamato

i

è una

poligono

di segmenti

consecutivi

L

perimetro.

che

punti

se P

vertici

dei

detto

esterno.

poligono

, ....

aritmetiche il numero

del

da

Pertanto.

i,v,.

n lati

interno

appartengono

che

li unisce

suoi

è detto è

sequenza

contiene

se non

semplici.

è detto

una

lati

poligoni

poligono

poligono

qualsiasi

che

semplice

due

sempre

semplice lati

esterno

è detto

unisce

da

un

Ovvero,

bidimensionale.

piano

è formata

ed

che

punto

poligono

poligono

del

su se stessa Un

poligono.

chiusa

spezzata

si richiude

5

I

I

cti deità.

con

che

iinistro.

1*espres ione di n elementi

uno

E,

Esiste un mici

dei

rappresenta una

atomici

con ponenti

l espressione

corrispondenza

parentecizzate

matrici

E,. ed biunivoca

cnmpletamente.

un tra

304

Capitolo

o

triangolazione

della

il peso

conterrà

n

m 1,

I elemento

l algoritmo,

eseguito

avere

Dopo

305

dinamica

ramma ione

prog

16

I

A

Nel

ottima.

A

A,

VA

di

Sia

T una

triangolazione

che

contenga

A.

AI

AI

A,

Ù

16.5

di

di

L albero

a

parsing.

all albero

1 p

di parsing

Ogni

parsi g.

matrice

del

A

di

prodorro

corrisponde

al

nntrfci

n

simmetrico, con

con

una

Le

lato

l

1,

i

per

l.

2....,

6.

Allo

figure

una

di

p

della

parsing Sebbene caso

si

n lati

corrisponde

costruire,

può

di parsi

ng sono

A A

a un albero

con

un

di

procedimento

in corrispondenza

biuni

i

del

anche

mettono

a una

a un

i,i

matrice

di

un

albero

di pzrsing con

poligono

corrispondenza

questa lato

alla

comsponde

triangolazione

in evidenza

j, corrisponde

...,

p

di

prodotto ottima.

biunivoca

diunpoligonoconn

A,

calcolata

una

sequenza

di

1n altri

termini,

ogni

essere,

può

ii, allora

di una

v

la

matrici

l

di

ogni

.

....

di uno

dei

qualunque del

di T.

peso

La

v.

due

ti

i pesi

con

sequenza

di matrici

I vertici.

n

funzione

pes

poligono

P rispetto

del

caso

il

Se

come

del un

A, A ...

la matrice

A

ha

del

particolare

problema

riformulata

ni

0 a o

peso de

ottima

P è.

poligonn

tutti

1. 2,

0, peri

i

un

La base

vo.

ricorsi

poligono i

i vertici

.

con dei

ottime

tre

1, ....

i. i

k

n. Quando

almeno

con

poligoni

I. Ia

i

j-

Il no.. ro

vertici.

tra

I. la somma

j

v

v.....

v,,

è il I l O

ricorsione

della ...,

e v.

i

risulta

ricorsiva

fonnul azione

r i,

vertici definisce

triangolazioni

de11e

prodono

triangolazione

di una

assegneremo

triangolazione

in modo

v per

del

calcolo

del

il peso

a, come

il ragionamento, di una

j

soli

v,,

minimo

iI costo j

n.

t 1.

di minimizzare. ed

i

Il peso

V

di definire

i,

come

l

facilitare

Per

l

con

j

per

la i alutazione

A,

min s k -I

di

destiniamo

un

Si contronti

per

dimensioni

il prodotto

vqv,

con

di ricorrenza

equazione

la precedente

calcolare

iu Dz ,

I, j

t i,k r k

prodotto

prnblerna

A,

A,

matrièialeA

se

I

j,

sc

i

j.

di ricorrenza

l equazione

Se si eccettuula

16.7

tunzione

della

presenza

che

16.2

paio.

è definita

ottima

del

ottin a

parentesizzazione simmetrica del

non

prnbletna

del sia

del

nel

A,

il problema di

prodotto

definita

A

prodotto

vera

funzione

questa

una

paragrafo

...

detmi ce

sequenza

rif ri tsento in i.

I

z i, i l

cl

iitoltre I,jj

l i li eu wA

9 i iene



trian

della

la procedura

l ulbero

viene

ottima

ol azionare

in un

eseguita

di sp ilio

un uso

con

On

tempo

8 n- .

A,

della

16.1.

peso

triangolazione di

con

matrici

alcune

accade picc 1e

vr ii

ottima che

l,i

Esercizi

tlloditiche

nu dific t

Si

che

dimostri 3

e divide

corde

il

poli

un

di

triangol ione

o ani

itl

uno

u

2

trian

poligono

con

convesso

verti i

it

hi

i li.

t l i.4-2

q

due

/ .

particolare

un

dei

detieniti

sottopoligoni

di minimalità

l ipotesi

m i.

t i. j .

dell elemento

poligono

vertici

di Ai,v i

il peso

tipo

cerchiamo

punto

li

do

del

è quello

obiettivo

. i ....,

valore

dal

di un

sequenza

n

l vertici.

durante

è un

istanza

equivalentemel te,

il prodotto v,,

v,,

Mwmtx-Cvw -OaoER.

diventare

T è dato

di

Il peso

triangolazione

triangolazione

una

poiché

contraddirebbe

definito

definiamo

i

i oca

l6.4-1

9

peso

abbiamo

A.

l

poliscono

dato

quindi,

r

degenere

poligono

A questo

di n matrici

-A,corrispondeaun

Dato P

la proprietà

procedura

ottima, minore

0

triangolazione

è un

i

di matrici

I, 2, l

un

in cui

modo

stesso

degenere

b

del

ottima.

i l

Una

e

triangoldiione

convesso

con

N AV

gli alberi

corrisponde

A,

problema

triangolazione

p,

poligono

parsing

parentesizzato

i .v. con

sequenza

poligono

di

con

l

della

una

.

dei

triangolaziane

La

V

Vg

1 venivi

ir

con

l.

alla

appartengono

che

triangoli

e dei

C

n

k

1

con

matriciale. il

problema

albero Infatti,

16.5 a

corda

prodotto Difatti,

di un

di poligoni.

delprodottoA,

mentre

un

triangolazione.

e, pertanto,

matriceA

del

Da

completamente

n foglie,

vertici.

triangolazione

1 foglie.

le triangolazioni

Il prodotto

di

una

quindi,

con

av

v

v,....,

v, l

k, dove

qualche

ricorsiva

Soluzione

I

A,A,ia, A,A

A,

ottima

parsing

0

Vg

necessariamente

sottopoligoni

matriciale In generale,

l

un

P

convesso

poligono

per

b

Alberi

sovrapposra

hi ,v,y,

di hv

pesi

essere

T deve

due

a Figura

dei

somma

proprietà.

questa

ottima

di un

ottima

vale

cui

per

triangolazione

una

il triangolo

sottopoligoni da

A

seguito.

Sottostruttura

dalla AI

le ragioni

descriviamo

Il

pfOICll lr

tl

pc .s i

che

sostiene

Guinevere

un

il iiritin i

vcloc

piii

vr

riwilvcrc

ii

Ii

n isura

dcll uiva

di

tnt

tri w

il .

L upinioni.

c cl

prolcci lv.

i

correll l .

iI

30á

CapitoIo

16 4-3

Si supporiga che

dai

dato

che

dalla

della

Iá.4-4

Si determini

una Si

delle

pesi

con

con

triangoli

w Ev,v,vq

la seguente v,v,

dove

v v

è la distanza

e tutti

gli

angoli

vpVI eucl

interni

corde

corde

della

corde

pesate

triangolazione

a questa

è un

Si

caso

invece

funzione

triangolazione.

ottimadi

un ottagono

funzione

peso

t

w è

peso

dimostri del

particolare

che

il

problema

regolare

con

lati

di lunghezza

tra

è detto

poligono

regolare

se tutti

bitonico

uguali.

lo

per

Si vuole

chiuso

del

che

tempo.

connette

L.

Bentley

16.6 b

ritiene

assuma

che

che

scansione

e vanno

il più

un non da

n punti

del

Yella

piano.

si ritiene

che

e euclideo

su una

di determinare

non

il più

sua

breve

cammino

formulazione

esistano

problema

breve

esistano

sinistra

I cammini

sinistr

verso

di partenza

un che punti

verso

piano

destra

un

insieme

ascissa.

le

possibilità

se

che

raggiunto verso

risulta

bitonico

la stessa

mantenendo

viene

di 7 punti.

che

cammino

con

non

cammini

quei

Nel

caso

più

La

figur

dei

in

tempo

ottime

per

le

nel

Si una del

parti

Si

stampa

consideri

ingresso

è una

della

sequenza

stampa

di n parole

li un

precisa di lunghezza

su

paragrafo

t,, l ....

i,

dove

una

stampante.

la lunghezza

Il testo di una

Il criterio

consecutive completarelari

numero adottato

siano

in citi

momento

Per

può

stringa

risultato tinta

seguente

due sono accadere

supponiamo altrove .

esempio,

di

di linee. per

dire

separate aèdatoda,15

con che

il vincolo una

.he

stampa

e. ,vttamente j

è

da p

i

ogni precisa

imo g

ines

spazio

può

i on tenere

è il seguente.

allora

al massimo A.,sumi,mo

il numero

, equestonunseronondeveesserette

di spazi

ua

necess ri

che

i vincoli

un

del un

di n righe

paragrafo

dell algoritmo

di spazio

generico oppure

nella

copiati

copiare

a

copiare

l

copiato

un

Un

trasformare

volere

di

modo

intero

per

effettuare

sorgente

sorgente avere

Dopo suffisso la

della

Stringa

risultato

algoritmo è detmito

sorgente t sto

gnritnso

g con or con

scansbiare

certa

per etisia.

alt

t m

Qltl O

inserire

i

1131OY

infierire

e

altrove

cancellare

itmo

Ql llOVC

numero

sorgente.

stringa

Ignri

paro

possono scambiati

un certo

eseguito

essere

cancellato.

essere

trasformazione

Strin ga

può

caratteri

altri possono

sorgente

stringa

questa

essere

può

risultato

stringa stringa

risultato.

stringa

di cancellare

y1 stringa

nella della

adiacenti

caratteri

modifica

.. n J. Questa

esistente

una

sostituisce

testo,

di

in

At caratteri. che

preciso

operazioni.

1011C

sostituire in un certo

corto

cannnino

determini

Si

riga.

ogni

in modo

linea

una

della

carattere

precisa

il problema

completare

risultato

stringa

una

carattere,

altro oppure

inseriti,

OpCl ll La

un

di operazioni.

O n- .

due

da

Un

moditica

con

.. m

diversi.

modi

sostituito

-intelligente xl

sorgente in

essére

tempo.

si effettui

Suggerimento

a

cammini

nel

/I piir

dell ultima.

l eccezione

con

le righe

per

di esecuzione

il tempo

a corro

piis

è 25.58....

a tutte

stampi

che

Il

b

editing

terminale

un

stringa fatta

il punto

polinomiale ottimo

si

cammino.

l á-2

di

Distanza

16-3

partono

sinistra.

necessari

bitonico.

è

il nel

polinomiali

semplificato

da destra

punti

su un

sono

finché

di risoluzione

determina del

destra

bitonico

algoritmo

notevolmente

bi tonici

collegando

cammino

defimre algoritmo

bitonici. da

essere

possa

sia

n

lunghe

sua

noir

umraria.

dintensione

di

quadrari

proposto.

generale

soluzioni

carnnrino

dinamica

Si analizzino

stampante.

cvn

relativamente

di programmazione

Quando

il

al punto

è possibile progetti

di

i camvrini

tornano

descrive

bitonici Si

insieme

richiede

griglia Qgiesto La

punti.

ausiliari

spazi

36.

a sinistra

più

e poi

bito iico

euclideo

e pertanto

solamente

punto

destn.

viaggiatore

viaggiatore

un

Capitolo

Cfr.

considerano dal

commesso

è NP-completo.

problema

J.

del

commesso

di

la somma, di

numero

algoritmo Il problema

24.88....

insieme

stesso

fama

su

piano

lunghe-a

minimizzare de

cubo

Il problema

del

punti di

chiuso

camniirro

i lati

Sette

16.6

Figura

v e v,. Un

Problemi

16-1

b

a

VAV f,

idea

sono

di una

rispetto

pesati.

triangolazione

utilizzi

dalle

triangolazione

triangolazione

triangolazione

unitaria.

della

dei

dipenda

peso

Il peso

somma

problema della

la funzione

triangoIi.

307

dinamica

Programma ione

16

OI1iI110

itmo 13 I110

131110

nella dalla

ione

Programma

Le

ci sono

operazioni

hanno

un

Nel

caso

una

certa

costo.

della

somma

costi

delle

l operazione

sequenza

di

nella

di

Nel altrove

modifica

nostro

che

cancellano

non

dovrebbe

è dato

dalla

esempio,

ed essere

il costo

della

Il costo

utilizzata. del

costo

delle

trasformazione

di

singole

della

parola

costo sostituire

origine

è il vertice

casuale

del arco

distan -a che

due

costo scambiare

di editing

trasforma

sequenze

trar in

x

e

trasformazioni.

è definita

di

e y1

2 costo inserire

tra

sia

..

un

xl

..

il tempo

ed

n

il costo

definire

editing

Si analizzino

inj

come

vuole

Si

y.

la distanza

determina

.

x1

delIa

un

sequenza

algoritmo

di

e y1

m

insieme

..

di operazioni

economica

più

la

i vincoli

che

la

Il presidente

dell azienda

consulenza

una

L azienda

una

un

struttura

albero con

quantificato

cui

un

ha

il

problema

della

gerarchica

più

radice

numero

tutti

per

che

impiegato

chiesto

ottima

di spazio

dell

McKenzie di

la relazione

precisamente,

dell azienda. di

L

ogni

delle

Note

algoritmo

immediato

festa

aziendale.

supervisore del

ufficio

non

In

Si definisca

un algoritmo

l a somma b.

Come

della

per

Affinché desidera

alla

festa

il professore

può

degli esser

ospiti.

certo

invitati.

degli

Si analizzi

che

L obiettivo

il tempo

di

il presidente

sia

invitato

alla

Le

L algoritmo tecniche

algoritmi arco

u.

Questi

della

proposto.

c

vertice

etichettati

dalla

Dato

sia

un

ve

la cui

fare

non

suono

etichetta esista,

delle

sia

a u,

un

possibile

etichettato

riferimento

un

semplice. a una

concatenazione

grafo

cammino

utile

con

formale

camnsino

nel

etichette

degli

vertice

l

sequenzu.c,

intrndotli

cammino

Capite lo

il

da

paiate

s

esiste. messaggio

23.

a,.

a,

Nel

in

un

caso Nr u

a

determinato orientato

di elementi

invi .ce C iiwi .

O nm

es ere un

al cammino. ...,

che,

in tempo

esrere

in maui il Si

l

un

una

volta

nella

risolto estesi

sequenza in tempo al problema

con

a Bellman

la definizione

già

sono

basati

presenti

in

della

teoria

parola tabelle.

su

di

tecniche matematica

di un

ottima

la

dimostrato

ed

poligono

di una

prodotto

hanno

Inoltre,

Ign .

O i

de

il problenu

risolve

che

del

il problema

in O n della

curo

1g

distanza

e Paterson

r

in cui

m . di editin

l84j La

ha

nsaggior Problema

Knuth

elemento

nessun dimostratn parte

he

di questi

16-3 .

un

definito

hanno

liinitata.

43

risposta

Una

LCS.

che

143

di ditnensione

particolare

Szymansk

ingresso. n

quadratica Ivlasel

sottocequenza

lunga

della

l problema

da un insieme

tratte Nel

n.

da

data

sono ii

non

soluzione

più

in particolare.

a nessuno

attribuibile

essere

della

il problema

risolva

che

è stata

se le sequenze /1 ,

fossero

la

lineare.

risoluzione

dinamica

di R.

i iavori

con

1955

programmazione di

triangolazione

non

setnbra

domanda

nel

matrici.

algoritmo

se esistesse

algoritmo

una

Ogni

di suoni.

parlato

di un cammino app rtengono

sequenza

stampare

nel

che

del

ùi

caso

V. E .

twsitnZ

insieme

che

gr to

nel G

l analisi

L etichetta

archi

i , e una

se tale invrà

a un per

utilizzate orientati

grafi

appartenente

di suoni.

un

u concetti

v

mndello

Ogn

u che

su particolari

sequenza

G,

l algoritmo

essere

possono basati

parlato,

definiscono

particolnrmente i, corrisponde

è definita a.

del

E è etichettato

graf

linguaggio

dinamica

programmazione

di

O mn

a questa

i metodi

esecuzinne

di

della

il problema

di

che

un algoritmo

tempo

un

sequenza

si è domandato

aziendale

festa

Vilerbi

il riconoscimet to

per i

di

ed abbia

da v,

1.

presentato

con

in tempo

caso

si deve

dinamica

tra

definizione

La comune

positiva 16-5

l algoritmo

se

parte proposto.

è iniziato

della

nel

programmazione

hanno

matrici

di una

fatto

al

in precedenza.

f 106

corrispondenza

è di massimizzare

di esecuzione

di

programmazione

sequenza

fesu

e anche

riferisce

si

note

e Shing

Hu

la

che

della

ha

supervisore.

e la lista

prepara

convivialità

che

dell algoritmo

dinamica

programmazione

contesto,

questo

ottimizzazione di

personale

della

sistematico

studio

prodotto a.

che.

tale

modo

probabile

al capitolo

programmazione elementi Sebbene

di effettuare

una essere

impiegato.

il presidente

i partecipanti,

il suo

al professor

pianificazione

è il presiòente convivialità la

reale

piacevole

sia

partecipino

la un

risulti

aziendale

Corporation

risolvere

per

ha

definisce

A.-B.

vertice

dal

che

dinamica sequenza

aziendale

festa

ro più

di esecuzione

il tempo

in

a

parte

il cann ri

sia

questo

Si analizzi

etichetta.

s come

Bellnian. di ana

pia rifica ioire

di

la scelta

escono

che

di operazioni

programmazione

e stampa

nj

di esecuzione

di costi

allora

un cammino,

della

risoluzione

di

l algorittno

modifichi

Si

b.

costo suffisso .

Lo La

archi

degli

la cui

attraversamento

un

Chiaramente

cammino.

quel

all e prnbabilità

proposto.

16-4

che

in esame.

restituisce Si considerino

v, seguirh

delle

di un cammino.

La probabilità la probabilità

1

un

da

escono

il prodotto

come

v

p u, il suono

che

archi

degli è definita

cammino

come

interpretata

in accordo

va fatta

percorrere

partendo

valore

i

emenendo

u ed

da

probabilità

v

p u,

probabilità

al camminn.

vertice

dal

v

u,

di un

probabilità

essere

v,, può a partire

grafo

E una

e

delle

somma

appartengono

che

archi

ità degli

quale

è 1. La

vertice

v

u, l arco

la

Naturalmente

determinato probabi

arco

attraversare

di

probabilità

comspondente.

un carattere.

inseriscono

somma

suffisso

un carattere

sostituisce

la

indica

un

risulta

parola

2 costo copiare

che

operazioni

effetto.

e cancellare

scambiare

dell operazione

di sostituzione

operazioni

sequenza.

nella

il costo

che

lo stesso

producono

inserire,

copiare,

si aspetta

dei

che

di operazioni

sostituire,

Ci

contrario.

operazioni algoritmo

sequenze

cancellare.

certo

minore

sia

altre

a ogni

di assegnare

Supponiamo Chiaramente,

309

dinamica

viene

eseguito

campaia il problema risultati

più

di

puo possono

Algoritmi

greedy

Generalmente

algoritmi

gli

Per

alternative. dinamica

alcuni

per essere

adottano

la strategia

In altri senza

preoccuparsi

risolti

essere

tnmite

di alcune

soluzioni

Questo

può invece,

17.3

paragrafo

una

presenta

teoria

della

strutture

queste

gli

il paragrafo

17.5

detmizione

della

tecnica

visti

tuie

N.d.l.

poi. ono

di

caratteristiche

Nel

di Huffn an .

endici

dei

applicazione

dette

una

a ottenere

empre

riescono

174

paragrafo

alla

matroidi

il pro etto

esaminercmo matroidi per

soluzione

Interne.

ottima.

del

risoluzione

della

problema

con

unitari

di durata

di progr nsmi

scheduling

Il

greedi.

greedy

combinatorie

strutture

di quelle

cl

greedi.

metodo

tecniche

it, .

di atti

selezione

del

base

delle

importante

un problem

algoritmo

un

le

ottenere

per

in esame della

con

di un

ottima

la soluzione

prenderemo

efficiente

molto

di esecuzione

in ieh e

logiche contentpor use

L.i

traùuzionc

e si adatta

di

esempi

l esempio

dipendenze capitoli

base

successivi

capitoli

coine

di un

copertura è

dati

i potente

greedy Nei

problemi. essere

dei alla

una

sequenzn

che

utilizzati

essere

il problema

semplice

le

greedy

presenta

nella. uv

problema

e penalitè.

scadenze La

sta

che

ottima.

è la decisione del

determina

17.1

modo

in

applicazione

algoritmi

greeA la migliore.

come

di ottimizzazione

possono

paragrafo

piuttosto

presenteremo una

che

greedy

Yel

risolto

la compressione

pèr

parte

tempo essere

17.2.

algoritmi

g1i

stesso

problema

paragrafo

di codici

allo

ma

banale

greedy

un algoritmo

di problemi.

classi

problemi

risultato

greedy.

esiste

tuttavia

problema,

qualsiasi

non

sempre

non

In generale,

quei

discussi

appare

ottima

soluzione

stesso

algoritmi

Gli

locahnente,

che.

a una

da scelte

di

programmazioiie lo

efficienti.

al momento.

che,

di

oneroso

e più

decisione

porterà

verranno

algoritmi

gli

più

decisione

capitolo

tn questo

tecniche

semplici

quella

presa

tale

se

di

l uso inutilmente

risulta

decisione

quella

sempre

un

costituiti

sono numero

certo

si presentano

ottimizzazione,

algoritmi

con

passo.

migliore

scelta

di prendere

viene

termini,

globalità.

la

ottenuto

potrebbe

di

problemi

decidere

a ogni

in cui,

di ottimizzazione

di problemi

la risoluzione

per

elementari

di passi

sequenze

presenteremo

tra

metodo

di

37 .

L algoritm i

per del

applic izionc

trovare

nietodn 24,

del

icrrniiv.

in

tic

eiviily

i

in oi lo

ricordiamo

n

albero

e acre

eiilneii .

piiiii no gli

di coperlur non

utile

ùi

la,,,

questi

Sebbene

greedy. potrebhe

umpia che

il mininso

imenee.

letterale

un algoritmi

Tra

greedy.

c J il Capitoli

czpitulO

questo

di

numero

certo

del

applicazione

Capitoln

clas icn

un

a risnlvere

be e

p,rti,.nlor,nente

le z er

ii

si in i ilio

i

Algoritnu

312

Capitolo

17.1

Selezione

i

Il nostro

primo numero

certo

insieme

esempio

che

consiste

di attività

contiene

essere

può

Sia

il massimo

ottenuta

con

un

1, 2, ...,

n

un insieme

per

esempio

una

sala

di lettura,

più

attività.

Una

tempo

nell intervallo se gli s,

di tempo

oppure

f

insieme

s

che

Un

seguente.

procedura rispetto

al loro

fi f

... f.

della

n

2

A e-

3

jml

s,

f,.

Due

selezionare

di attività

le attività

da due

2

3

5

3

0

6

4

5

7

5

3

8

6

5

9

7

6

10

3

o

s, e da

4

i è completata

i e j vengono i e j sono consiste

dette

coi rpatibi/i

compatibili

se vale

che

nell individuazione

di un

compatibili.

selezione

in ingresso

risorsa.

attivazione

l attività

mutuamente

della

un

compa-

determinata

di inizio

attività

di attività

una

selezionata,

ovvero,

4

da di

contemporaneamente

tempo

volta

Una

il problema

che

un

I

greedy.

utilizzare

utilizzata da

s,. f .

numero

risolve

di

siano

attività

è descritto

ordinate

in modo

dalla

6

crescente

di fine

unalimitazione,datochepossiamo On

1gn .

La

assume

procedura

GREEDY-ACTIVITY-SELECTOR $.

4

f,.

l

17.1

in tempo

1

essere

può

condivisa

Ia selezione

e mutuamente

algoritmo

intendono

risorsa

che

in competizione

efficiente che

di una

Dimostreremo

attività

si sovrappongono

Si assume

Chiaramente.questanonè modo

non

che

tempo

non

dove

il massimo

greedy

ed

a destra

aperto

contiene

algoritmo

elegante

assegnamento loro.

i è caratterizzata

. Il problema

f

di

f,

e s., f

s,. f

tra

numero

che

conclusione

intervalli

dell

problema

di n attività

attività

generica

di fine

nel

in competizione

S

un

s

di attività

un

tibili

greedy

J7

sempre che

i parametri

ordinare

.s e f siano

le attività vettori

dei

4

inquesto 8

array .

8

11

4

f

g

8

12

10

2

13

9

length s I 10 4

fori

m2ton doif

s

f

I l

12

14 8

6

then

A

7

A u 1

J

8

return

Le

operazioni

i

Il

A

tempo

contiene Dato

che

abbiamo

eseguite

le attività

selezionate.

le attivjtè

sono

che

max e

linee

una

sufficiente,

j indica

nellu

l ultima

0

figura

attiviù

17.1.

inserita

L iniieme

in ordine

sempre

il

non

decrescente.

massimo

rispetto

tempo

di

tine

al l ro di

tutte

tempo le

certa

8

7

6

5

9

10

-

acro

13

l2

1l

14

er

c

-

.

e

sr

di

Cr ll

invienle

nn

Hlldici

di f ic.

attivitò

cl1e ,

ri

an

care

s

.-

nlcrlndalot

e i

ictticri.

rctla rgrifr

e

17

il

compito

mo

attrvitè per

4

3

2

A

nell insiemeA.

precisamente,

qliest i

cnnsider

l

e e

considerate

Più

hanno

solaltlente 4-7

visualizzate

k e A

f .. -3

linee

colltiene

se

AA.

snno variabile

La

rappresenta

f

appartengono fj

dall algotitmo

uno

i

l eqct izione

è

di attività

dopn1

compatibile 17.2 .

selezinnare e, altra

l attivitè all 1

pert lllti . tutte

le

con

tutte

controll re

at ti

numero V friabile itil

I viellc.

j

inizialmente loie

r .ics ftreo i,si

l insieme.4 il

il ltn

s 1lore

t.

i.

lirelt r ire,r

ill

ail r, e,

a j i rttti .il,

,s d .st

Le .

LtI11LVI1CI

ICJ.lÈllYll

t / VIClld

llliCI

II I 11

t i

i

i.

, le lince

attivitè 5

selezionate che

i rnelilan ll i sierheA.

e1

tele.-icnritla ..-

sr

il

tcinp

tino ali

inizio

i

c uel Ioli

punto ittiviti .i

i

ut

t 1n

ns

ns-

i i in i

i

è ril

.

ricvnten cl lc

iii

..

in 1.

i chi

Si

tiillc

l allivititi

le

allivitè

314

Capitolo

17

siano

Algoritmi

ordinate

in grado

in modo

crescente

di selezionare

un

La

procedura

tempo

di fine

scelta

dell attività

è una

numero

possibile

maggior nismo

al loro

S con

i tempi

di quelle

greedy,

tempo

n attività

di fine.

in tempo

seleziona

GREEDY-ACTIVITY-SELECTOR

tra

di sceltà

ancora

rispetto

insieme

attività

possono

greedy

nel

senso

di opportunità

per

la selezione

scelta

è quello

quindi,

che

essere che.

che

la procedura

l attività

con

il più

ancora

selezionate.

intuitivamente, delle

massimizza

e

Esercizi

8n.

sempre

che

abbiamo

vengono

attività

la quantità

piccoln

lasciate

rimanenti.

di tempo

la

della

il

deve

essere

della

correttezza

dell algoritmo

Tuttavia.

greedy la

trovano

sempre

la

soluzione

ottima

GREEDY-ACTIVITY-SELECTOR

procedura

istanza

qualsiasi

non

del

della

problema

selezione

La

trova

di

un

sempre

qualsiasi

la

Si

problema.

soluzione

ottima

di

vogliono

sima

nel

trai

selezione

della

problema

a sempre

soluzioni

di cardinalità

mas-

del

grafo

attivith

che

sono

Dato che

che

le attività

1 attività

ottima

con

supponiamo

crescente

rispetto

l insieme

A comincia

differente

cosi

dimostrato

Inoltre.

l attivitè soluzione

numero

esiste

avere

I. Se

A è una

ottima

di attivltb

del

8 che

problema

Si

vunle

essere

ai tempi

mostrare

del

che

selezionate.

di fine.

c che

la prima

esiste

una

ottima

del

una

di A . allora

A siano

in A sia

che

inizia

del

caso

Nel

attività

inserendo

5. 5

I-attivitè

una

i c

A S

l in 8

s

l allo esiste

che

tale

gli

vertici

permette

di ottenereun.i.i lu .ioide

ottil11U.

le

in relazione necessari

da

lettura

di

sale

di

con

colorati

adiacenti

numero

il minimo

seguente

modo

di colori

numero

esistonn

non

a trovare

colorazione

della nel mettono

archi

il mini no

Determinare

8

sovrappone

a troi are

1 .2

Strategia

I f, . Qual

si otterrebbe

Si

mostri

la minore

durata.

tra

il meno

in

precedenzi,

caso

della

concetti

che

strategia le attivith

in

esempio

determina

non

con

possibile

un

le attività

seleziona

la

cui

sono

che

una

che numero

la

qualunque di elementi.

soluzione sempre

cl1e

strategia

compatibili

con

l attivith

le Si

desiderata. che

si

rimanenti.

di base

una Un

A

il

anche

greedy.

compatibili. con

l attivith

consideri

1. Sin

permette

è vero

il maggior

con

l insieme.

di onenere

non

di attività,

selezione

della

inutamente

selezionate

attività

u

è un

lgoritnio

greedy

permette

una

di on nere

soluzione

ottima

i

è la

un, discuteremo

reedy

gli

in esame.

problema

greedy

attività

seleziona

sceltagreedi.

si riduce

allora

di

in modi

I attiguità

con

1, il problema

originale

con

determini

che

di intervalli

mentre

le attività.

corrisponde

soluzione

Se/che

numero

minor

il

efficiente

i

scelta

Si

zbbiami

di attivitè.

ordinate

l attivitèl .

ovvero

greedy.

ottimo

delle

selezione

se t w 1. si dimnstra

scelta

problema

elezione

insieme

attività

dell vttivitè

greedy

della

problema

Altrimenti.

con

1.

di attività.

insieme

di problema

il nome un grafo

creare

in modo

vertice

un

da utilizzare

da

greedy

con

anche

incompatibili.

attività

alle

assegnare

algoritmo

Possiamo

rappresentano

colore,

I.

all

iran assegnamento

di quello

devono

17.E-3

appartengono

inizia

della

che

numero

ottima

greedy.

Ia scelta

soluzione

m,ggiore

scelta

attività

relativamente

attività

soluzione

17.

di esecuzio-

il tempo

con

e le sale.

è conosciuto

ogni

colorare

strategia che

sempre

fatto

di fine. della

di fine

una

ottima

cle

dopo

tempi

con

soluzione

una

delle crescente

ordine

greedy

le attivit

ai loro

l insieme

tempo

piccolo

che

n per

la scelta

A r- S sia

che

....

o diinte

il più

inizia

Supponiamo Inoltre.

I, 2,

sono

1 ha

che

S

dell equazioi e

condivise tale

modo

in

un

definisca

Si

di attività. il medesimo

Sia

caso

proposta

siano

di sale

attività

le

di isttervalli.

grafo

i vertici

per Dimostraziosre.

per

attivitè

n. Si supponga

l, 2.....

i

i. nel

di

v-SecErroR.

numero

certo

le attività

tra problema

di un

GREEov-AcvtX ITY-SEI.ECfOR

sale.

di

assegnamenti

di attività.

un

selezionare

possibile

17.1

procedurQ

soluzione

della

GREzov-Acrtvn

che

Supponiamo

Questo Teorema

come

il

calcolare

numero

il maggior

l. 2...,

ordinate

siano

di esecuzione

procedura

contiene

il problema nel

consiste

goritmo

greeds 17.1-2

algoritmi

della

che

1e attivith

tra

in ingresso

il tempo

confronti

dell a

dell insieme

compatibili

attività

le

che

di base

risolva

che

dinamica

programmazione L idea

attività.

elementi

di

mutuamente

ne

Gli

m

di

algoritmo delle

selezione

numero

Il mecca-

che

un

definisca

Si

17.1-1

Pertanto.

assegnata.

Dimostrazione

315

greedy

alcune

delle

proprietà

peculiari

R della

scelta

rccdy

e la iottostrutlur

oitim .

dei

rrretodi

greedy.

di un

problema

mediante

unu

Algoritmi

316

Capitolo

Proprietà

della

scelta

prima

a e pren

o doVe

li al

nc

chiave

proprietà

en

oritmi

e ne

è la proprietà o delle

reedy

si

decisioni

e

aalgoritmogreedysiprendesem e

in seguito

greedy

d

I o

il sotto

e esce 111.

una

Cl opo

prese

dei

m ica,

che

con

un

fino

prese .... soluzioni

risolve

adotta

generalmente

altra

decisioni o dalle

sottoproblemi.

a quel

modalità

meccanismo

di

con

scelta

B

d

Nel

b

si deve

o

ima

Generalmente

g o

accade a

è i caso mo

dimostrare aie,

e cche e I

e

eorema

. imi

e a

ema

pro

induttivo

ma

con

imostrazione

in

ma

con

dimensioni

uo puo

a applicare licar

dimensioni

che

che

e

una

la soluzione

di

ottima

Infine.

un

ridurre una

presenta

lica

u

a

pob

la dimostrazione

di

al

o paz pas.o.

roble

conene

ll-

ottima.

il più

ottiene

Sottostruttura

pesa

al massimo

0

mo

fOndamentate

..

e u

una

importanzu

ai sica ime amen

c

e

eg

e u

-

un a sottostrrsttura .

per

i al

soluzione

ottima

accertarc

oritmi

o11ima

reedy.

e o,n,

dei

l a

licabilitè

Cnme

esenl

imnstrazioneclelTeorcma .

o,,uz.o

.se

.o

una

. o uzione soluzione o

sottoproblemi.

idem,

l po

ro

Questa

il ladro

greedy,

D

rieth

grande

valore

il ladro

è ancora

io

di

.sottostruttura

ottima

si

consideri

teoreinasi

mnit

ordinando

d

zione

e

eattivitèperS

S

ic

soluzione

del

ottima

della

problema

A

Analisi

com

Oatuche1 i

arata

proprietà

de,li c,

a ,

,reedy

oritmi

i

lil

poltvL hc

dinamica inan,ica

ic

C

1C

ò

17.

primo

articolo

peso

chilo

CS

0-

dello ai o

t,cura

un

1llllC l, pOlfC

ppu i.

.. zione

.

.

.

.,

, c i pro ratntli 17ii lli.

programnsazione

greedv

di rvmn i

ha un

peso

di

ed

un

conio

è lasc iata

esercizio

Esercizio

mostrare

che

L,,trategia

greedy

il c ivo

di

e lo zaini

articoli 10 chilo

I 20

un doli

r unrni coito ri.

pui cù

ali

100

Quintali.

17. non

un

sopport.tre

reedy z tino

dello

peon

doll tri. il v flore

per

unith

viene

soddisfa

la

caso

del

l. nel

funziona problema di 50

di pi.io

i11

descritto

Il

chiln rammi.

Il.iecundo di 60 dollari. trticulo ha u i li teri

un co to

di pe o. Pettmto.

cose.

l ulgoritmn

di questo

p uticolare

quantità

unità

per altre

il problema

che

dimostr azione

valore

il più

quando

la maggiore

prende

di pe o.

unith

per

con

si esaurisce

di trasportare

in grado

è più

strategia

una

dell articolo

grande

cnme

ed

chilogram 1ii

20

La

il ladro il più

del prima

generico.

Seguendo

/w..

essere

può soluzione

la

zaino

dello

dell articolo

allora avere

valore

al loro

1. Consideriamo tre

abbi..imo

a

che

l articoli

s

generico

possibile

quantità

case,

non

il ladro

1gl .

vo...linmo

punto

questo

prnblema

,

e della

dellasottui rutturlOltil11 .

U

CClllC..ll Genie

I

scelta

della

proprietà

f, .

parte

trasportato

trova

non

problema

la dotazione

risalta

punto,

quando

O ii

tempo

un

eo6

eseguito una

era

j.

w di una

valore

zaino

dello

articolo ,

di ogni

che

altre

relativ assente

articoli

gli

mettere

dell articolo

a disposizione

greedy

del

soluzione

accade

Se

questo

termina

operazione

Questa

del

si

carico può

il peso

grande

avendo

massimo

il ladro

che

ottimo

il più

la maggiore

prende

di trasportare

che, a

dell articolo

possibile

cosa

in grado

zaino

questo

l esclusione

con

strategia

una

uni t - di peso

per

di peso.

unith

per

j da

n,

carico

dal

il problema

simili.

una

onenere

1. Per

prima

per

dello

j di valore

l articolo 1V

assieme

mettere

mentre

il valore

calcolare

zaino

sottostruttura

della

la proprietà

originali

quelli

e si toglie

alquanto

greedy.

0-

zaino

dello si deve

s-

.1. N 17.1. Nelladimostrazione ll

A e

Q ù

ootti

strategia

problema

o

dello

j.

siano

problemi

una

con

problema

. ppresenta

problema

i due

nel

l elemento

è necessariamente può

dell articolo

io chilogrammi

problema

al massimo

pesa

genericn.

il ladro

v che

1V

che

rimanente

nel

se si rimuove

l articoli,

zaino

il valore prendere

tipo

del

scelta

articolo

un

vuole

il ladro

a una

1, si consideri

0-

zaino

n

il carico

e lo stesso

massimizzare

articolo

soddistano

zaino

delln

Chiaramente.

dello

deve

articolo

un

d oro.

polvere

trasportato

Un

mentre

d oro,

dello

valore

j, allora

Sebbene

ottima

problema

a disposizione

probiema

articolo

di tutto Un

del

caso

dell

risolto

della

del

problema

grande

avendo

assieme

e ic.

come

W chilogrammi.

al più

pesi

Nel a o ni ni

simile

problema

.

ereed

u

reedy

scelta

sottostruttura

scelta

p

si a di

ottenere

oca

n

che

del

caso

Nel

ottima.

generica ere può òesessere

da una

modo.io i

strategia

elobale

la soluzione

che

sia determinato

uesto ridotte.

si nif

ottima

visto

essere

le formulazioni

Entrambe

peso rubare

articolo,

generico , da

modo

di fronte

di articoli.

parti

lingotto

zaino

in

trasportare si trova

non

di prendere un

di un

parte

dello

problema

da

il ladro

come

visto

può

articoli

scegliere

puo

essere

generico

in e n

soluzione

. dimostra. si

una

y permette

ridotte,

ed

ma

1 può

zaino

di

caso

una

prendere

puo

o

deElo

insieme

un

in questo

ma

non

più 0 - 1 perché

zaino

di

un da

volte .

più

preso

continuo

scegliere

lasciare ,

reedypermettediottenereuna

abilità

as so di risoluzione

cche e si r

originale

consideri

dimostrare

originale

dimostrare . rare

di scelta una

17.1. . . Success v ssivamente

anche

per

strategia

richiedere

può

rimo

si deve

una

d imostrazione .

i icatainmodotalecheil iaramente

che

e questo

può

trasportato.

v

essere

problema

sempre

P

0Naturalmente.

non

il ladro

stare

o lasciato

preso

articolo

convenienti

articoli

gli

dello

di problema

il nome

con

Il ladro

interi.

al massimo

sopportare

ha

i-esimo

numeri

ir sono

v che

può

sono

$V. Quali

intero

qualche

è noto

zaino

il suo

ma

sia

dove

v chilogrammi,

di

costosi.

più

un

per

problema

essere

1 d

e on

prendere

Questo

articoli

gIi

W chilogrammi.

un

d ff

modal t

una d

greed

in

modalità i à di i scelta sce ta- di i un

Pert,

-d,

to

la

la mi lior ior

come

punto

i sottoproblemi

una

La

ma

Invece,

appare

sottoproblemi.

dei

decisioni,

delle

vuole

negozio

seguente.

modo

l articolo

a n articoli

di fronte

si trova

nel

1 è definito

Q-

zaino

de11o

o problema

in un

ed un peso

di v dollari

un costo

--aino

rapina

una

durante

ladro

Un

u

esaminiamo

paragrafo

di ottimizzazione.

problema

dello

discreto

Il problema

soluzione

rammazio edimmic

ecisione che al momento . .. originato da quella scelta.

dalle

1te future f 0

o

mm reedy

p

soluzione

una

.

oreed

ve vengono

p asso

dalla

p rooblema

dipendere

può

qu

M

locali

ottimi

ottenere

p re q uellade

si risolve

algoritmo

si può

i alpwitmidipro

a orni

dipendere

può

reed

sono da

dinamica

ternative

scelta

che

differenziano

a programmazione

tra

della

classico

di un

varianti

in questo

tecniche,

le due

tra

differenze

le sottili

in evidenza

mettere

greedy

due La

317

greedy

17

lt,i

articoln peio

di

ilell articolo

,,

clin ltllic

unchcC

eni v

irr t1c in ciitc ispenia ile

i

u. Cfll,llluO

I ima

d

i

.LlfllClClllL

soluti nsc

Lttl

L tCC6l. CC

llQOlllI110

cr

.. di

prt r immazionc

V

i

din unic .

1 ir

vcclcrc

d., ll analiii

elci

caii

dc.,crill,

nill,

li,,ur..i

17.

I .

la iollilionc

tribuna

iclezion.,i, li

30 l è

Algoritmi

318

Capitolo

ar

ar

ico

o

ico

o

30

3

30

$120

50

2

30 20

anico

o

580

Roma

da

porta

20

$100

20

con

di servizio

dislocate

20

10

10

$60

$100

$120

aino

10

$60

$160

a

Figura

$60

$220

10

$180

$240

b

17.2

La

strategia

g ree

non

di

permette

strategia

$60

ottenere

la

ione

sotu

del

-airi

dello

problema

Si

17.2-6

Si supponga

On. ll problema

c

peso. articoli

rispetto

de1lo al

loro

aino

costa

hn

generico u dirà

per

di

ut a

sola -ione

orri,na

con

la

strategio

che

sele iona

2

e

3,

de11 articolo

1 sono

Tuttavia, ottima

la

17.

La

e lo

che

spazio

che

che

due

nella

non

tutto

sua

formulazione

prima

di tutto

è in grado

fa

di

prima

seleziona

vuoto

soluzioni

possibili

che

tengono

l articolo più

nello

del

zaino,

si

la

caratteristica

lu

soluzione

del

dd

distintiva

con

1, prima

comparare

formulazione

Questa

risolto

deve con

quell articolo,

0-

problema

problema

della

tecniche

1 non

lo zaino

il valore

di prendere

effettivo

la decisione

soluzione

del

come

codici

mostratn

la soluzione

trova

al massimo uniù

per

db

ori

cui

in ine

a

inserire

dinamica.

in

di

cui

lo

della

su

peso

del

proposto

carattere

come

17.2-2

Si descriva

dimostri

0-

1 tale

che

un da

il problema

l SAluzione

essere

è la capacitò

di carico

delln

zaino

soddisfa

di programmazione

eseguita dello

una

tato

in tenip

dina nica

O n7V .

zaino

del

la proprieù

dove

della

del

scelta

problenu

n è in numero

degli

da

zaino.

che

Sl

ùiscuta

la

equcnz

la

cori cltcz . i

dc.

li

clelia

distinti

che

soluzione

zaino

generico

unitaria proposta.

in tempo

10-2.

soluzione

nel

delln

problema

pro

iodata.

zainoO-l.

la

va

al 90 7 .

di

rappresentazione

che

un

di dati

contenente

rappresentare

bit

per

sei

caratteri

tutto

codificare

il tulle.

file

z tino

articoli

quattro

orctin

i

codice

un codice

a lunghe -a

i

Coùicc

ogni enze

000.

Possiamo

b

i

001..... fare

di

di

quantith

informaziot e

delle

Questo

progettazione carattere

ogni

fissa, 101.

l 100

bit

r ppresci ta

il carattere

in

migli ia f ILSù

Illll,,lit..ll,I

w lun

he/z

variahilc

f.

abhiaimo metodo

ine liu

Quesito

codice

b

c

45

13

I

16

0 0

AI

O l

O I I

lt

I I I

10 I

richiede

S lO l i O l

che

appaiono

volte.

45000

in cui

nnti

Si

17.3.

il problema

semplicemente

Con a

tale

una in esame

prenderemo più

appare

a

caratrere

rappresentare

e 11

il

di occon

La frequenza

caratteri.

100000 t gura

della

è descrittu

greeds .

dillo

questi

L algoritmo

delle

la frequenza

contiene

u bella

compresso.

essere 20 7r

dal

ottima

strategia

di una

tulle

di

binaria.

stringa

laùro.

irticoli,

che

di spazio

di dati.

la compressione

per

deve

che

file

del

quantità

e che

paragrafo i caratteri

per

unii

un

nel

permettona

In qiiesto

per

COLllCi,,l

Suppnniamo

della

Problema

del

ed efficiente

diffusa

det nire

per fa uso

comprimere caratteri

caratteri

sei

binario

codice

17.2-2.

binaria,

dei

numerose.

essere

Huftman

di voler

itrateeie

Le

comuni

da stringa

occorrenza

Frcqllir z.

17.2 3

dello

sulla

r,......s

.r,

di lunghezza

carattere.

solamente

contiene

è selezinnato.

una

di risparmiare

permettono

greedy.

dell

Esercizi

Si

chiusi

la soluzione

caratteristiche

delle

a seconda

di ciascun

articolo

0 - I può

il problema

Esercizio

un

zaino

non

sòttoproblemi

Infatti.

Cfr.

o nseno

quell atticolo

numerosi

dinamica.

programmazione

di

sottoproblema

sottoproblema

di programmazione

E 7.2-1

di punti

di intervalli

il problema

tecnica

una

costituiscono

di Huftmsn

Supponiamo caso

un insieme

di Huffman

Codici

Generalmn te.

la soluzione

generale,

l articolo

di riempire

diminuire

1 trova

CQT1CO. Nel

la

ottima.

conto I codici

seleziona

il ladro

lasciato

Le

ottime.

visto

problema strategia

0 - 1 dato

problema

capacità,

stesso c.

1.

quasi-

gteedy

risolvere considerare

di

che

si dimostri

peso.

l articolo

entrambe

strategia

di questo

in hgura del

tralasciando

possibile di poter

sua

la

è in grado

Mida

fermare

la correttezza

Si discuta

Il professore benzina

gli

17.3 articoli

sia

come

mostri

preso

I

le stazioni

tra

di

il professor

n

percorrere

percorrendo. rifornire

per

soluzione

insieme

piccolo

in esame.

i punti

sta

che

che

autostrada di

grado le distanze

si debba una

che,

efficiente il più

in

riporta

al quale

grazie

di ottenere

è

soste

di

di rifornimento

permette

tutti

contenga

che

0 - l .

cartina

algoritmo

un

determini

e la sua

possibile

stazioni

un algoritmo

dei reali,

retta

numero

automobile

della

il tratto

automobile

la sua sua

di autostrada

il trano

lungo

proposta

Si progeni

17.2-5

c

di benzina

pieno

a quali

determinare

$100

Montecarlo.

Si progetti

I

20

a

il minor

fare

macchina.

$1QO

con La

un

chilometri

vorrebbe

$129

sta percorrendo

Mida

Il professor

17.2-4

319

greedy

17

ll

I

1 lO

sono di un

è rappresen-

bisogno richiede

di tre 300000

bit

Algoritmi

320

13

1



3

12

seguita.

questo

Codici

prefissi

In questo del

jrafo

onima

5

4

1000

del

bit

25 .

Infatti,

vedremo

come

I

nel

in esame.

il file

in considerazione di qualche

solamente

altra

del

parola

Si può

dimostrare

ma

per

i caratteri

può

in generalità

perde

224000

approssimativo

per

codice

nowsi

noi

codici

quei

codice. non

essere

dove

lo faremo

sono

che

sempre

se restringiamo

nessuna

codici

Questi

la compressione

ottenuta

la nostra

parola

conosciuti

con

un

b

codice

solamente

attenzione

hanno e

Per

esempio,

codificare

buone

il file utilizzato

binario

con

il codice

contenente

i tre

di

si concatenano

di lunghezza caratteri

codifica

è

le parole

che

variabile come

abc

di

permettono la

descritto 0

101

semplificare

sempre

100

un

per

17.è.

figura

decodifica

è piuttosto

possiamo

nel

di un

caso

codice

con

che

Dato

prefisso.

ci

inizia

file

il

identificare

Nel

che

viene

Il procedimento tale

modo

che

la

procedimento la stringa

accesso

del I

che

porta

dalla

in modo

furba

è una

a quel

data

da

parola

del

facilmente

essere

possa

di

radice

da

rinsuoverla del

unii

oco

alberi

non

contengono

Il codice

di

binari

ricerca

daln

che

che

Diciamn

alberi puo

binari

essere

in

cui

di un file

che

parola p

le foglie

non

sono

è rappresentato

sempre

da un

albero

inizia zia

con

1....

1 1n

questo.

paragrafo, .,

contesto

ordinate

interni

i nodi

ha

il nome

con

i

con poi.

Nella

pienamente

dove

binario

n

. solamente ei

e aalberieri

c iratteri.

4wmini ic

che

parola

foglia codifica

T.

dell albero

di

Huffman

un

una per

l albero,

costruire

si esegue che

si suppone

seguente,

l

costruisce

una

di

sequenzu

C simun

alfabeto

Tche un

C

conosciuto

ottimo.

prefisso

albero

si considero

Inizialmente

bottom-up.

modalità

codice

un

costruisce

L algoritmo

di Huffman.

di endice

che

a1goritmo

i h. ri prc

ala

prcAiii

coiliiuirehhc

ilio

iwmc

mieliorc.

ma

nelh

letteratura

i

dalla

uliliirali

trequeme

delle

iornma

è un

li fusione

dell operazioni

11 risultato

insieme.

degli

oggetti

sono

che

Hi r v.,w C

c 2

g

3

fori

interni.

ca ternsine

della risulta

file

un

cndificare

il costo

descrive

codice

progettato

procedura

altOl..

-cvùici

il

per

ni

4 Forse

un

di

Huffman

i

come il numero

e, inoltre,

considereremo a è n eto

s

I nodi

c

necessari

della

la profondiù

la lunghezza

anche

rappresenta

cl, c

e con

file.

c nel

C. indichiamo

c nell alfabeto

carattere

ogni

Per

il

calcolare

facile

è abbastanza

prefisso.

foglie

le

interpretato

i. d t

e

codice

il codice

rappresenta

contenente -fusione-. di

insieme

I operazioni e che

di n caratteri.

o

ni carattere

chiavi.

ottimo

0.

17.3

valore

questo

Costruzione

Un

fondere

nessuna

a

ottimo

prefisso

.

,c

in

pretisso.

identificata.

In questo

carattere.

codice

foglie. sono

codice

cEC

come

ottinso

non

f

g

tile

d

che di bit

c. Il numern

caranere

del

assoluta

c. Si noti

con

il carattere

possiansi

rimanènte

parte

è rappresentata

prefisso

binario

Pertanto.

originario,

sulla

rappresentazione

codice

codice

codice

carattere

il

è

foglia

aabe.

una

del

atnbiguitè.

decodifica

001011101 come

iniziale

alcuna nel

di

richieùe

parolai

i cantteri.

senza trastormarla

decodificata

efficiente

rappresentano di

codice,

di decodifica

rappresentazione

cammino

il

esempio,

nostro

1101,

0 0 l01

identificata

del

ripetere

e

codificato.

è

iniziale

la parola

codificato

file

codificato

il file.

codificare

per

la frequenza

etichettata cui

necessari

di bit

f

L albero

h

un

rappresenta

T che

dall albero

A partire

Il simbolo

0101100.

numero semplice

descrii e

Ogni

17.3.

figura

1100.

f

101....

b

l O I.

f

001....,

b

000.

a

a fissa

lunghe..

i caratter

rappresentano

nella

di

la codific

semplice

la concatenazione.

indicare

per

operazione

che

proprietà

Generalmente,

di caratteri

codice

file.

delle

decodifica.

la

codifica

di

schemi

agli

corrispondono

che

alberi

Gli

17.-1

Figura

prefissi

qualunque

Lo

un

4

prefissi.

I codi codici

viene

9

ottimo

prefissi- . con

compressione

del

codice

di codici

Pertanto,

codici

ai

3

un risparmio

un prefisso

ottenibile

prefisso.

16 con

prenderemo

è anche

il nome

con

è un

pia

codice

3

il file,

rappresentare

per

321

greedy

17

Capitolo

C 1

tn

I

i c

do

Ai.u c i.-Noi t-.

s-

le/i -

i

ri ,lu

Ein .ici-X1ii

i

trii .

6

I

Este.. ev-Mi

I

oggetto

nuovo stati

fu i

insieme.

la cui

frequenza

C

4

Algerittni

f t-1 f

7 8

t-i- f Li -

IriseRt Q,

9

return

nostro

Dato

che

esem

l alfabeto

, inoltre

sono

carattere

è definita

cinque

costruito

con

2 assegna

figlio

destro. nodo

coda

un

di

de11e

descritto

la dimensione

fusione

il codice

con

ordine

Questo si ottiene

caratteri,

sei

come

procede

la

degli

archi

della

coda

Q è ir

dalla

portano

nel

descritta

della

di esecuzione

il tempo

Huffman

può On.

Il ciclo

operazione

dello

tempo

ogni

procedura

for

linee

heap

ha

procedura

3-8

viene

di

un

per

O Ipso ,

In conclusione.

lai .

On

sia

eseguito

1gn .

è On

di n caratteri

SU UI1 insieme

Q

Bt n.o-HE r

di esecuzione

tempo

risulta

dell algoritmo HuFFMAN

la

con

eseguita,

la

n caratteri.

di

fase

la coda

che

assume C

insieme

un

essere

di esecuzione

al tempo

ciclo

del

che

e. dato

1 volte

di n

totale

2

linea

Q

Per

7.

Capitolo

in un

7.3,

paragrafo

il contributo

a ogni

associata

parola

che

17.5.

dell albero.

costruzione

La

ottimo.

prefisso

etichette

iniziale

ultimare

per

figura

nella

di

alla

radice

carattere.

quel alla

Huffman

passi

sequenze

a a coda i due nodi x e y con -cheèilrisultatodellafusionedi. ey linea7 .Ilnod c .

ogni

di

rappresenta

dalla

etichettata linea

ri tmo solamente

necessari

cosi

La

l alo

contiene

L albero

foglia

io

coda

della

inizializzazione Perii

binario

heap

un

con

realizzata

dell algoritmo

esecuzione

di

tempo

del

L analisi

coda

nella

codice.

del

dell albero

la radice

ExvRACT-MIN Q

l unico

rimane

che

nodo

9

linea

risulnto

come

restituisce

la procedura

fusione,

323

greedy

L7

Capitolo

322

Q i caratteri

priorità

la frequenza .

bassa,

più

. è arbitrario

codice

ed

ma

con

1

inserisce

tra

l

nella

loro

un

coda

f iglio l

i figli

lo ste

Huffman

di

dell algoritmo

Correttezza

f

o -h a x. come

no

scambiando

differente

Il

in C.

nuovo

e di destra

di sinistra

.j D opo

nodo

n

I operazioni

codice

det

di

costruzione

di

sonostruttura

l algoritmo

che

dimostrare

Per

e y come

sinistro

prefisso

che

la

e della

greedy scelta

della

proprietà

della

il problema

che scelta

della

proprietà

dimostra

segue

che

Il lemma

ottima.

le

soddisfa

ottimo

castriamo

è corretto.

di Huffman

greedy

è

greedy

soddisfatta.

f5

e9

c 12

nb 13

d 16

b

a 45

c 12

14

b 13

aia 45

cL16

17.2

Lemma

l

0

C un

Sia f 5

e9

.v

associate 4 0

S

ncL 16 1

0

na 45

0

1

1

0

a 45

0

35

e9

b 13

c 12

14

b 13

c 12

d 16 1

f5

e9

tale

in modo

atti no, 0

lo stesso

del

che

codice

per

x e y avranno

allora

diverse

e saranno

lunghezza

la stesca

prefisso

codice

prefisso che

a foglie

è possibile

trasformazione

Se questa

bit.

il codice

associati

e y siano

di C

le parole

C dove

l ultimo

per

un diverso

rappresenta

i caratteri.i

albero

massima.

volta

per

rappresenta

T che

l albero a sua

che

albero,

nuovo

nel

e profondità

padre

le parole

altro

in un

e lo trasforma

ottimo

considera

dimostrazione

La

Dimostrazione.

1

solamente

e differiscono

lunghezza

la stessa

e y hanno

ottimo

prefisso

caratteri

e y due

Siano.v

c.

f

un codice

sempre

esiste

frequenza

una

c ha

carattere

Allora

minore.

la frequenza

con

ogni

dove

alfabeto

solo

hanno

significa per

che

l ultimo

bit. b e c due

Siano e

0

ù

5

f

l

0

1

b 13

14

cL l6 1

0

85

e9

c 12

all

ir

.

. I

int

ene

.

Cl

Cl

scr

,

irrl

l IIII

Bit P

lI

Afeli

i

fi

C. ll. ll/ ,I.P

li

et

,

CI

SAVI

t

o

b 13

14

/i

ani

le foglie

f V,l

, La

0

os ic ll

1

sono

f y

30

e.12

in generalith

perdere

I

25

Figurù17

foglie

con

e f Lvl

di

f

niinori.

le frequenze

f bj

cercatu

in questn

ottenendo

b e.r,

nella

è ntostrata

modo

efc

ono

f pv .

i

i

Or

i

.

fi ura un

17.6. nuovo

Per

c

il c str .

l al1

ni

T

i

are-rieri

nn

IA

n

renio i.

cosa

prime

albero

4

4

4

.

i

Per

frequenze

due

d 16

f

.

f cj

h

e di profondità

padre e f fr

Senza

massinsa.

le ipotesi

fatte

arbitrarie

f v

e

e pertanto

f l,, .

trasfornnszione

po.,-izioni

supporre

possiamo

stesso

dello

Triglie

dell albero

55

a 45

T,

poi

si scambiaiso si scan,biano

in T le in T

le

324

Capirolo

17

Algoritmi

di c e y. ottenendo

posizioni differenza

del

BT

costo

di

8T

un

Te

T

nuovo

albero

f c dy c

g ccC f x dei

T.

Grazie

abbiamo

17.3

che

la

x

cui

che

concludere

possiamo

ft

f xJdr

f b dq b

x

f bJdq

f xJdr b

foglie

sono

di C ,

allora

è una

x

codice

dr x

l ipotesi

ottimo

T sia

che

C.

per

8T

f .v

Pertanto,

T

BT.

y

f

figli

come

a T

aggiungiamo

Se

costo

un

C con

per

prefisso

di T .

a un carattere un

otteniamo

con

è in contraddiziane

Questo

ottimo

essere

deve

T

albero

un

esiste

è assimilato che , sia.r di

Poiché

8T .

allora

C, -

l alfabeto

per

BT

che

di C , e ta1e

foglia

ottimo

non

prefisso

i caratteri

le cui b

f bjdz

codice

un

T rappresenta

Se

ff ldr b

ff l r

da

f al

f c dy, c g ccC

f xl r x fl J

aII equazione

risulta

325

greedy

5

C.

l alfabeto

per

0,

dato

che

sia

f

b

il risultato

precisamente, minore

frequenza.

lo scambio

foglia

tra

o uguale

BT ,

sono

b

è un

d, b

che

non

8T,

è un

massima.

è un

Più con

la

BT

che

T è ottimo

albero

ottimo

La

procedura

che

si ha

sequenza

di operazioni

caratteri

con

di fusione

essere

può

assieme.

e y

la dimostrazione

daIla

somma

la procedura

operazione

dei

che

Il lemma

costi

ha

operazioni tra

i1 costo

minore.

seguente

soddisfa

deIle

Huffman,

la proprieth

della

con

il costo

le possibi1i

totale

Esercizi

del

che

sono

operazioni

due

mediante

17.3-1

dei

greedy

di una

oggetti

due

costruzione

dell afbern

necessarie

per

di fusione,

sceglie

17.3-2

costruirlo. sempre

sono

che

il problema

della

costruzione

del

codice

prefisso

fusi

Sia

A o

appaiono

binario

come

foglie

pieno

che

dello

stessn

per

l alfabeto

C

C

f

c cle

i

Prima

. Doto

che

di tutto

cl., .v

sui

basate

ffp d

un codice

in T. Se

padre

u

.v,

mostriuino

.

r

la soluzione

sui

basato

di frequenze

insieme

il seguente

h 21

g 13 trovare

per

nel

ottimo

il codice

caso

di frequenze

può

essere

di Fibonacci

ii numeri

primi

Si

che

dimostri

di

il costo

un

la somma

delle

di considerare

un

come

calcolato

ottimo

prefis n

ottimo

si consiùera

-

per

come

un

un

alfabeto

cl e

albero

rappresenta

un

a sociate

ai nodi

frequente

codice

anche

interni.

carattere

Si supponga frequenze

siano

lunghezze

delle

che

la cui

17.3-5

Sia

C

2ll

il costo

8T

l. ubbiamo

dcll albero

Tp i

essere

esp V i O

cnme

che

ffy ili

crescenti.

non

di codice

parole

ùimostri

Si dei

un

che

caratteri

non

caratteri.

Si

1e loro le

avere

deve

ottimo

codice

che

tale

in modo

ordinati

di caratteri

insieme

decrescenti.

C con

.

d,. ,

fx ff

d3

quella

simholiO.

fiav

f8

codice

ottinta.

rappresenta

cl,. y

e5

un

rappresentare

può

di Fibonacci

generalizzare

1,

0,

....

ottitno

l

n

un

l C

per

essere

puh

di

insieme

dimostri

da

rappresentato

una

che

un

codice

qualunque bit

di

sequenza

di

lunghezza

ll/f Il .

conviene

Sig...eritnertto

Dintostra -ione.

per

c2

b1

prefrsso

ottimo

ottiiro

non

pieno

ni

17.3

T un albero

di Huffman

numeri

otto

Si può

è dato

17.3-4 Lemma

è il codice

Qual

a1

17.3-3

sottostruttura

binario

ottimo.

primi

per

operazione

che

non

albero

un

che

dimostri

Si

una

ci si domanda

punto

dei

della

scelta

Il costo

greedy

frequenze

ottimo

una

A questo

scelta

deile

di fusione

tutte

dimostra

una

la somma che

un albero

assieme.

costituisce

dimostra

costruisce

incominciare

da fondere

piccola

come

17.3-3

che

sempre

può

di scelta

definito

L Esercizio

passo

più

tipo

questo

iI procedintento,

di fusione.

la frequenza

motivo

quale

che

e 17.3.

17.2

lemmi

dei

immediata

Conseguenza

Di nostra -ione.

prefisso di m ostra

ottimo.

prefisso

che

in cui.r

Il

17.2

codice

è maggiore

lemma.

Sl lemma

un

restituisce

Huvm w

negativo

abbiamo

BT

conclude

Questo

numero

simile

e dato T

Quindi,

a zero.

x è la foglia

rag ionamento

la differenza

8T B TI.

o uguali perché

d, x un

17.4

Teorema

maggiori negativo

pertanto

BT

di profondità

padre

numero di

il costo,

che

entrambi

in T. Con

abbiamo

implica

stesso

non

i

massima

In conclusione

dello

sono

il risultato

fa aumentare

e il tutto

foglie

d x

b -f

di profondità

e c non

a zero.

8T

di f

d

Analogamentc,

b è una

perché

sia

x

f

e

fosse

l e 2.

generata

Si

dimostri

da

usare

r

una

visita

chcqucitu

I

hit

per

la

speciticare

dell nlbero

struttura

lell alhero.3

nscralizzarioiv.

rcslituis .c

ottimi.

ternari

codici

I ri

lf . 1

ff

H.

eli

1 l il

in

modo

326

Capitolo

17 Algoritmi

frequenza che,

massima

in questo

utilizza

17.3-8

un

file

minore

del

la codifica

normale

codice

doppio

della

di Huffman di

non

lunghezza

frequenza è più

fissa

di

minima.

efficiente

Si dimostri

della

codifica

Il matroide

che

verrà

che

che

nessuno

neppure

di

Suggerimento

si

schema

un

di compressione

singolo

bit,

confronti

il

se

di dati

i caratteri

numero

dei

file

8

di con

è in grado

il

bit

di comprimere

sono

numero

scelti

dei

a

G è un

Se

dei

metodi

di una

greedy

A questo

paragrafo

algoritmi

greedy.

dimostrare

che

coinvolge

è in grado

esempio al problema assai

si può dei

fine

del

tutte

analizzati

con

al problema

ed è stata

del

estesa

l ausilio

17.3 .

altre

delle Inoltre,

applicazioni,

con

cui

Molti

questa

teoria

base

degli

si

vuole

punto

si

deve

17.1

accennato

nelle

note

alla

capitolo.

17A.1

2.

è una

S è un

coppia

insieme

Z è una

ordinata

finito

famiglia

non

noh

un

contenere

Si

proprietà. Se A

La eli

A u

e x

Z, c

noti

B c 2.

2

M

e

qualche

che

l insieme

che

una

M

cicli. la

soddisfa

un

B contiene

di

proprietà

scambio. insiemi

due

A e 8 sono

Quindi.

A

B

di archi

numero

maggior

archi.

Poi,

degli

alberi.

H contiene

B ha un

numero

albern

T i cui

alla

aggiunto A

foresta

la

contiene

alberi.

B

Vj

vertici

appartengono

la proprietàdi

scambio.

8 deve A.

foresta

della

distinti

alberi

a due

la foresta

A. allora

foresta

della

di alberi

minore

è il seguente.

viene

che

arco Pertanto.

contiene

vertici

proprietà

questa ogni

senza

il numero

alberi

g unità

una

di dimostrare

e jl/

archi

k

con

foresta

alternativo

modo

che

soddisfa

le seguenti

Diciamo

vuoto

ca o

che

8

AB , allora

Af

di S, i sottoinsiemi

esiste

diciamo

2 è ereditario

appartiene un

che

se soddisfa

necessariamente

M soddisfa

famiglia

B

c

la proprietà

è dovuta

parola di 5 s ono

a Ha sler

le colonne

di unu

Whitney certa

che

matrice

ha studiato e gli

S,

essere

Z

un

A tale

gli

insiemi

di un

grato

non

orient ito

G

V,

E

nel

modo

se

l insieme

E

de

1i archi

di

La

insieme

di

trchi

i . indij CllClCI1tC

hC

C

i tnt

,, , A e ma insale

insieme .

proprietà

è utile

maciim ili

indipendenti

Procedi,,mo

i

per

u.,sur,1 .

di

in

f 3llllál

1111 l

in nessun

è contenuto

non

altro

circostanze.

Supponia,no

M

matroide

che

t,........ C

f lli

t ....

.

iterai

h annoia

A

si,, sia 8

..-,....... .

SC

ie in ntolte

17.6

to insiemi

G.

. iC IO

seguente

ueitte

lll li4llllJ

un

di

proprieth

di

in S,.è

la

dove

Di,ne,stra -io,re. L insiense

un

Quindi.

indipendente.

ii éie ae inatriciali. sono

.

. estcllsioni. s c i

Ter rebia

in tereini

modo

coddista

che

insieme

2.

Tutti

definitn

un

di A in Z ce

estensione

x e A è una

elemento

che teme ammette

di I

in questo

a A ottenendo

aggiunto

un

che

diciamo

matroide.

che

di scambio.

i matroidi

elementi

W

la precedente alla

elemento

qualche

tale

che

la dimostrazione

conclude

Questo

mutroide.

M

un

di Sindipendenti,

matroide

elementi

G

condizioni.

soddisfa

M

Pertanto.

è un

Sia

A e Z.

l insieme

In questo

Z

S,

di sottoinsiemi

anche

che

M

vuoto.

vuota

se B c Z e A c Ballora

3.

che

cicli

Matroidi

matroide

1.

contengono

di G e che

sappiamo

e la foresta

la foresta

che

un ciclo. Un

e tali

Un

di

diminuire

aIberi,

A Dato

foreste

si considerino fa

jV

5.2

k alberi.

ag

foresta o

due cicli

non

dei

A. Teorema

al

Inizialmente

si è sviluppata

dimostrare

solamente

A e B siano

che

un

che

dato creare

si possono

non

termini,

In altri

è ereditario

Z

Inoltre,

finito.

insieme

di archi

insieme

contengono

non

esattamente

per

greedy

paragrafo

un

da

che

Grazie

problemi

foresta

arco

dell insieme

se la teoria

tecniche del

matroide.

è un

. Z

S

foresta.

una

è ancora

un

che

di archi

a esporre

anche

attivitè

come

alla in

andiamo

teoria,

risolubili

selezione

paragrafo

a molte

di questa

di problemi

della

sta casi

La teoria che -matroidi . il nome di

con

classi

che nei

ottima.

conosciute

di Huffman

teoria utile

particolarmente

la soluzione

le possibili

applicare

codici

rapidamente

trova

essere

possono

l affascinante

dimostra

combinatorie

di coprire

non

si

greedy

strutture

pratico

brevemente

teoria

Questa un algoritmo

delle

di interesse non

descriveremo

E è un

SA

Chiaramente.

Supponiamo questo

M

allora

orientato.

file

possibili

Dimostrazione.

teorici

non

caso.

se si rimuove

In

1 .5

grafo

sottoinsieme

Fondamenti

24.

Capitolo

nel

in dettaglio

analizzato

di copertura.

albero

minimo

del

al problema

collegato

è strettameme

8 bit.

codificati.

17.4

rW

grafico

Teorema

Si dimostri un

sia

caso,

321

greedy

.

.

un n

.. .. sottoin,ic*mc

di

k1. b

he

fOIC ifH

nuriim il .

in l

card

*

icr

A1

di

e

e,ldente

i11di .A

ità.

iCitCndihile

i

oliai

A

i.

Algoritmi

328

avere avere,

Per

di questo

teorema,

e connesso

orientato

G.

unalberolibero,con

essere ero

a

idea

una

o non

gra

con

che

Diciamo

estesa

ai sottoinsiemi

w .d

Ogni

M

di S mediante

1

albero

a ooni

e gra f eco M

d ipendente

d

nel

caso

ottimo

deve

mentre

e massimale

.

rt t

d

w può

peso

la sommatoria

esempio.

se

raf grafrcolafunzionecheassociaaoni ung

ezza

arcolasuala sua

degli

totale

si considera

archi

che

appartengono

f unzione

com ome h ezza

un

all insieme

is e, ,

di

peso

l

Ac

2

ordinare

wA

allora

restituisce

Algoritmi

su

greedy

un

matroide

r

formulati

del

in termini r

un

i e ppesato. t

matroide

i e.

U

essere

possono

ei

non

ma

B

oinsieme

inàipendente

sufficiente

,

o

i

e massimale

l

A più

f

ota

e.

che

matroi

cl

odo

e

e

matroide

i. M

e.

questo

e, basta

B

del

.,

o

che

S

C

assegna

r oblema

ra e. .d,, to

tutti

che

ertura

sottoinsiemeA,

c h,.e per ro ogni ni,

indi

cot toinsieme

sono oAo

.

abbiala

trova

M ., dove

i P esi-

m

più

i piccola

allora

V

1 TL p

il sottoinsiente

A questo

che

massimizza

ma

c OD,.

M

endente

e mass

A indipendente

w

. ain e mbitrario

Capitolo , p i

è anche

24 ven

na

0110

iti

eradO

di

C

C

S.

Llll Cr.l.tO

plCiC11tilLI

.a.,

eroùicniertur ù J

...L L

iif

1gn

di n

controllare tempo

i . ottimo.

sottoinsieme

un

restituisce

GRrrDv

fase

richieda

controllo

O ia

in tempo

eseguita

la procedura

che

dimostriamo

punto

viene

GREEDv

la procedura

della

La

5.

4.ahi deve

linea

singolo

un

che

un

esattamente

4 è eseguita

linea

ni esecuzione

Assumendo

è indipendente.

.r

A o

di 5.

ni elemento

o

per

tempo

richiede

n

Sia

facilmente. La

Igst .

On

è

A

che

la P -

17.7

Les ttna

A-

CZZQ

M

Sia

C

vale

che

111 lllnide

al

ri petto

crescente

e massiissale

UA

Z

5,

nel

caso

COllt

lCllC

itsdipeodente, A

CllC

un

cui

s

tale

scelta

il

greedy sia

5

che

5

di

per un

anche

esiste

allora

its

ordinalO

elementn

primn

esiste.i

Sc

e ista.

t. le

v.

peso Sia.i

elementi.

degli

in

funzione

con

pesato peso

della

1n proprietà

soddisfastcp

tnatroidi

E

E

ev

ri

odi

trai reuitsottoinsiemeottimi A

risnlvere

Se,

Diu avtraaoire. è

Po

i uoto

I iniieme

gll II

U 11/Ut

pLI

T. T..

llll

in que.,to. i,lit.l.IC

,. COIl

llLII11CI.O

aragrafo . llliltA lCIC

, I,l ICl.,iliV.. .l

Cll Ql

pCY .ltO.

-. LlllliOtlC

itmi

.. presentiamo L

-.. pi-so

che

ri. ol vo

. unna al ,- i

SùHOI

la

concludere

Nel

procedura

il

GReEov

ottimo.

sottoinsieme

si ottiene

GRecov

in

caso che

procedura

dimoitreretno

poco

è un

conseguenza

e di

della

la

Pertanto, Tra

nel

si dimostra

induttivo

indipendente.

indipendente.

massimo

procedura

A u

ragionamento

noA

modo

cui

sia

r

.inttoinsieme

.l .

w .4

indipendente

an, i a mi

volta

allora

OQ n .

sottoin iene

un

sottoinsieme

peso

un

la detmizione

per

a A solo

aggiunto

viene

e dato con

che.

Dato

scartato.

che.v

sottninsieme

un

un

della

l insieme

se

viene

allora

sempre

di esecuzione

una

volte,

irve

Ot11I110

w A

con

sottoinsieme

ordinamento

oAB

lunehezza

so , .s., che

pesato

EQ O una

d,, ...

il

il matroide

l

r

è

A sempre

restituisce

contrarin.v

indipendente.

risulti

x

sottoinsieme

Pode

uesto

A u

cui

I

inserito

caso

è indipendente.

vuotò

l incietne

di matroide,

S.

viene

al

fa perdere

non

inserimento

se il suo

rispetto

crescente

non

in ordine

l altro

dopo

uno

in A solo

Nel

di indipendenza.

Il tempo

c sianoconnessie siano

come

problema

iv,

si

rafo

cosi ottenuto, albern e a di co

ogni

M

S

risolvere

, pesato

in

peso

corrente,r

L elemento

peso.

la proprietà

possibile.

za

roblema m o

considerare

corrispon

n

o

Z in mod OHo

op ertura,sic 1,S

lun hez,

t

iii precisamente.

alb,odi

funzione

i vertici

tutti

er vedere

i un l i are

u

una

Inquestn

o in modo

era gra za

d

ed

2

.r

considerati

di 5 vengono

elementi

loro

ereed,

A c

nel

grande

M

izeroaogniarcoe. e

un metodo

Sèmae ioredi QS

pesos .v diognielemento.zc C

Peresempio,nelproblentadelmivimoalberodico

c

con

si vuole trovare un insieme indipendente . .5 eme in d. ipen c1ente j. i eso massimo oU

so

giore

risolti

d i trovare il sottoinsieme indi i pendente di massimo p ro bl ema , iù precisamente est ultimo è cosi formulato sia q ues problema

.

i

atoc

necessario

che

I

risulti

.s

hf A u

A e-

io

pesato

pesato,

o r

b lemi,

A v

A

return

Gli Ungrannumerodi

z

c

x

then

determinato

nell ordine

5M

if A u

do

5 6

17A.2 ..2

e

al peso al passo

rispetto

crescente

non

in ordine

SM

ciascun.r

4

laa

A.

di archi

for

3

matroide

un

S. e

v

GREEDY M.

, A c. S. . Per

ualu qualunque

e

essere

wx

g

in

elemento.r

indipendente.

un f funzione

prende

in cui

caso

A nel

all insieme

in esame

l etemento

aggiunge

ogni

peso,

che

dato

greedy

al

rispetto

crescente

non

in ordine

ed

singolarmente

algoritmo

è un

L algoritmo

peso.

e Z M.

5 1

con

indicate

vengono

W

di

componenti

le

procedura

funzione

la

successivamente

G.

x E.4

un

nostra

iilella

w indica

esame.

n

f

elemento m n o x È S. . La L

A.

di un

11

d

se e

è pesato

di zero,

M

l lat

ag-

Z

S,

maggiore

d

sottoinsieme

è chiamato

un matroide

., strettamente

iil ma matroide roi

consideriamo

esattamente caratteristiche

queste

valore. va

perer

329

greedy

17

Capitolo

llSICI11C

ll

A

con

V U O l O.

lu o

tll

AS ill

I Qlllcl

B.

io Lltl sottoillsic111C oilliic111C

.E,liilCUl.,l

i llL.

Il. .1

li.

V.

pf

11 Ill

I.

F

l,

C lli.l

Nel IK

indipendente

s ttuinsieme

unico

a climostrarinne.

o i poh

Ill

l

tllora

esiste,

mr il.. Il,l

c Icstltlllicc .

AO

O t tilllù

dimostrazione

.,t1C ll.lt

l,

zone

abbiamo

e quindi

non

richiestu

Velenlentox

8.

p ùCl1t.

irio.

contr

iato Dl

lll

Ill

C ill

sia pO i

8

un

Y l ùlllO

Algoritmi

330

Capitolo

Allora

costruiamo

l insieme

scambio.

i in

e

un

ipen

d. o

wa

e emento elem em t

enza.

o

tu e

essere

,,

iunto

finché

l u

z,

ad

A

B.

A

. P

.

alla

grazie

a

operazione

questa 8

A

poniamo

Successivamente,

op c h e può

d i 8

Ripetiamo

abb.a

o

Inizialmente

A è indipendente.

che

selezioniamo h

d o seguente.

A nel

bbiamo

sse

senza

perunqualcheyc

Poiché

essere

A deve

ottimo

e, dato

h

.

A, l

l emmaèdimostrato.

compirà

mai

sempre

un

dimostriamo

punto n o ne

che

seguito

non

elemento

se un mai

potrà

non

diventare

è una

una

scelta

possibile.

che M. Lemnra

17.8

M , AI

S,

per Come

B c

ogni

un

matroide.

ora.v

non

. Sia

elemento

x. un

è l estensione

di

di i S tale

x non

ch che

unn qualunque u

sottoinsieme

o. S upponiamo

che.c . sia

è l estensione

dell

insieme

indipendente

i e A di i S.

estensione

e d

di

il risultato

di massimo

GazEm.

procedura

.v

è indipendente



un qualunque

in

sottoinsieme

un

della

dato

M,

matroide

globale

il

che matroide

nel

sul

restituirh

Greedy

procedura

Pertanto.

in M

peso

indipendente

ottoinsieme

la

operazioni.

queste

massimo

di

dalla

se B u

se e solo

in M

B è indipendente

che

garantisce

operazioni

come

viste

essere

ad A, possono

x

vale

Z

risultato

indipendente Z

di

l assegnamento

clopo

17.9

ottimo

eseguite

le operazioni

Tutte

di Af attraverso. -.

A

un sottoinsieme

non esiste

infatti

insieme

lemma

il

Infine,

over

GREecv

procedura

nell

inserisce.r

di trovare

è il problema

da risolvere

rimane

che

la

che

possono

Dopo

ottima.

soluzione

garantisce che

contiene.r.

che

ottimo

è la contrazione

che

M

17.7

dell operazione

a seguito

errore

un

sottoinsieme

la

di 8

estensione

sono

non

costruire

per

il lemma

x,

che

elementi

gli utili

mai

saranno elemento

il primo

problema A questo

non

trascurati

tutti

17.8

il lemma

Per

se1ezionato

anche

ic

J.

Greco

ottimo.

sottoinsieme

Dimostrazione. essere

al lora

pesato

la chiamata

i. Allora

peso

matricidi

sui

greedy

funzione

con

ues

.

B è ottimo

un

restituisce

la

perdere

del/ algoritnio

Corrette a

un matroide

S. 2

M

Sia

ro

Alla fine di ...n B.Quindi

17.10

Teorema

I

s-b u wB

Sia Sic

331

greedy

17

un

sarà

procedura

in Af.

peso

Esercizi Dimostra-inne. di 8.

Procediamo

Dato

che

x è una

assurdo. ssur

per

estensione

di A,

abbiamo

che

una

A u

p

17.4-1

contraddice

q

.

i ipo

e. i ch

.

on.

i

la coppia

che

Si dimostri c 2.

i l iniieme

Sia

T una

tutti

di

dove

matroide.

è un

Z,

S.

cardinalità

di S con

i sottoin iemi

finito

insieme

al pii

k, cnn

coppia

S.

l

5.

R

Il

lemma

17.4-2

17.8

dim

ostra

che

icore

Lenrma Sia

.x x

17.9 il

se non

proro cm

utilizzato.

considera

che

non

Pertanto.

elementi

gli

la

soddisfano

elemento

primo

elemento

qualunque essere

u

di S che

sono

non

estensioni

ema

r oprietà

selezionato di trovare

i trovare

della

sottostnttticra

un sottoinsiente

indi ipendente in e en

iindi ipendente ende

con

il

di massimo

di massimo .,

peso

matroide

nel

che

ca o pesato

matroide

y B

c S c

elafiinzione

2,

.i-.y

S

. AIdi M p ciod

ione.

Si ,

A

un

., è la funzione .

peso.

. ristretta

di M,

snttniniieme

qualunque

.L

..i

i,t

e

in aa all iiss

.iolle

cl

ii di

ipencente m.ttroide

i lllaiiilllo

Z

endente

A

del

matroide

il1. peso

Init tramhi

i

che

Si

diicuta

ill

lE1

cile

Co I11ll. I1C

v il X

CICll. 1

H

U

.

U W

ie

miitin r

più

in iCrni

gli

insiemistico

ij complementn

Z.

5,

un

matroicle. in

elemento del

b

corrctlezz I

in

d

modo de11 t

A ilti i

ni

hlocco

di

partizioise

Z 1n

o

A

a

S

S.

Detiniamo

1 per

della

l.

degli

l insieme

tern1ini,

i

la

strutturo

2.....

k.

insiemi

A l

costituisce

partizione

Si che

insieme

iaatrvide.

fcinzione

ii tcnerc tr.isfiinn irionc.

di

peso un

tn,v,re

richiede,li

il problema

una

S, che

trustnrtnare

pc so. lt

un

indipendenti

come

mc atri

è

2

5. al

pei,to.

M i c si

di

5,....

condizione

lli

imponeitù6

5,.

e sia

finito

insieme

insiemi

degli

u .v

un

contengono

di t

S

dimostri

e 2

x

17.4-5 Dimostra

Sia S.

B u

.v

Z

S.

e massimali

contiene

A

es toto pes l 7.4-4

S

di

indipendenti

5-

ternlini.

lli altri

esattamente

iono

A

Z

dove

L ,

S,

Z . c Un matroide.

A F

nl ssimale

e massimali

insiemi

degli

allora

è un mutroide.

Z

5.

insien1e

un

indipendenti

contiene

e

che

Si dimostri almeno

pe. o

linearmente

di 8.

ottima

-. Garsov

dallarocedura a a procedura

un sottoiniieme.

le colombe

se e solo.aie

2.

S è

dove

Z.

in A sono

matroide.

è un

indipendenti.

A e

di Te

iulonhe

delle

l insieme

la

l 7.4-3

matrodi

I

un n ai

potrà

la

che

dimostri

Si

reali.

ii x ir a valnri

matrice

il

un

prohlema

soltoii1 iemc..

pn hlcm i

classico

relativ indipendente ùel

m troide

a un

matroide maè imùle pes ilo.

Si

332

Capitolo

17.5

Un

17

Algoritmi

Un

interessante

si hanno

che

entro

devono una

certa

dei

unitaria. specifica

sequenza

scade -e

un

e penalità

insieme

un

insieme

un

insieme

S

di n pesi a zero.

d, e invece

vuole

una

la somma

Consideriamo ritardo

una

nella

è in anticipo. ma

detta

Una

first,

scambiare ritardo

generica

qualunque

ie

un

programma

le

sempre

trasform.. posizioni

A una

penalità. tuttavia

un

sequenza

di esecuzione

zi zione

un

che

Diciamo

analisi

in un

per

finite

di

nessun

una

esiste

se

è indipendente

programmi

dove

primo

esattamente

una

unità

nella

sequenza

l, il secondo

A questo

punto

1V

.

nella se

di programmi

VA

n

1, 2,,

t

di

17.11

Lemma

di durata

le seguenti

A di programmi

insieme

ogni

equivalenti.

sono

proprieth

utilitaria

dei

di esecuzione

Diciamo

essere

può

sequenza.

Nelh

Se i programmi

r.

NA

che

n. abbiamo

che diciamo

sempre

essere

la sua

scadenza

la sua

ordinati

per

e crescenti.

scadenz

un

di

S

se N

Chiaramente.

di detmire

una

dele

t devono

tempo empo

finire

più

non abbiamo t. allora un qualche A ramnudi nessun pro .. abbiamo uenza a abbia conse Come

r, per

A

dove

di esecuzione

sequenza

di t programmi.

che

he

trasformata

in una

portata in coii

anticipo

è in

vero

il programma in una

scadenze

nsodn

alcuno , p i iuta

che

implica

3

la i esima

che

scadenza

più

che

i. Intttse.

crescenti è banalmente R

1.

alla

Grazie

2

proprietà

del

che

verittcare

17.11.

lemma

di

insieme

un

che

canonica

la

ed

una

sequenza

nellu

forma

cari .-firsr. in anticip

della

affermazione

Successivamente. i e j.

canonica

in anticipo

programmi

validità

di esecuzione

earhIl

è ancora

che

terminano

qualsiasi

i programmi

sono

ordinati

di

problema

la

minimizzare

iomm

delle

dei

penalitii

in

pr gratnmi

ritardo

è esatt usiente

in

prece /ente

prima

i scambiano

nella

rispettivamente

ti tutto

Teoren a

i Si,

le

sequenz

ai tempi

di

insieme

programmi

A

e con

indipendenti

1n

nwisima

reedy

non

dicn.sccnti.

per

penalith.

usticipo

scadenze di

un

trovare

es ere

puo in

per

è

programmi

al oritmo

affermare

D implica

1

è verificata.

er scadenze

i mo

ns . .

è a

grande

.

-

fo

in ritardo. forma

implica

la prnprietè

y possiamo

ottendta.i

nessun

anche 3

ti

programma che

allora

è in ritardo.

Dimostrazinne.

scadenza.

i programmi

programm sequenza

a A sono

appartengono

che

la scadenza.

precedono

un

precede

3.

l, 2....,

r

maggiore

programmai

rispettano

altrimenti

in anticipo

ritarào.i

dei

non

puo

dopo entro

ordinamento

esecuzinne.

Per

progran1nla è un numero

penalità

i termina

scadenza,

L insieme

d.

ogni

ia se termina

che

di esecuzione

seq ienza

n, per

ogni

penalità

programmi

la sua

d

dove

o

di

I

A è indipendente.

1. 2.

S

tiretti

un eli

in.,-ieme

17.

l2

di

n

insiemi

di

pro rammi

indipeitùcnti.

Alk n

la.itrutlura

è

Z

L.

e.

scadenze,

con

unit,ria

durata

un

i..a Z

di

t insieme

mvtroide.

I- e I

i. v

1pC1

LIC

per

in A 1à cui

programmi

di

programma

Ill

ordinati

dei

A di programmi

insieme

se un

il numero

unitaria

il programma

i programmi

in

che

esecuzione

dopo

in forma

esecu-

l insieme

che

a r.

o uguale

è minore

scadenza

con

di stabilire

i1 problema

in esame

prendiamo Indichiamo

è indipendente.

di S oche

permutazione

programma al tempo

di

di durai

di

sono

di

sequenza

r o. È chiaro è in titardo.

programma g

semplice

S di programmi

S è una

per

di durata

V

sequenza

in ritardo.

programmi

canoni

ordine

ottima.

insieme

programmi

questi

un

si ottiene

modo

in quesro

qualunque,

i programmi

si considerano

A. Successivamente,

all insieme

ordine

a

determi-

aver

via.

tale

i incorre

penalità

dimostrare

la sequenza di due

richiede

processore

d,

penalità

di

in forma

i progranmii Per

eseguito

Per

unico

tl

alcuna

possiamn

trasformata

decrescenti.

essere

A

S

in anticipo.

analogn

precedono

2, e cosi

d ....

di x e y nella

pnsizioni

e y è ancora

In modo

d,,

dove

una

che

esecuzione

di n programmi

sequenza

che

infatti

n

se termina

early-first

forma

È evidente

...,

qualunque

sequenza

questo

di esecuzio-

appartengono

che

rogrammi

in ritardo

Dopo

ottimo.

def milito.

sequenza dellg

deve

i

della

In

di tempo

una

insieme

Il

la sua

un

opeiralità

scatta

scatta

scltedule

programmi.

al tempo

Il programma

non

trovare

minimizza

dei

di tr scadenze

o ueuaIe

Si

I, 2,

unità

complicato,

un

inglese

O e termina

è cosi

unitaria.

programma

è rispettata

Dato in

set

è il problema

durata

una

Ogni

programma

completamente.

ordinamento

matroidi di

si riduce

ottimo

un ordinamento

nell ordinamento

in anticipo

A di programmi

di

la ricerca

che

abbiamo

conseguenza

insieme

la soluzione. è un

esecuzione

dei

richiede

particolarmente

di trovarne

l e termina

dell

non

appare

al tempo

al tempo

Il problema con

di

I uso

programmi

processore.

scadenza

di esecuzione

è attivato

con di

programma

unico

unitaria

eseguito

l ordine

ato

e se la

di durata

una

esecuzione

strun

è in grado

essere

per

ogni

problema

greedy

risolto ottimo

programmi

scadenza

Un programma

essere

puo

esecuzione

eseguiti

questo

algoritmo

è atti

di

essere

superficiale

tempo

che

dell ordine

problema ne

un

trovare

problema

definizione

diretta

Come

di scheduling

problema

greedy

I

s

L.

.

i .

t.,

....

, ,.

1.

lI

S

il

s

I

ILl, l,lllLIC

iicur tincnte

i

cndcnli Dl I11 111ll

C11L ,-l

llllCfO

C

t DCI.

1

Clll

sl Illll

V.,lli

Capitolo

17

Problema b. 3

4

5

6

70

2

4

3

l

4

á

60

50

40

30

20

IO

Si fornisca

e.

monete

le

cui

per

c

l algoritmo

un

per

l e

c

ottima.

soluzione

una

restituisce

non

greedy

intero

qualche

una

sempre

restituisce

greedy

di monete

insieme

un

...

r,

c,

siano

disponibili

l algoritmo

che

1. Si dimostri

k

d,

che

supponga

Si

7

335

g reedy

Afgoritmi

soluzione

ottima. Fi g ura

17.7.

durara

aniraria

LÞn L

esempio con

ordinamento

del

de/I

problema

scaden e

su

di

im

unico

di

processore

di

prograimni

e penalità.

un

maggior

numero

A questo 2

del

Lemma

/-

t

A

i 7.1

n, poiché

Il Teorema

unico

La di

della

eseguiti

greedy

ne

quanti k

contenga

1. Poniamo

unitaria

A.

A

Sia

A u

x un

l,

rammi

è O n- ,

r.

Problema del

è

in

di

grado

dimensioni

A è indipendente.

per

degli

Cfr.

una

sequenza

A. sono

g detinire

scadenze

ognuno

O ii

controlli 17.5-

2.

u

Il tempo

d.

Sia

cti

di indipenUna

G

E,

realizza-

dell ordinamento

2,

3 e 4,

ottimo

risulta

e penalità.

tralascia

su

In

e. unico

La

malrice

g

x

processor

esempio

questo

i programmi

un

l algoritmo

E

5 e 6,

ed

infine

accetta

risolva

il

17.5-2

Si

mostri

come

determus etermus re

descrittn

w

w

se

sia un

possibile

insieme

che

Si specifichi

nelle

fi

u

un

E,

V,

ii

peso

di E senza

sottoinsieme

orientuto

niton è

che

matroidi

dei

la proprietà

sia

la struttur l

cui

per

e

Z se e solo

A e

che

tale

in modo di grato

quale

ma

dove

ogni

penalitè

la

A di programmi

proprietà è indipendente

2

del

Lemma

in tentpo

17.11 O jA .

Si

tra

p

sono

un

unico

un

insieme

colonne

def

processore

n di intervalli unitario

di durata

terniinual

tempo

vmn z.

pop

nel con

unitari.i

lineurment,. orient.ilio. indipen-

linearmente

di archi,

delle

i risultati una

parli

corrisponden

e la proprietà

amo

i. Suppoi i

inoltre

Supponiamo

17.5,

paragr ifo ca lehze

l interv illo

clove

di tempo,

consecutivi

che

v nessun

associati

ciclo

perequi

indipendente

è linearmente

associata

descritto

il probtem . ramtni

di pro

un

esiste

non

insieme

di un

incidenza

i

motivo

nel

e arri ,

l.arco

colonne

contiene

quale

M di dimensioni

e

di sclteduling

problema

risolie

di

di

di colonne

motivo

qiusie

cicli

senza

matrice

della

al oritmo

di lunghezza siano

di essere

la proprietà di

Per

contraddizione

in

Varia-ioni

17-3

n

matrice

qualunque

non

e

I.

non

Per

un matroide.

M forma

matrice

Al in.,ieme

un

insiemi

degli

l insieme

che

afferma

e

di archi

insieme

à. uno

vertice,,,

.-he

dimostri

E

V.

cl l

e parte

il corrispondente

17.4-2

Il seguente

utilizzare

altrimenti.

G

orientato

grafo

1, se l. arco

allora

di una e

d

17.7,

di sin

M 0.

L Esercizio

50.

i .

80

penalità

matroide.

un

di incidenza

indipendente,

risulta

problema

dalla

un

trovare

per

un esempio

Si fornisca

orientati.

il

l insieme

Si

G

orientato

definito

e sia E,2

orientato,

grafo

cicli

M

perfetta

sostituita

un

tale

vertice,.

Esercizi

17.5-1

un

no s

grafo

efficiente

deil esercizio.

a

parte

17-3.

problema scadenze

dellgsequenza

di un

arco

algoritmo

alla

alternativa

il

se

solo

il risultato

utilizzi

si

Successivamente,

dimostrazione

e

se

indipendente

linearmente

di

altrimenti.

soddisfatta.

f.

penalità

una

0,

M

pesD.

forma

non

è

i,

vertice

31

matrice

è una

E

V.

sul

e incide

cicli.

è senza

G

orientatn

Inarco

colonne

a ogni

Si definisca

E

1, se

archi

dare

per

non

grafo

di

di

di associare

contiene

Z

insieme

17.4- 2

V.

A non

un AI

che

insieme

e di massimo

cicli

di

a

Z se e

A c

dove

Z,

E,

matroide.

è un

cicli,

la coppia

che

Si dimostri

orientato. di E senza

tale

un

che

negativo.

non

denti delle

incideit x IE

Supponiamo

di

l ordinamento

e penalità.

Esercizio

c.

in anticipa .

2. 4, 1, 3. 7, 5, 6 . Il totale

di

corrispondente

insieme

un

non

grafo

sottoinsieme

ag

dimostri

Si

di concludere

trovare

costruisce

appart

con

tempo

che

ci permette

se A è un inatrice

La

la proprie

un

E

V,

delI Esercizio

efficiente

poiché

di O n

r. Ciò

che

unitaria

soddisfa

t, dato

A

algoritmo

L

peso. i pro

che

G

solo

matroide.

greedy

un algoritmo

con

i programmi

7. L ordinamento

è un

Z

durata

di

nel

N hl B

A

algoritmo

massimo

esempio

dimostrando

N, A

N

S,

in cui

GREEDY

durata

seleziona

programma

con

è descritta

di

programmi

un

di ottenere

un

che

la coppia

necessita

illustra

scadenza

che

vale

programmi

procedura

17.7

con

1 di

è indipendente

k, abbiamo

che

dall algoritmo

figura

A

ottima

di

eftrciente

più

r

mi

ci permette

processore

esecuzione

zione

p ro ram

o ordinamento strategia

Questa

l

assicura

di

k

Sia

b.

Pertanto.

17.10 A

esecuzione

denza

1. Per

scadenza

8-A

che

B è indipendente

è indipendente.

indipendente dp

un

all insieme

dimostriamo

punto

Per

con

programmi

appartenente

programma

che

di

aciclici

Sottografi

17-2 a.

che che

dell ordinamento.ali Consideri unsi

e penzlitè. i i. uella

inizialtsletlte i programmi

di tempo quantità li n intervalli ll ll iiano

orùinati

pl

Problemi

17-l

I

resto

con

nwnete

zli

con,

ioo,5.

5

e

ln0.

c-,i Jimostri Si

che

I algorit,ia,

trov.,i

una

soluzione

ollitn,.

intcrv lli

a.

Si

I.

Per

.,pie,,hi rc ilizr ,wc

rncora

il

liberi.

nn,liso in

per n aclo

cui

l,l,,orllmo

cfl icicnte

un,,oluzio,w

iv.,tituiicc,nnprc I alpi

rilnui

ii

ciil1ii li

eli

utili// .lit

oltim,. l1

lOIV I l

LL .-li

336

Capitolo

17

in ingresso della

sia

già

soluzione

ordinato

per

decrescenti.

penalità

andizzi

Si

il tempo

di esecuzione

proposta.

ammoriizaata

Aaalisi Note

al capitolo

riferimenti

Eccellenti e Steiglitz bNella ella risa al

letter letteratura

lai oro

di Edmonds

di Whitney

e gli

algoritmi

sono

greedy

delle

attività

stato

studiato

della

è basata da

del

Lawler

132

e Papadimitriou

su quella

stati

i primi

anche

riferimenti

se la teoria

dell algoritmo

di Gavril

132j, sono

1971.

dei

agli matroidi

algoritmi si può

greedifar

risalire

193S.

correttezza

Lawler

di Huffman

combinatoria, 62

del

200

dimostrazione

I codici

i matroidi

sull ottimizzazioite

al lavoro

gono

La

per

154 .

Horowitz proposti

greedy

Il problema

SO .

e Sahni nel

il problema

e Brassard

105

1952

per

dell ordinamento

una

I07

della

e Bratley

rassegna

selezione

di programmi

delle

33 . tecniche

per

la

di

struttura

Una e L Lovász capitolo.

estensione 127. ...

della 128,

teoria 129.

dei matroidi Q 30 . ..- Questa

detta teoria

teoria

dei

generalizza

la

teoria

è presentata . presentata

da in

Korte uesto questo

definito

è

dati

l analisi

trasformazione

è piccolo, caso

nel

di ogni

tre

I primi l anali i

nel

si

prima

paragrafo

puo

questo .specifico

della

oggetto

di dati.

struttura a cui

operazioni

sequenza a quello

un

un

addebitato

verrebbe

altrimenti

allora Il metodo

tipo.

della operazioni a determinate credito relativamente prepagato è usato il credito per Successivamente,

coinc

considerato

t

il costo

diverso,

del

a seconda

vari

operazione

di

stabilisce

si

aggiuntivo

un costo

addebita

di quelle

costo

di una

per

In questa

sequenza

una

di tipo

operazioni

si considerano

Quando

di

cui

in

accantonamenti,

degli

usate

aggregati.

Tnh.

da

è dato

di uosa operazione

degli totale

costo

del

Tn

superiore

ammortizzato

essere

deve

addebito

limite

operazione.

accantonamenti

degli

nadia

l efficien a

comunemente

tecniche il metodo

in esame

prende

il metodo

esamina

il costo

che

accadere

18.1

ammortizzato

di ogni

ammortizzato

un

determina

18.2

a

si fa riferimento

non

considera

le tre

esaminano

capitolo

11 paragrafo

Il costo

operazioni.

L analisi

costose.

piuttosto

certa

una

di

di operazioni.

sequenza

che

sequenza.

pessima.

di questo

paragrafi

siano il fatto

per

ammortizzata

analisi

una

probabilità caso

ammortizzata.

tecnica

Il

delle

teoria

opera ione

medio

di una

medio

trasformazione

caso

del

dall analisi

della il costo

che

dimostrare

per

una

di

operazioni

operazioni

delle

costo

come

della

operazioni

differisce della

concetti

è utilizzata

di

sequenza

una

tempi

dei

media

se lo si considera

alcune

in cui

ammortizzata

di

esecuzione

di la

come ammortizzata

Generalmente,

anche greedoidi

il tempo

anunorti ata

Nell analisi è

di

minore

costo

il

definire quel1o

reale.

metodo

operazione,

degli

metòdo nel

le ,

o più

sempFcemente

seeuito.

esempi

per

potenziale il

primo

I operazione di o ,getti.

numero un

arnica

per

il credito

è associatn è piii

il credito

Il secondo operazione

è dato

Muix,poi,. e.,empio loc 1u .wr r.

struttura

d Ila

c dato

da

moclelli

tre

di d iti Mualvnv

L operazione un

come

della l energia

del di

struttura potenzi i-

di dati.

struttura di questi

le car tteriitiehe esempio

vieto

propriamente

della

individuali

oggetti

ogni

successivamenDifferentemente

sottostimati.

i costi agli

di

amn1nrtizzato

operazioni

di determinate

simili

ha caratteristiche

il costo

si stabilisce

compensare

potenziale .

descrivere Un

concreti.

operazinne.

0. con

del

utilizzato dove

aggregati.

metodo

dati.

Nel

viene

il costo

inizialmente,

sovrastimando, addebito

te, questo

che

metodo

Questo

potenziale.

sensn

nel

accantnnatnenti,

degli

del

il metodo

esamina

18.3

Il paragrafo al

c ,ntawre

in es n e

prenderemo pila,

estesa

dalla

elimina bii,ario

con

che

conta.

una pila

due

ulterinte un

a partire

certo da

338

Capirolo

presenti

nel. programma

reale.

assegna

un certo

a un oggettox,

a qualche Le

attributo

tabella

che,

Il metodo

Xel

metodo

nel

X n In.

Si noti

applica

anche

Gli

altri

due

il metodo tipo

li a

struttura

che

ottimizzare

per

del

modifica

degli

accantonamenti

di assegnare

lo stesso

che

17

valore

6

il progetto

a seguito di algoritmi.

analizzare

per

di una Per

analisi

metodi

mostrare

iale.

o costo

nella

i valori

auunorti ato,

siano

in questo assegnare

possono

tutti

per

viene

sequenza

di ii, una

di una

attribuito

alla

sequenza

capitolo.

di

il metodo

costo

òperazione

singola

operazioni

presenti

un

di

ii

degli

ammortizzato

è dato

da

operazione tipo

a una

e si

a operaziohi

ed

numero

di

dalla

nostro

esempio

dati

ila,

di analisi estesa

le operazioni

tempo

con

con

il metodo

una

nuova

fondamentali

della

degli

aggregati,

operazione.

struttura

Rei

di dati

pila.

in esame

prenderemo rafo

para

Il.l

sono

operazioni

Queste

la

infatti

O ,,-

richiedo-

Sebbene

01

Pusw S..c

inserisce toglie

Dato

che

abbiano

. q ueste

L anu

ii

k elementi numero restitLllSCc

I

,

hile

unit r

testa

ata

testa

elencanti

alla

ál pila

pila

ono

di

diventa

una

non

/,

totale

do

superiore

elemento.

quell

svuoLt

Nella

contiene

Tt uL

e

I,-

0

Ol sequenza

la

pila

nel

di n operazioni

aitrimenti

risulta la

-, czso

seguente.

considerare

. possizsso

di t operazioni se estendiamo

procedura eleincnti,

tempo

di una

sequemz

4 S.r,gev.-E.,1vTY 5

in

il metodo

la pila

l operazione restitiri ce

Pt.sH

una

più

Pus

operazioni

Po .

Il cn to

ammortizzato

A

I

di una

pila

è dato costo.

inizialmente

risulta

di n operazioni è 0n

costo

per

ciascuna.

il costo

considerando

ottenuto

O n- ,

chiamata tao

di questo

su una

sequenza

il cui

so1a al ia

lineare

funzione e Muc rit ot

Pc sv

il costo

l intera

considerando può

e MULTIPOP

ammnrtizzata

dell analisi

aggregati

essere

SU una

pessimo

piultosto pila

inizialmente

vuota

Infatti,

n operazioni. ur.a

costosa,

può

un

otteisere

possiamo delle

sequenza

sequenza

limite anche

qualsiasi al massimo

costure

e Por

di dati

pila

S contenga c

con

un

St,icv.-E mi.

rwcsc.

Vogliamo

ancora

di una una

volta

operazione mettere

I i

Pnv S l

utla

operazione

è accurato,

MULT POP

operazione

si esegue

dell

eliminati

On.

trunura

in cui

che

degli

signit catii o

ciclo

Mut.vtpov

il risuttato

corretta, non

operazioni.

singole

che

operazioni

0n

avere sia

analisi

è una

Por.

implica

e questo

On

possiamo

questa

Usando

5 e restituisce

interessante

più

pila. .. oppure di

5.

pila

eseguite

il co tn

reale

de della

alla

se

ven

minore

M

testa

. Quindi.

ammortiz .

TRLI.

ni uvr5.

in

di esecuzione

dalla di

x in

u p e razioni

un coito

è n e iI tempo

Mui

l oggetto

l elemento

da

è dato

che

ripcr ieione.

cioè

ii c iito

Il

e Pese.

sono

di elementi

totale

il costo effettivo

di n operazioni

sequenza

del

iterazione

In conclusione.

di esecuzione

tempo

una

operazione

state

2.

linea

e il suo

k

min s.

delle

Po S

Po/

numero

dal

ogni

durante

Por

Iv1cLT1POP

di Por

operazioni

l

min s,

applicata

operazione

della

delle

astratto

I

di operazioni

numero

nel

il costo

che

dire

per

è dato

ivhile

Inoltre,

pila.

Consideriamo

pile

primo di

presentate no

della

di MULTlPOP 5.

è lineare

unitario

il costo

ciclo

del

di iterazioni testa

è sufficiente

questo

considerando

studiato

essere

puo

accantonamenti

eseguite.

effettivamente

diverso.

diverso

5 con

Mut.tivov.

di esecuzione

di esecuzione

i

nrinori

elementi

dell operazione

i1 tempo

sia

quale Il tempo

s elementi.

di

nuntero

rn

contiene

pila

di applicazione

esempio

un

la

che

dato

c

ci domandiamo

punto

pila

in

mostra

18.1

figura

La

da su

c

è mosrrato

ione

dell-operazione

Operazioni

struttura

b

di

diverbio.

Xel

a

esempio,

le caratteristiche

Tn.

ammortizzato

ch e esamineremo

otenz

47

A questo

medio,

costo

in cui

47

dimensioni.

che,

tempo

l0

top

10

si ottengono

potenziale

le proprie

pessimo,

il costo

questo

al caso

23

Op

si

dell opera

occorre

caso

ess imo,

del

metodo

necessità

di dati,

il metodo

regati nel

caso

del

aggregati

richiede.

Quindi.

caso

c è alcuna

39

utilizzate

dinamicamente,

de

operazioni

se nel

non

codice.

utilizzeremo

degli

esempio.

particolare essere

possono 18.4

Per

del

su una

paragrafo

una

18.l

credit v

informazioni

ammortizzata. nel

credito

339

ammorri ata

alisi

18

amm irtizr ttn.

datn in evidenza

dalla che

media non

O w in abbiamo

Ol. fatto

alcun

riferimentn

di Gn.

n

-ara

Incremento

di

un

contatore

COStD

Valoredel contatore

binario

gXgXsXgX X

altro

un

contatore

A0

esempio

..

binario,

/

1

con bit,

di

memorizzato è A /-

di applicazione

nel

del

k bit,

dove

metodo

che

conta

aggregati da

a partire

lengtlt A

contatore

degli

k.

1

è rappresentato

bit

dall

è dato

dal

0. Il contatore

meno

è realizzato

significativo

elemento

A0,

di realizzare

problema

del

mentre

da

un

numero

il bit

array

binario

x

significativo

più

I.

Pertanto

X

Inizialmente,x

0,

valore

del

corrente

e, quindi,

Operi

Ai

contatore

facciamo

0, uso

I,

della

...,k

1. Per

sommare

l

2

modulo

ic

i

3

lengrh A

do

4 if i

Ai

0

i -i

l

algoritmo

viene

quando All inizio

riporto

iterazione

i. Se A i

l allora

0. e si deve

riportare

Nel

caso

nel

Con e

tutti

gli

operazioni

alla

ciclo modo

termina che

caso

della

Una

singola

elementi

pila,

nel una

ùell array

in

i se

sono

che

i

un

addizionatore

cosa

sommare il bit

3

00000

4

4

0000010

5

000001

6

0000011

7 .

8 10 -

11 15

000010 -

16

IO

0009101g

ll

0

12 l3

0000110/3 0 0 0 0

14

00001

15

0

0

O-,O.T.3.

16

0

0

0

Figura

18.2

0

18

0 0

Le

19

l

22

l

23

l QFl li1R

l

25 26

g g 0 3V

0

0

31 di

valore

del

trasforma-io ri

contarore

w

i- J

rendere

complementvti

16

di

un

I cREwEwv

a 1. un

inizialmente

tempo

e

ciclo.

si

INCREMEYT di una

inizialmente

contatore

su di un

caso

la

a ogni

nostra

analisi

a zero

chiamata

notando

precisa

nel una

richiede

dell oper zinne

Irlcazwvst.

che

non

In questo

en

tutti modo

una

è On,

di

sequenza quindi

il costo

una

operazione

ii

operazioni

ammortizzato

01.

deve

di

una

Esercizi

ma caso

poco

pessimn di i

sequenza tempo

in

Anche

di dati

struttura

casn

questo

di dati

la struttura

di estendere

Supponianso

18.1-1

il

clel

costo

a e si.re

01

limite

pila

continua

i bit

sc

lu struttura

il costo

pila

con

delle

ammortizzato

Muitmvsw. d llà de

operazioni

O nk I8.

piii

da

pe siino

posto

O n In

risulta

operazinne

singola

nel

richiesto

tempo

il

conclusione,

bit. corretto

Quindi,

a zero,

i diviene del

.

16. In

0

richiede,

8k.

posto

1imite

è

Il costo

dei

2fl

posizione

posizione

6.

modifica

fornisce

finale

iterazione

linea

i0

al contatore

Ai

l

np

nessimo.

Possiamo

sec rren-n

in w a

a 8 bit

binario

INCREN3EiT.

di opera ioni

con

I nella

nella

sicuramente

di

accade il valore

successiva

k,

operazioni

puntuale

uguali

si vuole

i diventi

dell operazione

su di un contatnre,

mostra

1 nella

posizione di

analisi

da

è 0 mentre

abbianso

allora,

numero

esecuzione

2-4

posizione e

18.2

iniziale

linee

somma

il bit

hardware

figura

il valore

while

della

è lineare

licaEwcw

caso

ciclo

risultato

il

La

volte

sai mare

in

IvcrEwewr

significativo. dove

I da

fare

operazione

del

come

contrario.

semplicemente

3

i0

29.2.1 . 16

per

realizzato

quello

paragrafo

incrementato

di ogni

1

0000001 .

j,

I

è fondamentalmente del

propagazione

-

2

totale

thenA i

Questo

l

0

0

9 al

length A

6

nel

e Ai

0 0

0

0

0000100 .

0

svhile

0

l

0000

LicRzitziiw A l 2

tosate

0000000

8

seguente.

procedura

t

7 -

J

g,-p

p XgX

-

0 Un

341

ammoni

Analisi

l-2

vengono del

Si

dimostri

operazione

che

DEcerwem,

del

contatore

il cnsto

allora

binario

di ii operarinni

di / bit

fosse

diventerebbe

estesa

con

una

O ni

nel

caso

caso pCgh lOtC.

rn ,18.... g a0 ,.iene

complementato

a ogni

chiamata

dell operazione

li cR wEw1.

Invece.

in un..i li .

1-3

di,

oenerale,

il bit A i grazie

l,

....,Lli,, , p er i 0. n,

non

viene

all equazione

,I,.

in un

complemcnt 3.4 .

tr diviene

icquenzu

atTatto.

di n oper rinni

Il isumeio

ti t

I cev lrr

ile di operazioni

t su di un c

ti mo Lilii .i

I t,t ire

di bit.

11

altrimcnti COilO, ll111110fl

il

suo

l// l O.

co.,to

.,i,

I.

Si

utilizzi

il

metodo

cle

li

ae reg,ti

per

stabilire

Capito

18

in generale,

ma,

18.2

Il metodo

degli

accantonamenti

asintoticamente.

loro

tra

Il mero

degEi

diverse

accantonamenti

operazioni.

valore

Può

maggiore

chiamate

o

costo

dell analisi

accadere

minore

suo

ammortizzato.

maggiore

del

struttura

di dati

costo

effettivo,

viene

allora

costi

che

le operazioni La

hanno

scelta

sia

del

lo

costo

ammort na

era, per r ooperazione

medio nperazioni

deve

c

e

i operazioni.

gativo,

sQM costi

una

supera

il costo

e

i o

at

Per

su

illustrare

Pt ss

è

piatto

o gettoetto

costi

effettivi. costo

ammort o

costo

izzato

Il

cos l

do

dee

i

deve

determinata re

Infatti,

limite

valere

tutte

se

del

debito ,

b

su p eriore non

qu

deve

del m

per d

a pi

os

dei costo

uenza

di cui U

U

allora

i

co stieffe

visto total

ossibili ivi.P

effettivo

totale.

minore

Perciò.

è On,

totale

del

rima

metodo

di tutto

degli

ricordiamo

accantonamenti. i costi

etfettivi

consideriamo delle

nuo

amente

fornire

Possiamo

operazioni

delle

di costo.

dovekèilnume e

elementi

2,

Por

0.

X IL LTIPAP

0.

Si

acervi

da

rimuovere

costi

o o

nell

aapilaalmomentodellachiam nadell o

ni i seguenti h se

effettivo

totale.

un

altro

una

SU

e

Prima erazi one b 1 c e s rappresenta o, operazione.Supponiamodias e-nere e

la

di tutto.

addebitati

ammortizzati

I

il credito

riporta

viene

a 1. Quando

un bit

che

perpugare

il bit

a 0

per

effettivo

il costo al bit.

annunciato

paguri

maggiore il costo

ntvut.

ammortizzato

di tempo.

questa

openzii

ne

in dollari.

ogni

ci h ta

un dollarn

dei

rimanente

tl dollaro

due

il dnllaro

poi e dollari

rappresenta un crediti

ha associato

contatore

prendere

che

l operaZione

per

a l. ùtilizziamo

l del

i ozinne

lanostra

definisce

dollari

operazione.

al

è proporzionale

operazione

pagati

di due

un bit

di questa

istante

A ogni

siano

analizabbiamo

Come

a zero.

numero

Questo

i costi

ammortizzato

di mettere

richiesto

bit.

di singnli

un costo

addebitiamo

un

sempre

accantonainenti

degli

di questa

di esecuzione

supponiamo

volta

e Mi Il costo

inizializzato

binario

di un contatore

il tempo di modifica

operazioni

Quindi. termini.

è sempre

Por

totale.

metodo

del

di applicazione

esempio

INCREMENT

Ancora

totale

Pus .

via.

binario

s,

ro degli d e

superiore

in precedenza,

osservato

numero

limite

contatore

la pila

effettivo

costo

il costo

un

l operazione

zando già

min k,

di

Incremento

a.

come

cosi

che

conti-

In altri contiene

e che il credito

di credito

il

pagare

piatto

e cool

P v klca tvua.

di n operazioni del

aver

non

per

il secondo

rimuovere operazione

sicuri

siamo

sequenza

per questo

l operazione

per credito

il suo

l operazione

dollaro

a zero,

ogni

per

è un

totale

ammortizzato

di zero.

l,

XIULTIPQP

Pertanto.

di

permette

neanche

utilizzare per

pagare

per

Pus .

costo

nessun

la successiva

si ha un

pi1a

o uguale

maggiore

a zero.

o uguale

su11a

In

dell operazione. di

basta

piatto

pagare

accantonato di credito

il do11aro

effettivo

costo

del

operazione

una

di Poi,

addebitare

ufficieme

credito

piatto

i piani

funi

il credito

con

prendere

prima

il costo

Analogamente.

Por.

di

Questo

anticipato si esegue

effettivo

dell operazione

per

per

in cui

l operazione

il primo

rimuovere

pagamento

il costo

pagare

di

bisogno

un

ogni

di piatti

numera

rt

per

costn

il credito

sempre che

per

un

momento

si deve

piatto,

superiore

operazione

dell

a utilizzare

abbiamo

op

si paga

nessun

per

effettivo

nuiamo

pila.

ma

utilizzare

abbiamo

Infatti,

LTIPOP.

dalla

alcuno.

leggermente

addebitare non

Nel

il piatto

un

nuovo

un

credito

un

di tempo,

istante

a ogni

come

visto

essere

rimuovere

per

con

dell operaziane .

ammortizzato

Pertanto,

paragrafo

si mette

Quando e si rimane

è 1 dollaro, costo

in

nel

di credito.

dollaro

può

piatto

costo

addebito di

costo

valore

P

d iventare

Mc

d

d

o d

Quindi,

Inoltre. le sequenz

un

successivamente

bisogno

il piatto.

rimuove

che

un

modo. di

sul

si addebita

pila.

come

sopra

possiedono

pila messo

non

poterlo il costo

I,

Por

nella

dollaro

addebitati

è messo

dollaro

di

presentata

ristorante.

di un

di piatti

pila

dell operazione

effettivo

dollari

due

dei un

di

sia

e una

pila

l analogia,

Si ricordi

sequenza i pagamenti

qualunque

di effettuare

Supponiamo

ammortizzati. vuota.

una

a costare

viene

quanto

la pila

il costo

pila,

dollaro

di Por,

b

se

quel

addebC

i totali

di dati

una

ni sequenza

di un precedente pagamento

d di

ed

strutt

er o

totale.

1e

l

pessimo

i costi

di dati

dell operazione

tutte e

addebitando

inizialmente,

sulla

Il

a vedere

la struttura

presenti d

in cui

Se

caso

tota to

proprietà

effettivo

un

struttura

e che.

credito

effettivo

oculata. nel

effettivo

nf sarebbe

essere

su pile

tra

un

e

compensa

per

dal

ne

pile

le caratteristiche e

dei

composto

deve

sem

di un successivo

a una

11.1,

operazione zi

d determinato

ammortizzati,

a una

il risultato

diventerebbero

e associato

Operazioni

sarebbe

e non

minori

costi

associato

totale

ota at

è

nella

q uesta.

rappresentare

a

dollari

ioni

1

del

deve

promessa

una

successivamente

come

il costo

poiché

ammortizzati

a un

usato

operazione

allora

ito totale

ivo questo

ga

di

In questa ott c, prelevato. . ris peett o a 1 meto d o ddegli aggregati

dei

superiore

limite

il credi

o ammortizzato

i

di una scelta

, odegliagereeati, d

meto

Quindi, Q,

p

izzato

opportuna

un

a abbia ia un

punto

a questo

operazioni

alle

ammortizzato.

è piccolo,

essere

aso .

costo

stesso

che differenze

diverso

operazione

ammortizzato

risultano

d depositato

numerose

presenta

d eterminata

a associata

visto

valore

un

l

-1 i costo

vie ne

essere

e può

essere

p uò

assegna

. Il

differenza i erenza

la

Il credito

ammortizzati

p

tonamenti tona

tt

eff

ccaso o in i cui c

credito.

detta

p

credito,

costo

Nel

rt izzata

in quest u s o mo d o una

che

del

amm

differiscano

in esame

operazioni

delle

ammortizzati

i costi

che

accadere

può

Andiamo

dei

343

ammortizzata

Ana1isi 342

ùi creclito. siociato

al bit.

ch

il

costo

ammorti aquantità aa

i

zzato variabile.

dell

operaio, e

.

In

LStO f u sri

iv1vi..ni,o, ,,

C IM ,

-, I

i OSll

dell lllllll0 l tl// Lll

,.

, 5011 1lllll

u

i

Ol

t

operazioiic

chè

eliporto

a

0

i bit

all ii lirno

del

ciclo

ivhile

vi n

x g tli

con

i ùollaei

Il

344

18

Capitolo

associati

Dato

ai bit.

il cpsto

che

ammortizzato

1 presenti

nel

o

a zero.

uguale

l operazione

contatore

ammortizzato

IscRExtEsT

dell operazione non

In

è mai

di O n ,

una che

al

negativo

conclusione.

totale

al più

risulta

è un

più

sequenza

solo

Inoltre.

il totale

credito

e, quindi,

limite

a l un

porta

di 2 dollari.

di

n

superiore

del

operazioni del

bit

il numero

effettivo

allora

totale

è sempre

1rucREwExT

costo

6,

linea

di

maggiore ha

un

all operazione.

dovuto

di potenziale

l aumento

con

effettivo di n operazioni

totale

ammortizzato

Il costo

costo

del

somma

dalla

dato

è dunque

operazione

di ogni

ammortizzato

Il costo

345

ammortizzata

Analisi

diventa

costo

n

II

totale. pc,

g c, 4 D, - D,,

il

ii

Esercizi DD

4 D,

.

18.2

direna

conseguenza

pc, 18.2-I

Supponiamo

di eseguire

la dimensione fatta

una

della copia

appropriato

non

pila

della

alle

le operazioni

una

pila.

diverse

sequenza

di operazioni

sia

mai

Si

dimostri

maggiore

operazioni,

su di una

di k. Dopo

che,

il costo

in modo

pila

k operazioni

assegnando

un

di n operazioni

viene

costo

sulla

tale

che

sempre

ammortizzato è O si .

piIa

La

funzione

una

Per

di copia.

18.2-2

Ripetere

l Esercizio

18.1-3

con

il metodo

di analisi

ammortizzata

degli

accantn-

tutti

i. significa

di

i valori

In

totale. noto

è sempre

non

P D, ,

DD

con

effettivo

costo

del eseguite

essere

potrebbero

la

mentre

18.1 ,

dell equazione

seconda

3.7 . 4

potenziale

superiore

limite

un

dall equazione

si ricava

uguaglianza

incluse

è una

uguaglianza

prima

garantire.

che

DD ,

per dei

accantonatnenti.

degli

metodo

c, è

g,

operazioni

sia d D

che

richiedere del

caso

nel

come

di

totale

il numero

realtà.

pertanto.

totale

ammortizzato

il costo

namenti. D D, Supponiamo

18.2-3

anche

di

una

Si mostri

come

sequenza

voler

definire,

operazione

che

realizzare

un

di ii operazioni

ienga

eseguita

in

della

posizione

all operazione

a zero

contatore

INCRE1IENT

tempo

cifra

oltre

mette

On.

1 più

che

tutti

i bit

del

con

un

vettore

e RESFT

si

di bit

in modo

del

numero

contatore.

binario

un

che

una

di

dal

di rappresentare

del

il lavoro

Il potenziale

Il

della

metodo

è associato

struttura del

il

i-esima

il costo

D.

potenziale

due

dalle

dehniti Funzioni

funzinne

pagato

in anticipo

come

credito

associato

con

potenziale

un particolare

potenziale

alIn

struttura

di dati

nella

sua

interezza

e non

a un

partii i l re

Per

di dati.

potenziale

è definito

nel

modo

seguente.

Pria

di

tutto

i

conquidere

dai

dipende

su

le

illustrare

è il risultato limiti

di tempo

del

caratteristiche

metodo

una

DD

0

detinito. c,

,D,

è

operazione

dell

con

pagato

una

18.1

dit ferenti

e

possono

dare

scelta

dalla

dipendono

I S.2

co ti

origine

della

ammor-

4 Do P D,,

.

.

i Y. I Llll

l11111ll.

Lllpl l1OIC

di

un

compromesso

quale

ia

la

migliore

funzione

desiderati.

pile

Dunque

.,

effettivo

equazioni

potenziale

ll

è cosi

versamento

un

c, descrive

anumortizzato

potenziale.

ammortizzati

Operazioni

oggetto

costo

versamento

presenta

4 0.

potenziale della

future.

un

operazione

dalla

effettuato diminuzione

del

di trattare

permette

18.3-1

Esercizio

L

D D,

in cui

il caso

alla

rappresentato

funzione

Invece

intuitivo

significato

I costi

Il metodo

che

di i.

i valnri

tutti

0 per

a zero

puntatore

contatore .

1S.3

semplice

cb D

REsEz . tale

inizializzato

usare

può

un

operazione

SU di un contatore

Suggerimenro

significativa

incrementa

contatore

metodo

un

che

dimostrare

0. e poi

ClCI

C YlO

CtTClllY l.

ùel

potenziale.

consideriamo

isuov unente

l esem-

344

pisolo

-

l8

A questo cbti

calcoliamo

punto Se

pila.

la i-esima

la differenn

di potenziale

- D,

D,

i costi

operazione

ammortizzati è una

delle

operazione

diverse

Pus

operazioni

e la pila

della

contiene

strunQ

f

s elementi.

gj

alliir,,

risulta

c,

l

i

s

ammortizzato

della

,

i

s

i

Pus

Se

diventa

I

che degli

la i-esima

operazione

elementi

la differenza

tolti

dalla

del

pessimo

è On.

di potenziale

anche

sia

I operazione Abbiamo

pila.

Mcu che

tpoe S,

il costo

k

e che

effettivo

k

min k.

s

dell operazione

ii J .

è l

è

costo

superiore

del

b

il suo

valore

un

numero

contenga

il r,ontatore siano

in cui

a 1, dove

uguali

bit

i valori

caso

il contatore

analizzare

per

di i,

nel

I cREiiEvv

che

Supponiamo

inizialmente ci

LscREa ExT

n opetazioni

dopo

l equazione

riscrivere

I,. Possiamo

bo. b

semplice a zero.

a l, e che

uguali

di bit

b

0

sia uguale

non

iniziale

tutti

per

di n operazioni

molto

un meccanismo

fornisce

potenziale

caso

nel

che

0. Dato

D

il costo

Pertanto.

totale.

effettivo

allora

a zero,

è inizializzato

binario

il contatore

Il metodo

il numero

i

t,

1

2. operazione

2.

mentre

1

r,

11

Si supponga

D,

c 4D

I. Il costo

risulta

ammortizzato

il costo

Infine,

347

ammortizzata

Analisi

modo

nel

18.2

seguente. -

. Il

Dunque,

il costo

ammortizzato

dell operazione

Mvu nev

c,

D,

k

D,

i

4 Dp

D

c,

g

I

i

c,

n

c,

è

l 8.3

.

il

Poiché

2. per

c,

k

i

l

n.

DD

D

b,, e

di n operazioni

totale

effettivo

il costo

b,.

C

INCREiXlEiST

0. In

modo

analogo

Il costo totale

si dimostra

ammortizzato

di una

D superiore

sequenza

da

questo

del

costn

che

di tutte

il costo e tre

di n operazioni deriva

che

effettivo

ammortizzato

è On. il

totale.

di una

costo

è 01,

Abbiamo

Por

e. quindi,

il costo

notare

in precedenza

fatto

ammortizzato

Il costo

operazione

c,

è 0.

totale

di

nel

caso

di ir operazioni

n

ammortizzato

operazioni pessimo

che

di

un

contatore

bo

è un

2n

b

hp

.

D

è penanto

si noti

In particolare osto ha un

limite On.

del Incremento

b,

g

i1

le operazioni

che

effettivo

totale

uguale

Qk

di almenon

l esecuzione

e quindi

b k

da

indipendentemente

a Oi ,

INCREMENT

operazioni sia

quale

il valore

iniziale

contatore.

binario Esercizi

Come

altro

1 esempio dopo bit

esempio dell incrementn

l esecuzione uguali

a

esima

g,

operazione

l,

t D D,,

della

ora

i-evinca nel

metodo

dopo

anmiortizzato

I CREt

tEVT porti

questo

,

b,, 1

che I

consideriamo

potenziale

In questo

caso.

l esecuzione

r bit.

della

operazione Il costo

la clifferenza

dal

i-esima

di potenziale

valore

del

18.3-1

contatore

Ir . il numero

dell

Supponiamo

D

operaziotle

che è al più

i valori tale

che alla

rispetto

la i-

una

di considerare

Supponiamo tutti

cti

operazione.

I1CREtIElvT. effettivo

nuovamente

il potenziale

INCRFW1EiXT è definito

della Q zero

deriva

del

binario.

operazione

contatore

il costo

1. Da

del

di un contatore

1 presenti

Cal- Iiamo

b

di applicazione

di i. ma b D

funzione

0 e

D D

b

sono

funzione

i

0. per gli

che l.

costi

etesii

4

potenziale

w 0. Si dimostri

chef D,,

inoltre

ed

PD .

49

che

tale

esiste

una

funzione

che

i costi della

anunortizzati

per

potenziale ammortizzati 4.

funzione

r 18.3-2

Risolvere

l8.3-3

Si

l Esercizio

nuovamente

1 8.1-3

del

il inetodo

con

potenziale.

è una

consideri

generica

stnittura

di

heap

costo

ammortizzatn

binarin

con

n

tale

elementi.

che

le

b,

t,. l is .Rt

zione O

I .

Si

dimostri

baia

e

Oli. che

la

il

funzione

penitenziale

dell nperazione è

ben

definita.

Ena.ict-Mie

iia

348

Capitolo

18.3-4

Qual

è il costo

caso

in cui

operazioni

18.3-5

totale

la pila

Supponiamo zero.

dell

la pila

contenga

che

Sia

i

S i dimostri Qb.

di Pt sai,

s elementi

e IIt. u

Pov

e al termine

della

ipop

sequen

pi

iniziale

del

contatore

di

I della

rappresentazione

che

il costo

de ll esecuzione

che

b sia

binario

sia

binaria

un

numero

del

valore iniziale del cREit It E v è O n i,

di n operazioni

diver n

costante.

Una

Si mostri 11.1.6 sia

come

sia

in modo

realizzare

possibile

tale

che

il costo

una

coda

utilizzando

ammortizzato

Ielle

due

operazioni

cfr.

pile Ewgv iL

EC

DEQL I. l

I

di un

dinamiche

di

che

classi

spazio

essere

di memoria

e tutti

tabella della

più

gli

In questo

tabelle.

Utilizzando

costo

delle

memorizzati

le tecniche

utile

Assumiamo

superi

mai

che

una

frazione

in presenza che dello

essere

ricopiati

numero

uno

tra

di

che

heap

un

de

li e1ementi

ct stante

un

array.

di carico

fr zinne

illSCrisce

non

Jcllo

nelIa

elemento

array

di posizioni.

la presenza

segnala

che

il

quando di inserzione

come

software,

ambiente

il nostro

che

il costo

piii di

e

una n uh

aT

tabella in. iei1se

di un

h sh

Tasse-IisEar

tabella

un

elemento

necessario

tabella,

nella

tabelle

nlCI110rieza1i

nella

ip uio

lSsc

ed

non

come

vuota

tabuli l

l1 itO

in questo

rende

il

come

la memoria

T come

il risultato

dimensione

t itsclla.

l 1.3.

paragrato

del l il

divisione

numero

il numero

degli

posizioni

0.

eT

0

.vi-e T

si

sola

una

con

a rcrble Q

spazio

assegn t

then

posizione

l

e7

4

if

si e T

nnw Tj

5

6

infierisci

7

libera

8

ùel

tutti lo

10

infierisci.v

Il

itwin T

in -

occupato

l181l -fCIWE

E

m

2

table T

rrctin Tj

elementi

gli

spazio

1Cll7IC T

9

a ischi

spazin

assegna

tlten

- si e Tj

nel

si

indica

delle

totale

nu nero

non T

T, rerble TJ

-

T. if

l

un

disponibile

organizzare

descritto

e la

Ill i

Per

n odo

contiene

num TJ

contiene è vuota

con

spazio

dello

la metà

mai

supera

un t

occupa

pen ata

tutti

tabella

della

l espansione

per

la tabella

indichiamo

si-e T

la tabella

T. ecE-lwscn

tabella

memorizzare

essere

può

l2 .

Capito o

e

non

la tabella.

contiene

e TwBI-E-

che per

nuova

copia

e, successivamente,

adottata

sprecato

procedura

che

3

lo spazio

di arruy.

i tabcllu

lot i1e

operazioni

prima

tabella

un

una

crea

il

contrazione. di una

in

elemento

è

piena, con

tabella lielementi

nuova. comunemente

di spazio

seguente

di memoria

Iniziai mente

ammoranche

o una

utilizzato

di estensione vecchia

di quella

se richiesto,

e liberare,

di assegnare un

inserire

si deve

L*operazione

totale.

Twacv-Dcces e

dalla

nella

euristica

tntale

la quantità Nella

di elementi

è 01.

espansione

piii nell.i

dinamica

che

elemento

di una

le

rappresenta l operazione

7.1 .

paragrafo

forniscano

posizione

elimina

il fattore

1 numern

una

una

Anolog mente.

utilizzare

Definiamo

dinamiche

T s .E-I szRv

elemento.

pOtCCIlllllO

sia

nel

consiste

nvn

di memoria

porzione

lo spazio

certii

z. segnato

e contrazione

spazio

un

di memoria

grande

una

un

di

assegnare

zona

dimostreremo

eliminazione

cn tante

un

dell espansione

assicurare

patibile

dei ono

tabella

ammortizzata ed

è maggiore

sia

tabelle

dove

quell operazione

11.1 .

le

L operazione

sineolaposizioee, singolo

di

permesse

tentativo

ogni

eccezione

a una

è in grado

memoria

quando

maggiore

tabella

strategia

Una

2

Dzt. E.

operazioni

un

come

software,

assumiamo

di elementi

lo spazio

in una

si elimini alla

il problema

dell analisi

operazione come

che

di

che

spostata

originaria

assegnare

di inserimento

di una

non

accadere

può

studiamo

paragrafo

tabella

il numero

accadere

successivamente essere

sia

qciale

Potrebbe

deve

neIla

essere

potrebbe

a priori

tabella.

la tabella

Analogamente,

mostreremo

dinamica

una

sapere

accorgersi

per

elementi

operazioni

effettivo

Inoltre.

tabella accade,

allora

piccola.

tizzato

origine

della

la tabella.

di posizioni

vecchia

della

è pnssibile in

Se questo

grande.

tabella,

non

memorizzati a una

sufficiente.

grande,

solo sono

ne della

Pertanto,

espandere

possibile

di applicazioni

dovranno

è più

In alcuni dà sempre invece,

di gestione

memoria.

un numero In molte

piena

paragrafo,

Il sistema

blòcchi

Tabelle

in cui

01. memoria.

18.4

tabella

In questo

errore.

possibili

o, equivalentemente,

le posizioni

tutte

usate

ambienti

l.

è diventato

in una

di un elemento

Esercizio

generale

organizzato

sia

tabella

alla state

sono

quando

di carico

fattore

suo 18.3-6

è piena

tabella

assegnato

lo spazio

che

Supponiamo

sono

più

tabella

della

Espansione

18.4.1

J.

dove

il caso

eliminazioni.

che

inserzioni

dinamica

considereremo

Successivamente,

inserzione.

tabella

una

consideriamo

tutto

di

Prima

n

elementi

si assuma

Non

di n operazioni

contenga

s

valore

b il numero

contatore. se n

esecuzione

inizialmente

349

ammortizzata

Analisi

18

l

si

eT

2 -silvie

si e Tj

cn di

tal le T

da

tctl l

posizioni in

Q

neo-tal le

totale

della

elementi presenti

tabella. al blocco

il puntatore

memorizzati ne11a

tabella.

350

Capitolo

Si noti INSERT

che

Possiamo

rispetto

trasferimento

degli

assegnare

blocchi

A questo

su di una

spazio

sufficiente si deve

corrente

è piena, somma

diviene

della che

in cui

è On

operazione

tuttavia,

dell operazione caso

sola

una

operazione

copia

si eseguono

Qual

una

di

una

il limite

superiore

che

il costo

è stretto

perché.

durante

del

linea

10 ,

nel

nella

caso

i il costo il costo

di una totale

inserimento

il suo

definiamo

una

funzione tanto

l Nel

è una

tabella

nella

nuova

una

sequenza

numf

T

questo

potenziale

dal

che

una

dopo

è piena

la tabelle

quando

funzione

La

potenziale.

Prima

01.

immediatamente

0

n

di

paragrafo

18A

si e T della

definizione

possibile

abbiamo

nel

utilizzato ammortizzato

costo

tabella

della

completamente

sarà

vale

che

la dimensione

quanto

un

con D

analizzare

per metodo

T scz-DEt.EvE

è pagata

espansione

2

C T

operazione

vale

che

ma

espansione,

modo

particolar

una

utilizzato

essere

può

è

i 6.

linea

in

TABLE-INSERT

la successiva

1, dato

Se la tabella

con

pessimo

di esecuzione

Se ch è c

c

nuova

potenziale

progettare

per

tutto,

di

T scc-

10.

caso

linea tabella

tempo

allora

alla

il metodo

operazioni

corrisponde

operazione .

In questo

elementare vecchia

abbiamo

che

i-esima

del

ed

di

elemento

ogni

m elementi

contenga

piena

spostamento

degli

operazioni

di espansione.

fase

Anche

18.4.2

operazione ,

pagare

sia

tabella

la

il suo

per

m/2

altre

necessarie

sono

la tabella

uno

di

credito

come

credito

come

addebitato

addebitato

la prima

inserzione

ogni

per

viene

per

assegnare

di n operazioni

che

prima

dollaro

un

possiede nella

necessario per

e. quindi,

inserzione del

viene

dollaro

completare

Per

tabella.

terzo

un

Infine.

inserito. della

elementi

i i/2

il costo

che

inserzione

dol lari

dollaro

altro

un

dollaro,

un

costa

tre

Addebitiamo

crediti.

contiene

non

elementare

dell elemento

del

5-9 .

elementare

della

che

1 evento

sequenza

espansione.

inserzione

cosi

supplementare

c, della

termini

T avE-L sERv

procedura

linee

è la prima

6 e 10.

di inserzione

supplementare

then

di inserzione

elementi

gli

n operazioni,

comporta

questo

tutti

deIla

e la tabella

è in/2,

T si -

linee in

elemento,

il costo

è il costo

nelle

operazione

espansione

o se questa

necessaria

a ogni

costo

di analizzare

vuota.

corrente

sia

la clausola

il problema

tabella

il

2,

Chiamiamo

seguono

inizialmente

nella

eseguire

dalla

che

sia

stessa

Test.e-IssERt

effettivo

linea

5 e 7.

linee

utilizzata

un singolo

domini

iniziale

tabella,

unitario

inserire

per

la procedura

procedura

un costo

6

tabella

operazioni

tabella

della

di esecuzione

linea

della

ci poniamo

punto

INSERT

il tempo

elementi

delle

esecuzione

necessario

di memoria

all esecuzione

dato

che

la memoria

e liberare

di

inserzione

in una

associando

al tempo

di

procedure

elementare

elementari

Assumiamo

lineare

che

il tempo

di inserzioni

elementare.

due

di inserzione

analizzare

numero

sia

distinguere

possiamo

la procedura

e

351

amntorti ata

Analisi

M

mri t T

si-e T /2

costi

ammortizzati

funzione

potenziale.

e quindi

T

Immediatamente

richiesto.

0 come

espansione

una

dopo

Immediatamente

di

prima

operazione

di n operazioni

è O n- . limite

Questo non

è molto

frequente

operazione di una

non

una

operazione

della

dover

origina

i-esima

eseguire

una

espansione

è quindi

solo

01,

operazione

come

espansione

se i si può

di n operazioni iI relativo

con

I è una

esatta

potenza

dimostrare

con

di T siE-Issai-,.

costo .

Infatti.

di 2. Il costo

il metodo

degli

dei

somma

la

l esecuzione

la i-esima Per

ammortizzato

aggregati.

di

se i

1

l

è una

di

potenza

con

Se

altrimenti.

la i-esima

totale

di i

operazioni

Tac .e-Issai

2

g21

il

j0

3

dato

che

Invece, il co to

vengono

operazioni

eseguite

forma il

quindi,

costo

2

e,

nuin

si

num,

si e,

2

e,,

e il

si e,

nwn

una

al

serie

n

più

operazioni Il

genmetrica.

ammortizzatn

metodo

il costo seguente

1

2 num,

di

iena

di costo

singola

costo

totale

unitario di

operazione

n è

e

il

operazioni

costo

delle

de

li

accantonansenti.

ammortizzato ngni

elemento

di

una

nella

riuscizr o operazione tahella

a Twist

si e,

leve

pa

are

3

una debba

inserzioni

es ere

è

e.

3n

intuizione 3.

elementari

L

C

la

dimensione

Iella

tahi .1

sia

ni.

Allora.

il

numcrn

idea il

del

2

llllll1,

2

nt n,

2

nuin,

si e

t im,

2

2 nw ,

si

rum, 2

2 n in,

intuitiva suo

num,

ateismo

il di

elementi

Sl . si.,c ,

/iltllt

Cj 4j

1

3.

eipansione,

, II

rimanenti

Torio-l sEaT

migliore

si

allora

esp msione.

diventa

dell vperazione

ammortizzato

uini

3.

ottenere

c-livsEn

attiva

operazione

se la i-esima

mem, il

una

si

3.

n 2n

la

si.,e

n

pc

è

la i-esima

0.

D,

,

iesi l

perché

dopo

la

risulta i

n

allora

espansione,

una

attiva

non

e il potenziale 0 e b

n m.

con

operazione

risulta

dell operazione

ammortizzato

si e

0. si,.e

nirm

che

T sce-IYSERT

operazione

con

operazione

abbiamo

Inizialmente

2, costo

Il costo

P.

la i-esima

dopo

tabella

della

operazione i

memorizzati

elementi

dimensione

il

indichiamo

T avE-l sERv,

i-esima

la

dopo

tabella

nella

operazione

i-esima

della

ammortizzato

il costo

analizzare

numero

Il costo

è

d ella

superiore

limite

effettivi.

costi

dei

somma

è un

Test.E-IxsERv

di n operazioni

dell

t beli t

p tctvzi Ic

p ghi

il

usato

dcll cip Indiane

della

l ihclla.

e, 1

non,

l

1.

2

352

Capitolo

totale

di 8 ir .

Al termine

metà

di questa

sequenza

i,

di

n. Le

dimensione

16

8,

nuova

e ne

abbiamo

p

8

Figura

183

16

L effetto

di

pp

una

difficoltà

sequen

a di

n opera ioni

Tasca-I sERv

sul

umero

mun

di

e1emenri

diventare

possa b

e

11

a

di

meno

inserito

I elentento

18.4.2

cl e

ha

origine to

Espansione

e contrazione

di

tabelle

l elemento

l operazione

contrarre

Tuttavia,

la tabella

elevata.

in modo

L operazione

ne di estensione

di una

corrente,

utilizzata

dalla di vista

vecchia

il fattore il costo Assumiamo

il

una

le dimensioni

quando e lametà.guestasemplicestr

una

dinamica

strategia t p

assicura

il

ni su peraz

ni siano

a bella operazioni

Te

inieri

simmetrica

dell operazio-

tabella

che

n sia

ll

diventa

nella

più nuova.

catione

che

un

inserire

le

dimezzano

in

descritta

strategia

nella

in una

elemento si

ma

tabella,

tabella

della

di carico

il fattore

come

metà

espansione.

di una

il costo

pagare

p o una

.

An

della

della

si eseguono

non

espansione

si deve

quando

meno

per

della

mnzoria DA

è limitato

inferiormente

da

una

enst l11lC.

superiormente

da

una

cnstante.

termini

di

inserzioni

e contrazione

iv un clementn

che

il f ntore

t beli i

O Sii ,ll.Il/i

un a potenz, di iinserziòne. serziòne. che per

di l.u ali.,i

iCgUClltC.

. Inoltre tar ,

della

uesto

in prcciclcnr,,

0. e resti.-

funzione unzi

.sia ,

o vuota.

Come

il

nonnegotivn

e restituito

liberato

del

metodo

.sia

0 implica

n rm Tj

che

abbiamo

utilizziamo

punto

f 2

tabella

non

Gl

che

ipotesi .

a questa.

potenziale

il tatto

che

funzione

i

che

dato

da se

soln

manifesta

sono

- di carin

di gestione

al si tensa che per

C iC

si

rum T

e f T

nuin T

si e T /

diventi

si

e

dellamensoria.

0.

determinare

se

n

se

uT

cosi

il

costo

di

una

definita

l /2,

T

18.5

1/2,

Ul

le pri,ne

lum,o

il

sostanzialmente

fi ere. s ca fnoal.siachediminciisca

la t unzione

consideriamo

potenziale

e dimezz

piena

SllppOlll01110

supponi,,mn

l espansione

si possa

inserzione

di

razioni

eliminazioni

è la strate iacheduplic

in una

di c irido

ed

che

prima

ope

TweLr -DEt.Fva

procedura

viene

tabella

alla

assegnato

memoria as Inn base

memoria .

è limitato in

della

le istruzioni

conclusione.

tante

I.

il valore

raggiunge

In

troppo

piccola La

della

elementi

infatti

tabella

della

1/2. uite

ese

essere

devono

è

tabella

della

carico

tabella

della

riportiamo

Non

di

degli

il numero

seguenti

proprietà

eli

p ice

per

dimensione

la

e non

quarto,

espansione

una

di carico

A

le due

diisp m ion

si deve

fattore

piccolo.

tabella,

di

duplicare

è utile

eccessivamente

della

tabella

tabella

diventi

nuova

al sistema

misurato

operazioni

tabella ila a fuorché 1 h

vecchia

preservare

operazione essere

possa

leperfe er

della

tabella

una

dalla

troppo

non

elementi

per

restituita

poter

sprecato

degli

della

eliminare

diventa

è l operazinne

di memoria

essere

può

di carico

tabella

elementi

semplice

di spazio

il numero

quando

di

costo

Unastrategianaturale

di una

gli

della

ortizzato

il fattore

la quantità

si vorrebbe

di carico amm che

che

porzione

tabella

ideale

elememari.

ledimensioni

ja

nuova

e si copiano

un

punto

tale

tabel

una

È. piuttosto

quando

di contrazione

si assegna

piccolo tàbella

T aiE-DELETE,

specificato.

orca,

duplicare

a

il fattore

contrazione

manifestare realizzare

una

è 8 ahi , e il costo

è 8 n-

operazioni

I espansiorre.

una Nel

un

dopo

se si permette

si ottiene 1n questa

1/2.

continua

si

inserzioni

abbastanza

di

minore

n

contrazione.

una

di

il costo

pagare

strategia

della

nella

è chiara

strategia

questa

pn

miglioramento

delle

origine

danno

ni contrazione

è 8n.

si effettuano

non

contrazione Un

d

principale

totale

il costo

Quindi.

operazione

eliminazioni

abbastanza

I

0

8n.

di una

ammortizzato La

totale

in

via.

e cos

espansione.

a una

contrarre

di fare

successivi e di o

espansione

di ogni

Il costo

inserimenti

I due

n/2.

ritorna

dimensione

la sua

alia

fino

tabella

la l effetto

hanno

operazione

una

indica

Daeve espandere

far

di eliminazione

operazioni

successive

due

che

cosi

la tabeIla

, r,

prima

di

l effetto

ha

inserzione

D

mentre

di inserzione,

operazione

una

La

eliminazione.

seconda

....

indica

ERt

I Ics

dove

La

i 12.

f

f

definita

è cosi

di operazioni

I.l,

I, I,D,D,

I, D,D,

inserzioni,num

sequenzadi

di questa

353

ammorriaara

Analisi

18

u,, . tu

ni

.,lli,.l

fllll/10llt..

4

è

tlll

l IlllltL.,lUpCI

lOI

P

Cit..l

Lt Slci

ClTCLllVO

ddlk

O Cl .l/l 1111.

354

Capirolo

32 se

1.

a

costo

il

allora

1/2

a,

anche

i-esima

della

ammortizzato

è

operaziane

4,

c 4

c,

che

vale

Se

355

ammortii-ara

Analisi

18

l I

i nwn,,

si .e,/2

num,

si .e,,/

si e,/2

nu

size /2

1

num

0.

C,

t-

i

i

l

2

I

2 nHIIZ

3

num

allora

1/2,

a

ma

1/2

a,

Se

l si e

nwn

nuin,-i

/2

si e

0 0

8

16

24

32

40

48

size,

1

j

numi-i

i/2

si-e,

3.

Figura di

184

L effetto

elementi

Bella

di

iuta

rabella,

sequen a

di n opera io i

il ntvnero

si. -e

di

paci ioni

Test

E-Issai

e TasLE-DeLzte

de fa

tabella.

e il poten iole

strl

nwnerr

3 2

f

num,

si e, nrnn,

lsi e,/2 do,

e ognuna

di

queste

se

a

1/2,

se

a

I/2,

elopo

I

esecu -io,re i-esima

opera ione.

La

linea

sr,.-, ,

tabella.

numero

di

Analogainente, elementi

di

prima

nella

ima

lontra-ione,

il poren-iale

ha

raggiunto

i ak re

un

tabella.

C

Prima

di procedere funzione

nurn T una

il potenziale

che

eliminazione della

num Tj

che

funzione

causa

se

il fattore che

di pagare

il fattore

Quando Q

che

è l abbianso

è in gradn

vogliamo

puntuale,

nnti

Si

di carico

espansione.

implica

l analisi

potenzialq,

il fattore

Quando

si

con

una

di carico

contrazione

di

è 1/4

si di una

tabella.

è

1/2,

e TJ

che

fi

4

il costo

ura

i 0.

che

di inserzione

si-e T

18A

C,

di una

l

introduciamo operazione, degli

con a

con

c della

il potenziale 1 e D 0.

di una

notazione

qualche

elementi

f

il costo

il sun tabella

dopo

sequenza

ausiliaria.

cnsto

di n operazioni Indichiamo

ammortizzato

dopo

la i-esims

rispetto operazione,

con alla

operazione

con

il costo

funzione

Se

si e,

e TwBLE-l - E

effettivo ,con

della nrwi

la dimensione

operazione.

size,/2

1/2

a

IInoltre.l

..- si.,e

la

e

.

è c /

.

.

abbiamo

che

mrni

num

si e,,/2

nwn

size /2

1

dato

, 14

si e,

,

1 e

n,tm

a11ora

contrazione,

una

attiva che

si il

elimina

un

to sis

elemen

il

effettivo

c osto

elementi.

.- omur . p a .n

diventa

dell opcnlzione

ammoitizzatn

co,.tu

.

i-esim il isumero

della

c D,

c,

tabel

4,

0. si..ai

nutn,

si e,/2

n tn 1

l

num,

/2-

si e,

Ill l l,

lllll71

2

llUIPlj

l

l2UPl

l. ,ea

7utoè Cfr.

non

ubbianso

una

e p miicine

delia

tabe lu

dato

cile

I esp nsiollc

si e

nu n,,

nwn,

...

operazinne

che

diventa

operazione

operaziane

i-esima ,,, n,

/11ll lt

Inizialmente

l effetto

i

e,/2

1

lu i-esima

T sLz-

o p razione

2.

di

il comportamento

T ote-DcLvz E c

si

e questo

potenzia1e.

di analizzare

3.

ha se l operazinne vedere si deve j abbiamo 1 coontrazione, si manifesta a.

non

in cui

della

una

llora

cau a

o dell operazione

Prima

i

i

i

4 T

che

irum TJ,

illustra

caso

B

e sia s

operazione

propri tà

il potenziale implica

la i-esima

1/2.

C

G

C

ammortizzato

il costo

e,

S

. Nel

contrazione.

una

l

di pagare La

alcune

allora

e questo

operazione

abbiamo

è in grado della

in evidenza

carico

nu n TJ

il costo

il potenziale

mettere

1

lllll12

è sl piit

Tosi -IisERv

operazione in cui

il caso

considerare

ltl lll

iva di i aattivare

di una

ammortizzato

.. Orara ppossiamo

I

pi ri

r3

2

il costo

DELETE

della

i

3

3.

Quindi. nuova

e,

3.-si-e,

2 della

3

3 .-si -e

si e,

3 -si

è misurata

quantità

-size,

cui

avviene

.

ne Esercizio

IR.4-3 .

1/2il isi

è I luci It 1

eostoainmurtir.Collle

eiefcilii

35á

In conclu onclusione, da

una

dato

costante,

che

il tempo

il costo

ammortizzat

effettivo

pe per

una

d

q al un qu

ll e operazioni

ue se

è limitato

u ue

oP

su

357

anunorrinata

Anahsi

Definiamo h Il

o

revq aq

.,

,a

ao

..

a-i

i

ao

COS1,

C

Esercizi k-l

.

reva a

18.4-1

Si mostri di

in modo

una

informale

operazione

se a

che

TABI.E-IxSERT

1/2,

aa,,2 i0

mo

è 0.

Supponiamo

di voler

realizzare

o è opportuno o

q e un

n operazione venga

valore

di

inserzione

in

siaia on

es

una

a in

t b e 11

di i l . S i descriva d

z m

il

if

ato p t

o

un

a i

ite

OI,

tutte

per

di i

le inserzioni

Si mostri ELETE

che e

funzione

se la i-esima ll2,

u,

potenziale i

o

eraziane

allora

ammortizzato

è liimitato

dell o

superiormente

da

viene

quando

4.

l

Su pponiamo onia

che,

i e

attore

a mo

tiplicando .

si dimostri

che

ra egia

contrarre

diventa

una iù

tabella

iccolo

la dimensione

della

a funzione

potenziale

on

nutnfTJ

2

di

i carico

a DT

invece

costante. os ante.

che

Si assuma

b.

il

d i 114, si effettua

l contrazione

d

Q

T acE-Dace 1lllB

E che

la

un

Il Ca p itololo 3 i FFT

on

i

un algoritmo in inglese

in

nu i

u

it queg u

ung

molto

Fast

Fourier

n-

ezza

n

i elementi l

im

ortante

Trvn fnrm

b trovesciati 2, i cui

un

per inùi i

un

inserire

qualche hanno

Il

intero

rimo

..

g

oQ

n.

rappresentare

, unn generico

in dice

a con

che

A

.

i

un

una

iec . uenza

di i k b

k

l

di n elemenik-Sia

dèll rrzy sono

viene

ordinato

è ancora

tempo

totale

realizzare

possibile di

binaria

parola

On

nella se

di inserzione

il tempo

ma

logaritmico,

in tempo

eseguita

à. lineare

nell array

f l

array

Ogni

o

vuoto.

totale

degli

è pieno

il nunsero

Pertanto.

e sia

1 .

n

le

realizzare

voler

di

iupponizino

precisamente.

in iense

v binarie

-.a

caso,

Possiamo

dell aivay.

dimensione

un

consideriamn

di

numero

certo

OfCtlllQll.

Più

bit-r

ri rappresentazioni ree

in un

rovesciati

dell operazione

le prestazioni

rispettiv m ente. Po.,siamo

array

elemento

nuovo

c o FFT .

bit

su di un

di arnica

su di un

binaria

migliorare

rovesciati

á1lTQ

d discute

ourier

bit

dei

Btt-

procedura rovesciati

di una

o a destra

a sinistra In questo

unitario.

in tempo

volta

permutazione

bi aria

Ricerca

ricerca

per dei

alla

di

bit

dei

permutazione

spostamento

uno

della

On.

totale

ten po

eseguire

l

di eseguire

permetta

in un

descriva

Si

a bit .

bit che

come

SHIFT-RIGHT .

SHIFT-LEFT, realizzazione

una

di

unità

operazioni

tramite

binari

in una

e che,

di / bit,

parole

o a destra

a sinistra

sequenza

la

10,...

valori

manipolare

di

grado

1. successive

allora

a 0,

restituiscono

di memorizzare

in grado

che,

rei, rev a

risultato

come

è inizializzato

rovesciati

ammortizzata.

COStQlltC.

La

birrario

e OR

bit

solo

procedura

0. 8. 4.12,2.

arbitraria

di poter

procedura

18.2

Contntore

in

n elementi

Supponiamo

utilizza

P ro bl emi 18.1

sia

a bit

con

per

superiormente

sia

REvERsEn-l cRc Ewv

er 213

o era operazione

0010,1010,...

di lunghezza

bit

array

o di i una

è timit. to

precedente

AND

della

c.

ammortizzato

1100.

O nk .

BtT-REvERsEo-IwcRzwEvt

restituisce

BIT-Revers -Ir caaievr

sistema

spostamenti

si-e T

il costo

bit

dei

e il contatore

il sistema

1000.0l00.

0000,

erazio

di

tabella

e una

che

in tempo sull analisi

basato

algoritmo

contatore.

a del

a un valore

esempio.

un

la

realizzi

a1goritmo

2

di lunghezza

array

rovesciati-

bit

dei

un

utilizzare

si puo

un

. si progetti

Ol

tempo

Tisi.-

una

che

è 1100,

e il rovescio

su

rovesciati

bit

dell operazione

tempo, 18.v-c

richiede

applicata

per

chiamate

inunatabelladinamicaèl nperazione

il costo

18.5 .,

un

Si introduce

rev che

le prestazioni contatore

migliorare

Per

Se 18.4-3

dei

permutazione

una

3 è 0011

binaria

è la rappresentazione

12.

funzione

una

Data

a.

come

numero

con

la rappresentazione

che

dato

12,

rev, 3

allora

4,

I

ovvero

del

di

di 4 bit

cifre

con

ic

brevemente

tabella h h d inamica a indirizzamc 1 t a I e c h e i v al ore atteso . del cost o o .. uale m motivo il valore atteso del costo affettiamo quale e i,.o

. Perer

h

dinamica

piena

minore r

in

modo

01.

hash

considerare

strettamente

inserzione

eseguita

tabella

una

di 4 bit

binarie

cifre 18.4-2

16

se n

esempio,

Per

n ,.

f to

del

negli

presenti

che

un

binaria

la rappresentazione

a seconda elementi

su

e I srn

SvAacv

procedure

n,,.....

0.

l o n

n

risulta

arr y

I 11.

Il.

CQ 6,2 . lll

elementi

Nl..

llllt,.lllClli

di

array

Ll Ill

distinti.

I

lll ill l,.ll

I,l .

i.

ll

llllllll 1,

11 11

I.

NltlC

JICLlll

l

Il

I.,l/10113.

1

II

llCOI

ll

C

1l ,l

gli

358

Capitolo

a.

18

Si descriva tempo

b,

come

Si descriva

caso

si possa

di esecuzione

Si discuta

I operazione

nel

come

il tempo c.

realizzare

di esecuzione

inserire

la realizzazione

in questa

struttura

di dati.

Si analizzi

ee.

il

caso

dell

elemento che

pessimo

operazione

in questa nel

casa

struttura

di dati.

nodo

in un

Si

Alberi consideri

avsrnorti

un

campo.

si-e r ,

x come

radice.

ati

normale che Sia

x è a-bilanciato

con

albero

descrive a una

binario

Note

DEI.ere.

il numero costante

dove

di chiavi

che

varia

ogni

nodo

memorizzate

x contenga

nel

nell intervallo

1/2

un

sottoalbero a

che

1. Diciamo

ulteriore ha

che

potenziale

u

E. Tarjan.

nodci

ex

e si

e righl rj

Un

a

albero

viene

strategia

di

un

ne

8 si

ex

caso Per

una

i rimanenti

che

di nel

se.

allora

caso

aver

di questo

Dato

come

La

seguente

obiettiamo

albero

un nodo.v

il sottoalbero

di

quello

in un qualsiasi

di radice deve

proposto

memoria

x in modo

avere

albero tale

un tempo

che

il

di esecuzio-

ausiliaria.

a -bilanciato

ii nodi

con

albero

le operazioni

binario

di ricerca

l operazione,

in modo

che

assumiamo

probh.ma

che

eseguito

fare

che

lisre-e con

alcuni

il sottoalbero,

c è una un

1/2-bilanciato

potenzi le. il

nodo si

il potenziale

c g xé T 6 x

Perché

un

e lefr .v

e definianso T

metodn

questo Sia.r

,si

A .r

di

ha

richiede

tempo

O lgn

sia

strettamente

nel

la cui

costante

a

SlQno

l unica

differenza

n nodi nodi

la

DFLETE

dell albero

radice

realizzate

non

è il più

sono

alto

esattamente

consiste piit

nodo

non

nel

fatto

c-bilanciati. abi1anciato.

1/2-bilanciato.

Analizziamo

che

O si ,e xj

in un

Supponiamo

di un

si deve

potenziale.

c.

ricerca

è n-bilanciato.

Varghese,

possibile.

ricostruire L algoritmo

utilizzare

quesiti 1/2.

dopo

diventi

dove

bilanciato

come

dell albero G.

al peso.

112-bilanciato.

e può

che

nndo da

pessimo.

maggiore come

è il più

si mostri

diventi

ogni

rispetta

1/2-bilanciato

Si mostri

se

suggerita

bilanciato

di ricerca,

sottoalbero

b.

a-bi1aneiato

ammortizzata.

albero

Un albero binario

ex.

detto

analisi

mantenere a.

si

tempo

di

di un

ricostruzione

albero

dell

binario

albero

di ricerca

con

l au ilio

della

tecnica

del

T. Definiamo

e right x . di T

Ar, 2

costante

sufficieeemente

eenerico h

albero un

Quale ammortizzato

potenziale

E. Tarjan.

potenzi le

valore

di

ricer a

uguale

a 0

cleve,tssuniere per

che

grande

binari o

la

ricostruzione

ha

l

clipende un

a. ll ill

pcitenziulc

costante ali

d

c un

altro

che

dipende non

lli. itlYO

di a-bil inciato

e

C ùll

in

ulh ri

modo ii i

t ile O

.

S. Huddlestone a D.

D.

li

Il termine

ei

rassegna numerose

e discute

a numerosi

accantonamenti

K. Mehlhorn. Sleator.

una

n. Innoltre. analisi

app autori,

ammortizzata*

uisce

tra

Aho,

n

i.

o u

g i a tri a

si deve

e r i a

..

e

Hopcroft

a

o

i di cazzo icazio

meto

. Tarjanattri j

da

utilizzato

è stato

ammortizzata

l analisi resenta

189

ammortizzata, zata,

l analisi

il nodo un

del

si

per

er

aggregati

d

se

si-e lefr x

.

al capitolo

n

ricerca

di

ammortizzato

costo

Si analizri

bilanciato

peso

p erazionedieliminazionedi O lpilpi .

o o oloo nodo ha

con n n nodi

ammortizzato.

li 18.3

u-bilanciato b1

albero

di un

di inserzione

che e l operazione

imostric Si dimostri un

un nuovo

nel

sia

Se RcH

pessimo.

359

intorti -ara

Analisi

ca

del e

Introduzione

Strutture

di dati

evolute In questa

verranno

parte

molto

tecniche

due

in

presentati

che

ammortizzata

l9

Il Capitolo

di ricerca

magnetici

sono non

B-albero

un

ma

dinamici.

I Capitoli

certo

Un

he p.

caso

Nel

superiori

binomiali

heap

Gli

uso

degli

ùi

richiedono

Fibonacci

llculli

dei

hezp

di tempn

limiti

piit

Veloci.

heap

viene

di Fibt n icci,

efficienti

sono

tutte

Per

di

su insiemi operazioni

le

al disco

con

aumenta sui

definite

operazioni

B-alberi

aggregabili

su heap

operazioni

o fonde

unisce,

Uwax su

disponibili

in tempo

quali

assieme,

due

di

per

strutture

queste

ecc

o

binari uita

introdotti binomiu1i.

dati,

in tempo nel

ill sCilio

21.

valutare L

nel

in tempo

O lgii ,

7.

Capitolo nel

On

Capitolo

Per

di ingresso

nel

caio

almeno

sia

lsintuticu.

il

orilllli

he tp

degli Mtiiwuw

mimortizzato

per

che de

c o

da un punto

lisca .

opcr eioni tempo.

dell operazione

caso

rende

gli

li he.ip

he tp binari

pessimo.

l etficienza

un

Kiel

n è il numero

dove

heap

in

descritte

le operazioni

pessimo,

Uno ,

due

introdotti

ammortizzati. esattamente

nei

l operazione

caso

nel

O lgn

tutte

20,

Capitolo

nel

introdotti

di eseguire

agli

Uwov,

l nperazione

operazioni

in ingresso

heap

il fatto

È proprio

U ro .

L operazione

eseguite

essere dello

di elementi

totale

dell efficienza

di accessi le

di alcune

e Uxioi .

binoiniali,

possono

precedenza

la misura

e DEeRe ss-Kcv.

Deh

heap

degli

altre

di

numero

le operazioni

esempio.

piii

Exvewcr-Mw

Mtwwuw,

eseguiti.

tutte

i dischi

Poiché

dell albero.

la realizzazione

discutono

20 e 21

stati

alberi

che

magnetici.

le operazioni

eseguire

il numero

Pertanto

B-albero.

l altez7a

bassa

mantenere

devono

casuale,

sono

disco

seguente.

proprieù

deI

dell altezza

l aumentare

I sERt.

la

al

accessi

quanti

vale

dischi

per

necessario

tempo

dell analisi

altro

sono

non

Questi su

a accesso

memorie

dal

solamente da

anche

delle

lenti

più

è data

B-alberi

sui

definite

progettati

molto

B-alberi.

dei

me norizzati

essere

per

risultati

molti

tecniche

I S.

Capitolo

di dati

la struttura

introduce

bilanciati

nel

introdotto

abbiamo

parte

delle

sull uso

basati

sono

seguenti

capitoli

dei

di

permettono si utilizzeranno

esempio,

Per

III.

Parte

nella

utilizzate

di quelle

sofisticate

più

in questa

Tuttavia,

che

di dati

strutture

quelle

dinamici.

su insiemi

operazioni

ed eseguire

definire

nuovamente

considerate

pl ohlcnli

che

iu

di vist

e Uve

su

effettivo.

Vafi

sono

teorico

t .iremo

di Fibunacei

del liliti

di

li he p Ol

lit1

di . Le

l ol l.

Parre

V

Infine

il Capitolo

universo ogni

con

22

definisce

un singolo

elemento

Fwo-Sm

rappresentiamo

ogni

stima

del

n

è una

numero

L analisi

una

funzione

di

dati

strutture

le numerose

sequenza

Nel

più

semplice

limite

di dati

introdotte

in questa

strutture

richiede

di

22

si

a in,

che

O nr

a m,

l1 ,

se n è una

è al massimo

complicata vale

Se

operazioni

che n

B-Alberi

mentre

elemento.

tempo

è tanto

dimostra

insiemi

lentamente

allora

tempo

due

otteniamo

un

tanto

un

Inizialmeme

determinato allora

conosciuto, limite

tempo

un

4. l

quanto interessante

e

di esecuzione. non

parte

di dati

un

Si consideri

dinamici. unisce

radicato,

lentamente,

Capitolo del

contiene

operazioni

questo

semplice.

di

di m

disgiunti.

insiemi

U toi

albero

molto

dimostra

è

proposte

che

nell universo

presenti

di

L operazione

semplice

cresce

insiemi

per

numero

l insieme un

che

che

di dati

certo

insieme.

come

di atomi

sostanzialmente Le

insieme

ammortizzata

struttura

strutture in un

idenrifica

efficienti

particolarmente atm,

alcune

ragpuppati

l interrogazione

dove

introduce

n elementi

sono

evolute

le sole

strutture

ricordiamo

-evolute

di dati

. Tn

con struttura

MA

di dati

I4IUM,

introdotta

INSERT,

DELETE,

operazioni,

Queste tempo

da van

nel

SEARCH,

caso

di esecuzione

Emde

Boas

EXTRA r-Mi ,

in cui

O lg lgn

delle

caso

fornisce

le operazioni

EXTRACT-MAX.

l universo nel

che

194

chiavi

Mtw it..it.

PREDECESSOR

è l insinne

2 S LCCESSOR.

l. 2, ..

n

gli

sono

particolarmente

La

dinamici.

la caratteristica singolo di

albero

arco

cano

di costo

il costo

collegano Una

semplice

zato

O lgn ad

porta

degli

una

di

minimo

archi

radice

tutte

avere

un

del

in un

a un

da

cammino

albero degli

alberi elencate

di tempo

di

con

Gli

radice

operazioni dalla

radice,

eliminano fino

nel

caso

un una

costi

degli a un

nodo

fornisce

arco

sono

in

degli

della

G1i

alberi

splay,

su alberi come

una sono

un

caso

sviluppati forma

eseguite

da

di albero in tempo

Sleatnr binario

B-alberi

avere

possono

limite

di tempo

realizzazione

più

e

178 dove

O lgn . alberi

puo

essere

detto

Abbiamo

disco.

alberi

beri con

B-albero

ogni

infatti

RB

di ramificazione un

realizzare

gran sono

I B-alberi

la naturale

i B-alberi

Inoltre,

elevato.

piuttosto

Gli

e

discussi

da

alberi

operazioni

api y

possnno

La

ricerca.

figura

strutturh

di dati

persistenti

permettono

di

fare

iotisticata chiave

della

confronto

con

cercai

le n s nel

formalmente

definiti

vengono

nodo.

nel

memorizzate

chiavi

Tarjzn

l altezze

che

si dimostra

19.1

paragrafo

. N

l

araerafo19.2

185 . di ricerc

essere

vi ti

dinamici.

interro

arpioni,

e qu ilelte

i olta

anche

D discute

un

semplice

esempio

di

in iCI 1t.

J CI MSlClltC

19.1

ammortiz-

rnot Q Le

per

radice.

òal

le tipiche

ie

O lpi . di

binari

alberi

degli

generalizzazione

titilizzati

essere

possono

in tempo

dinamici

su ihsiensi

di operazioni

numero

anche

O lpi ,

altezza

ha

che

caratterirtiche

delle

presentano n nodi

b

Tarjan

degli

unith agli

nod .

in una

pessimo.

di ricerca

ammortizzato semplice

particolarmente

i 8-al

dei

i nodi

moditi-

determinato

qualunque

rado

nodo.

archi.

simili

li rendono

1 B-alberi

costituiscono

che

è che

di un

archi.

un determinato

che

un

Ogni

dei

hanno

188 ,

dinamici

radice

in precedenza

O lgn

disgiunte.

raggiunge

trasformano dinamici

da Tarjan

alberi

della

padre,

va

radici

reale.

da Ia

che

diverso,

le operazioni limite

che

modihcati

realizzazione per

a valore

ricerca

e discussi

177

di alberi

in un cammino essere

possono

e Tarjan

foresta

da un costo

a interrogazioni

alberi

Questi

una

RB

pessimo.

da Sleator

è caratterizzato

rispondere

dell

introdotti di considerare

alberi

, hanno

caratteristiche alberi

Gli

e gli

i B-alberi

tra

differenza

principale

magnetici.

dischi

su

ultimi.

a questi

rispetto

ma.

di Input/Output

comuni

caraneristiche

hanno 14 ,

Capitolo

nel

operazioni

nelle

o altri

magnetici

su dischi

operazioni

I B-alberi

diretto.

introdotti

RB

alberi efficienti

per

progettati

a accesso

secondaria

rosso-neri

alberi

di ricerca

bilanciati

di memoria

dispositivi La

alberi

sono

I B-alberi

le seguenti

T

Q

H

X

dinamico. lV

... lcc ggnwi

nt .

/rii

liiirri

-

sritrri

quc

lii

.

lr

ll , .. if, llll

Èllllllll lll

R

P

Ill

llll l

V

S

ri li .

r,,

I .ll,i

W

l,,Ile, .

Z

Y

I,.

di un

Capitolo

364

19

superficie

magnetica

disco

del

fare è braccio

di

sulla

posizionata

di dati

magnetico

l informazione

letta.

due testina

di

componenti

del

stortura

di

nello

motivo in

studio

le strutture

un

modo

diverso ad

principale

dei

di dati

disco

principali

B-alberi,

dobbiamo

di

rispondere

essere

per

strutture

accesso

di

dati

alla

memorizzate

progettate

domanda

essere

per

per

magnetici

sono

memorizzate

su

quale

Le

tecnologie

in una

dal

e anche

memoria

un certo di

numero

bit.

memorie una

La

figura

del

porzione

dettatraceia.

L

in un numero

in

fisso

byte.

aItri

La

termini,

necessario pagina il

per

di

necessario

che

accesso leggere

magnetiche

Un

della

e le

sotto

passi è piuttosto

è poco

disco.

La

da

lu testina

una

cnstosa

pagina

sono

e scrittura di lettura

pa

in

rna

il tempo

dopo

viene

necessario

è in

rado

al centro

letta

N.d.T.

hanno

Nel

S,,

uitt

un

tempo

la p troia.violenta

di

icLI. SNH

verr i

l11 lll

tllili// 1t I

lllll UIE

jler

il1dic Irc

Cfi. I

llil

Cllipl sitii i

indicato

a

lahnr ll iri

la

che

memoria

su cui

B-alberi

dei

le disco

.a dimensio-

pertanto

la dimensione

assolutamente

vincola

non

nel

scrivono

di pagine,

costante

elevata

copiano

B-alberi

richiedono

i B-alberi

per

un numero

solo

istante,

è cosi

elaborata sui

definiti successivamente

principale, algoritmi

Gli

modificate.

in ogni principale

descrivere Se

l oggetto

da

x risiede

del

portare

l oggetto

assume

che

non

richiede

viene

Disv.-W sc i

divisa

deI1 oggetto

una

Il tempo

le

de

operazioni

è già

avemaria

presente

Sia

seguente.

modo

nel

disco

nella

allora

principale,

x un

si

a un

puntatore

ai

accedere

possiamo

Di solito

mentre

il tempo

La

tecnologia ai dati

111ClllOI1 t

elcllr mico

sul in

disco,

risiede

se I oggetto accesso

alcun

viene x. Pertanto,

allora Per

memoria.

come

salvare

per

per

una

operazioite che

nperare

su un

i campi

di x

Dtsv Rzwo x .

l operazione nulla sono

oggetto

.v

3

Dis -RE.ago x operazioni

5

delle

è relativ -

CI1C

lli I

un

2

puntatore

a un

state risulta

ognuno

qualche

6

Mii

tlCVVI1

ci illpli i -

J

Disv,-Wes altre

che

leg ono

operazioni

e/o

modit cano e

o omessa

Fx che

accedono

ma

non non

i

modificano

moditicano

campi campi

di.v

si deve

dell oggetto

procedura

allora

modifiche

le

tipica

modalità

la

chiama

principale,

si con porta

al disco

utilizzata la

memuriQ

nella

si

questo

ai can pi

accedere

di poter

prima fare

determin u

di accesso.

accedere

di

mnmoria

viene

che

algoritmi

Gli

tempo

disco.

e scritta

intere.

che

è piccolo. per

6 sufficiente.

nella

nel

di dati

la quantità

B-alberi,

del

approssimazione

buona

memorizzata

per esempio.

viene

millisecondi ,

I accesso

sull

comunemente

pa ine

e per aspettare viene dettn tempo 20

state

sono

memoria

Possiamo

da

dati

posizione.

contenere,

da

disco

una

come

osservazione,

questa

operare.

ggetto.

è ricoperta

porta

data

cle

formate

esempio

per

disco

che

può

con

principale

contenga,

della

deve

memoria

o scrivere

in una

di informazione

disco

di lettura

il raggio

traccia

una

unitaria

del

di letturalscrittura

Ia testina.

singola

della

ne

delle

dei non

dal

visto

al disco desiderata,

e la traccia

Nonostante

disco.

di

pagine

di accesso

il tempo

corrente

la traccia

delle

numero

ciel che

Si noti

principale.

di leggere

lungo

sotto

1 milione

tecnologia

7

memoria.

di CPV.

il tempo

cioè

termini

del

rotazione

essere

può

tra

distanza

alla

all informazione

applicazioni

selezionate che

e scritte

in disco.

nel

o scritte

dalla

legato

accedere

per

tipiche

principale

essere

lette

di pagine

le pazine di

equipaggiato

memoria

superficie

molto

Cùllsistè

la capacità

Il braccio

sono

almeno

per della

è sempre

della

è in grado

dimensione

elevato

e scrivere

sistema

di posizioni

lett tre

dati

generalmente

su una

stessa

di memoria generalment2

memorizzati

la capacith

passa

la quan irè

capacità

contenere

può bit

qualunque

di un

memorizzata

la testinn

posizionare

per

memorie

numero

le scritture

di informazione

tempo

in un certo

definisce

di

è in movimento.

di superticie

dipagine

pagina

quali

letturalscrittura

il disco

informazione

dei

magnetici

struttura di

certa

di un sistema

parità

di grandezza

testina

la testina

Quella

e dischi.

ordini

mentre

a

su dischi

la tipica La

disco

di posizionare

2048

mostra

magnetico.

superficie

nastri

una

principale

costosa

basata

di alcuni

19.2

materiale

disco.

come

supera

sistema

ciascuno

è più

secondaria

secondaria

a un

o memoria

di memoria,

magnetiche,

memoria

fornire

per

primaria

di chip

le

separatamente

considereremo

di elaborazione, misurato

viene lette

dipende

di latenza

tempo

memoria

la

pagine

tecnologia

Questa

tutta

esaminare

per

di esecuzione

centrale

disco

costante

necessario

Nelle

secondarie

al

devono

che

il numero

memorie

disponibili

La memoria

all elaboratore

e

dell unith

accessi

valore

è un

non

valutate

che

diverse.

di

informazione

seguente

su dischi

casuale

dati

memorizzata

di informazione

pagina

capitolo

in questo

tempo

al disco,

calcolo

di

numero

totale Strutture

grosse

magnerico.

progettate

dalle

del

una

necessario

tempo

motivo,

questo

è

e, pertanto,

disco

Il procedere

Per

di accessi

il tempo La

al

si

velocemente.

e leggere

accedere

per

la testina magnetico

disco

disco ,

del

rotatorio

il movimento

un

di

scrittura

che

dopo

Tuttavia,

i dischi. la

o

lettura

e scritte

è superiore

letturalscrittura

il numero traccia

lette

essere

necessario

disco

la

si esclude

se

possono

il tempo

Spesso, in un

19.2

come

meccaniche, corretta,

traccia

elettronica

completamente

letturalscrittura

quantità

Figura

componenti

alcune

muovere

disco

di x

Si

Dtstc-Rz o v . L fatte

operazione ai

campi

3á6

Capitolo

3á7

B-A/beri

19

root Tj

radicato

albero

è un

B-albero

Un

le proprietà

soddisfa

che

dell albero

è la radice

roor Q

I nodo.

seguenti. l

000

ClllOVl

nodi. a.

I 001

000

chiavi

001

iwdi, chiaii

c.

leaf

un valore

x,

Figura

19.3

B-albero

Un

di

alte

a 2 che

coi tiene

di

un

miliardo

il campo

nx,

pii

di chiai

i. Ogni

riodo

inten o

Ne/largura,

all,inten,o

di

hodo,

ogni

è mostrato

cioè

il nu,nero

di

chiavi

che

totalmente

non

un

i numero Per può

nodo

dei

un

tra grado

il numero albero

di con

comune

di

fare

in modo

B-albero

di

solito

che

ignoreranno

presenteremo

necessari

tanto

memorizzato dalla

tenuto

trovare

una

riduce

a trovare

di ramificazione

una di

relativa

qualsiasi.

e una

altezza

di disco

pagina

chiave

e della

l altezza

La

tigura a 2

Tutte

5.

Il numero

questo quindi.

chiamato a.

de

pagina

dell albero. 19.3

che un

mostra B-albero

questo

b.

B-

nella

memoriaqrincipale,

al più

sono

necessari

due

soli

accessi

al disco

Definizione

dei

il grado

e olil

mantenere alberi 1b

stesso

le cose RB RB,

nodo

che

della a quella

puntatore

con

Ogni

nodo.

nodo

interno.

non

è vuoto,

Ogni

nodo

ni timo

del

eccezione

la radice

2t t g

della

2

un nodo

che

alnseno

contenere

deve

una

1 chiavi.

almeno

avne

deve

radice, almeno

al massimo

i. Diciamo

per

figli.

in cui

quelli

noti

sono

B-alberi

Questi

alquanto

sono

B-alberi

semplici

inferiormente

sia di

termini

in

albero.

delI

è litnitato

nodo

espressi

radice.

della

contenere

deve

contenere

può

che

vale

allora

t

intero

un

2

B-albero

eccezione

la sola

con

in un essere

possono

la sola

c, x ,

l nltezza

con

coincide

che

memorizzato

limiti

sottoalbero

in ciascun

di radice

k,

,x

profondità, essere

può

Questi

al massimo

con

r

2

ogni

di alberi

il nome

Se

nodo

interno

nodo

un

Quindi

2-3-4.

chiavi.

Ogni l albero

chiave.

ha

interno

chiavi.

3 oppure

2 oppure

4

di r è di solito

il valore

In pratica,

avere

può 2t-1

esattamente

se contiene

è pietro

t-1 r t gli.

elevato.

più

8-alberi

dei

B-alberi Per

Per

che

di chiavi

Le

figli.

ai suoi

x, indefiniti.

è in

chiave

qualsiasi

stessa

alla

superiormente.

che

del disco.

pagina

key

...

..., sempre

sottoalbero

nel

c,

c, r , sono

memorizzate

chiavi

delle

memorizzata

key, xj sono

le foglie

4.

di ramiricazione

sia

uguale

in modo Per

il grado

della

eseguite

uti1izzate

della

disco,

sensibilmente

chiave

1001

un

state

k.

key, x

foglie

c, delle

intervalli

gli chiave

qualunque

L altezza

19.1

quindi

c, x ,

1 puntatori, i campi

è

I più sempre

njx

defmiscono

x

se k è una

B-albero

intormazioni.

dimensione

su

dimensione

una

quanto

dalla

sono

siano di

un

per

E che

possibile

è limitato

elevato

algoritmo

operazioni

queste

è grande

dimensioni e dipende

che

di un e Dtsx-WRn

quantità

di un B-albero

di ramificazione

grado

Disv-REAo

maggiore

e 2000,

50

di esecuzione

la

di grosse

accessi

un

operazioni

di un nodo

B-albero

Un

i B-alberi

per

il tempo

e scrivere

di un

figli

variare

disco.

di

È pratica leggere

per

sistemi,

numero

algoritmo.

motivo,

dei

parte

dal

intensivo

algoritmi

gli

k,

maggior

determinato

in uso

più

k

I campi

figli,

hanno

non

faglie

aspetto.

questo

Nella

da l

sono

a Falsi

è uguale

foglia,

x è una

interno.

contiene

interno.v

nodo

Un

rrodo.

del

3. le pagine

a TRLJE SC il nodo

è uguale

che

nodo

e ogiri

2. 2.

X

boleano

x è un

se il nodo

48

decrescente.

non

in ordine

memorizzate ...

ÈPi, X

IC8X, X

1002001000

sono

chiavi

le n x

b. I 002

x

nodo

nel

memorizzate

chiavi

delle

il numero

nv,

o attributi

campi

seguenti

dai

x è catterizzato

nodo

Ogni

l. 1001

semplici, - informzziotse -l

assumiamo,

come

satellite chiave.

In del

pagina

r atica, disco

assieme che

contiene

abbiamo

associata a ogni

fatto a una chiave

per

gl i alberi

chiave

sia

si

l intormazione

potrebbe satellite

binari

di ricerca

memorizzata memorizzare della

chiave.

maggior

la

nel

te n chiavi

caio

nqua

c

qual

il numero di

è l altezzb

di

accessi

al

è

disco

contenen-

tn B-albero

teorem i.

il seguente

un

ii

Se ero.

B-alberi,

Tutte 19.1

Teorema

a

Vale

ora

Vediamo

B-albero.

pessimo.

sui

definite

operazioni del

all altezza

proporzionale

nello

delle

parte

l.

erealizz,zione

allora

pe r

ogni

un

B-.ilbern

T di altezza

B-albero

h e di

abrado

t

minimo

2 vale

nl h log, .

grado

di

ramiticazione

dei

noùi

iisterni. Se

Dintoslra -ione. c,w,

i,l

i,ia

t,110

Cui

zii..l

l,

I.r,li,.c

proto,lclilè

ha

altezza

ulu.iol,

co,llclt,

fl Clove

ahbia,110

h,

ilare

il numero

e Ililli, li,.lltri,lddi

lli,ve

f

tl di.

dei

scuoi

nodi

c ulte,l tll ,

risulta

minimo I

l C11i J i.

ne I11

3á9

8-Alberi

Si descriva

19.1-5 roor T

numero

RB

di nodi

profondi

l eventuale

0

2

19.2

In questo

2t

ogni

nodo.v

8-albero

di

è n.osrrato

figura

19A

il numero

del

radice

3 che

il

contiene

ninor

numero

chiavi.

di

possibile

All intento

un

B-albero

deve

con

caraneristiche

queste

soddisfare

la

nell ipotesi

che

h

essere

deve

D,s -Re o

il nodo

è mai

l operazione

Invece,

la radice.

si modifica

che

non

pertanto

principale,

perleggere

volta

ogni

eseguita

memoria

nella

contenuta

operazione

una

e B-TREE-

radice.

di

Tutti

chiavi

più

seguenti

le convenzioni

adotteremo

procedure

è sempre

B-albero

eseguire

necessario

nx.

fa vedere

n delle

alte a

ultimi,

B-TRAE-CRETE

B-TRza-SEARcH,

le operazioni

delle

definizione

Dtstc-WRtve Un

di questi

B-alberi

sui

descriveremo

paragrafo Nella

La 2I

La

di base

Operazioni

INSERT.

19.4

di un albero

nero

nodo

i figli

nero.

figlio

proprio

se ogni figli

come

e avesse

rossi,

l

2

Figura

figli

i suoi

si otterrebbe

di dati

di struttura

tipo

quale

incorporasse

3. Pertanto.

sono

che sono

procedure

che

Le

disuguaglianza

i nodi

principale.

visitano

tutti

sono

presenteremo

sono

procedure

in memoria

presenti

Disw-Re o.

singola

a

devono

già

dell operazione

chiamate

algoritmi

e non

radice

dalla

alle

parametro le opportune

eseguite

già

a partire

Inalbero

come

passati

state

propri

che

algoritmi

passata . sui

tornare

mai

passi.

h n

1 t-

f

1 21-

Ricerca

2/

alberi

1,

implica

di

L operazione

2ii ,

che

B-alberi

su

l enunciato

del

teorema.

di

alternative,

che

possono

con

il numero

come

subito

O lpi

-alberi B-alberi 13-alberi nodi un

mettere entrambe

per a base

del

un dalle

B-albero

sostanziahnente

numero

di nodi

un

alberi

gli

più

inferiore,

grande.

di un

sugli

accesso

disco,

Sebbene

r è una

fattore

costante ,

che

numero

cresca

nel

caso

di Igr.

procedura definita

SEARCH

sono

per di

un

esaminare al

un

in quel

di

nndo

disco

di

è una

La

sottoalbero. k.

la coppia

ridotto.

caso

ordinata

y,

i

un

ottoalbero esterna

che

nel di un

consiste

Esercizi

19.1-1

Paché

non

si permene

un

minimo

grado

r

1

i

2

svhile

1

4

Per

quali

valori

di t l albero

rii figura

19.1

è un

B-albero

6

Si

mostrino

l insieme

tutti

i B-alberi

di chiavi

l.

2,

leciti ...

4,

con

grado

minimo

a 2 che

uguale

S i derivi memorizzate

un

limite in un

superiore B-albero

stretto di

altezza

del

k .v

if

i

numero h in funiionc

delle

chiavi del

nx

e I

then

I ey

*raclo

che

if

lecif

return

x i

.v,

.v

rappresenui ii

5 .

I I .1-4

i1

lecito 5

19.1-3

e l

do

l 3

19.1-2

i ni

risii

pozione

niininiu

s.

I

7

then

return

S

else

Disv.-Rr

9

return

wc su c

.i j

B-Tare .-St wvcn

ed della

B-albero,

.s .

della

l

della

una

vie

nodo

ma

interno

wc.

TReE-

procedura

B-TarF-

procedura k che

chiave

è quindi

procedura la procedura x e di un

nodo

il valore

restituisce

ll

B-TREE-SEwRCH x,

a ogni

immediata

pii

I è presente

la procedura

contrario

possibili

a due

decisioni

su

ricerca

le

che

fatto

precisamente,

di ingresso

I parametri

di

chiamata

Se la chiave

viene k. Nel

due

sono

Più

generalizzazione

di ricerca.

radice.v

alla

puntatore

nel

alternati c.

binari

alberi

gli

TReE-SeecH root T . restituisce

accessi

per

sui

al numero

I scelte

non

nodo, in esame.

nodo

del

di

all operazione

consiste

principale a ogni

seguite

B-TREE SEARCH

dei

definite

differenza

figli

dei

nx

SEARCH

ricercata

dell ordine

Dato

il

l altezza

le operazioni

Quindi,

RB.

alberi al

RB.

che

ricordiamo

molte

definite

effettuare

La

con

di alberi essere

può

operazioni

occorre

i B-alberi

le classi

logaptmo

esaminano

esaminato

a confronto

essere

molto

assomiglia

B-alberi

dai la

ricerca,

coincidono x si presentano

Possiamo

fornita

ricerca

bilanciati

indice

deve del

essere tipo

B-

B-T Ev-SEARCH i tale

che

l ey

s

371

B-Atberi

ricerca

Una

lineare

se un tale

I ey

z,

4-5

hanno

successo

il compito

di controllare la chiave

a una

prose e

con

in esame.

Si nou

READ

portare

per

La figura chiari

una

in memoria mostra

la

per

percorso numero

di accessi

h è l altezza

un

al disco

della

while

dal ciclo di CPL

totale

che

cammino

e n è il numero

impiegato

è dato

in una

porta

di chiavi 2-3

O sb

di

alle

nodo

da

un nodo

che pertanto

il tempo

pieno

il tempo

nodo

che

di un B-albero

si deve

chiam elaprocedura

te,

per

aggiungere

le

procedure nodo

senza

perdere

e gli

nessuna

si deve

la procedura

assegna

una

in generalità, Disv.-REwD

procedura

chiavi,

oppomma

che

la

informazione

ausi1iaria pagina

la procedura del

pagina

disco

questa

in tempo

associata

nuovo

al

Si

chiami

nodo

nuovo

al

crea

può

diviso

un

X E-

suo

interno

la

2

leaf

x

3

nx

m0

4

Dtsx-lVwim s

5

root T

c r

è un

fE-NODE rauE

Divisione

di

un

diventa

1

c

2

leaf

2

n-

4

forj

Au

nodo

in

richiede

un

01

su

operazioni

disco

ed

tempo

un

di

dell operazione

che

detl in erzinn, all altezza è diviso

inserzione

di

I. l

lezi

inscrivi e

è l operaziiine della in du,

sua nodi

chiave con

una

chiave

chiave che

i rechana r

v

do

1 tot

l

kc

-

leaf

if not

I chiavi

in

in un albero

divirle I ey

un

un y.

ciascuno.

è

B-albern binario

nitido Il risultato

pii.no

decisameitte

di ricerca. y

di questa

un

cottiplic

L nperazione nodo

operazione

con

v J

1 tor

thenforjm do

c

c .-

fv

di CPU.

01

più

kei,

y

9

ny

10

for

M

t j e-

n .v

do

, .i

cruci ile

2t

I chi ii

è che

il nodi

i1

12

c... . J

13

for

c

.r

m

1S

l ey

.v

16

n .sJ

c

l ey, n .v

i

doivnto

n rj

j

m

calo ley, rJ

14

i

I downto

8-albero

una

di x.

figlio

nuovo

della

grandi

t-1

I l L operazione

più

z-Nonr

oca E

-

7

un

sono

di x che

chiavi

S, la chiave

mediana

chiave

la sua

lungo

5

B-TREE-CREATE

nodo

un

parametri memoria

divide

un

nodo.r

questo

indice figlio

nodo

della

traccia

tenne

per

x nm

interno

principale .

jy I

ky

di questa

di applicazione

esempia

un

mostra

19.5

figura

e il nodo

6

Se

il di

l operazione

unità

una

di

essere

alberi.

nuovi

alberi.

degli

procedura del

la struttura

B-TREE-SPLIT-CHILD X,

e-.v

procedu

di x. La

pieno

opportunamente

8 La

nella

presente

già

figlio

come

ha

ancora

significativa.

ALLO

questo

y

sia

due

dei

deve

non

naturalmente

che

y-

di divisione aumenta

di crescita

è il meccanismo

nodo

nodo

il punto dell albero

l altezza

allora

del

si

pieiio

i. e un

nodo

y

in due

nodi

e

di un

presenza

figlio.

Quelle

assumere.

contiene

non

La

Entrambe

B-TREE-CREw l

che

padre

identificare

si possa

successivamet -

procedura

01.

non

At.cocAve-Nooe

disco

prima

B-TRE -IwsERv

ALLOCATE-NODE del

vuòto

radice

nodo la procedura

chiansare

di operazioni

sequenza

determinata

di una

B-TREE-CREATEchecreaun

le nuove

utilizzano

nuovo

è il risultato

nel

B-TREE SPLlT-CHlLD

modifica

poi costruzione

che

nodo

procedura

tale

La

y.

spostata

radice,

di un

divisione

vuoto

B-albero

viene

tale

in modo

assunse

un

di

di

padre

mediana

y è il nodo

La Creazione

tel

spostai

chiave

La

log,n .

Ot

Ladiiisiorrediunnodocont 4.1lnodoyèdivisoinduenodi,ye ,elachiavemediana viene

y

il

dove

8 log,n ,

è Or,

qualsiasi

che

facilmente

2t abbiamo

nx

S di

viene

B-albero

8h

rs r6 T rs

Tl T2 T3 T4

più Figura19,5

vede

Si

è dato

leggermente

un

l r

DisK-

R.

ricerca,

foglie.

Poiché

esaminare

per

i nodi

lettera

binari

radice

B-albero.

del

del

l operazione

ri T2 T3 T4 T5 T6 T7 T8

della

ricerca

B-TRss-Ss acv

procedura

linee

da

dalla

eseguire

z c,

prescelto.

alberi

degli

linee la ricerca

oppure

sottoalbero

opportuno

x

E..

hanno

contrario

ricerca,

B-TRAE-SeARcv

procedura

esaminati

un

h necessario

sottoalbero

della

TRse-Se Rca

procedura

lungo

del

la radice

vengono

su

procedura ricorsiva

chiamata

le operazioni

che

quelli

della

ricorsiva

della

I insuccesso

si constata

quindi

In caso

x

i, é

.

linee

se i controlli

richiesta

é

I-

che

delle

1. L,e istruzioni

x

appartiene.

a cui

il nodo

ed

i tale

indice

piccolo

la chiave

trovata

se è stata

il più

il valore

i assume

allora

della

prima

di trovare

il compito

cercata

foglia e

chiamata che

19.1

sono

Come

esiste

si restituisce

o si perviene

6-9

non

indice

ha

1-3

linee

v

l

mediana chiave

mediana

Il nodo

procedura.

è spostata sono

nel

nodo.r

inserite

il nel

y è

pieno padre

nuovo

di y . nodo

-

373

B-Alberi 19

Gipstolo

root TJ

17

Drsv.-W y

18

Disx-WRm -.

19

Disx-Wam x

S

roat TJ r La incolla .

Supponiamo

diviso. figli

B-TREE-SPLIT-CHILD

procedura

che

In origine è ridotto

figlio

y ha

I. Il nodo

di x, inserendosi

spostata

y sia

il nodo

a t

il figlio

esattamente adotta

z

subito

e diventa

si comporta

dopo

chiave

quella

i-esimo

1 figli,

i figli

dei

y da

sia

dopo

di y piii

tabella

separa

come

di x e che

2t i r

y nella che

esattamente

y deve

la divisione

il numero

ed

diventa

di x. La

e

procedura

il nodo

pieno

grandi,

figli

taglia

una

inoltre chiave

essere dei

un

mediana

suoi

BmR ADFHLPlP

istruzioni

di y più diversi

delle

linee

grandi,

assieme

compiti.

Prima

spostare

la chiave

modificare

ai figli

B-TREE-SPLIT-CHILD

è 8t.

eseguono

8t

del

tutte

Infine,

nodo

modo

x. Le

le modifiche dei

z e di assegnargli

le istruzioni

z come

x in

la presenza

per

il nodo

figlio tale

da

delle

di x,

successivamente

separare

y da

istruzioni

delle

effettuate.

Il tempo

due

cicli

linee

nelle

linee

linee

chiavi

10-16

hanno

infine

17-19,

La

piena.

hanno

che

nodo

cicli

La

L

di

operazione

visita

che

dell albero

O th

Or

chiave

inserisce che

log

che

garantire

una

n.

in

una

richiede

B-albero

accessi

Oh

al

B-TRzz-Issai

la ricorrenza

non

di altezza

disco.

Invece

utilizza si inserisca

h viene il tempo

la procedura nni

fana

in un

nodo

di

con

1

r

2

if

3

t tt-Caio

è per

r -

2

if leaf

E

4

root TJ

ivhile

5

leaf

key, xj

7

ns

8

Dtsv WRn

s

-

F isF.

else

9

6

ns

7

c, s

s c

0

B-TREE-SPLIT-CHILD 5. B-TREE-IYSERT-iXOYFùi. . s,

10

else

istruzioni

caso

linee

39

la radice

hanno è divisa

in due.

e i I nuovo

il caso

nodo

s con

in cui due

il nodo

figli

d ivent

che

nelle

fo

lie.

radice

r si i

la nuova

t3-Tl F i -INSLRT La

prncedura

Yi

conclude

cnn

la chi n t

La

struttura

ultima

quest

la chiave delle

proprietà

k in un

procedure è sempre

nodo

x, che

aI

B-TaeE-I sERt soddisfana.

while

lcil i

o-

i

l

i

l

do

i

e

l ey

l

.v

1

i

l

if n c x then

key, x

I

ax

12

2t

l

k l-cg .i then

16

i -

I

B-TRcr -lxsmt-Novrecc e

17

procedura

i. c .r

B-TRE -Svu --Ceco .v, if

15 di gestire

il la

I

DISK-READ C, X

14

k

il compitn

inserisce

-

nx

ic

t l

B-TeEc-INSERT-NONFULL r,

delle

in questo

I.

chiamare

si deve

key, v

i-

12

La

invece

key... x

11 r

S

pieno

1 e k

do

c

10

9

Le

i

m

6

ALLOCATE-NQDE e-

che

si è sicuri

ricorsiva pieno

è la

dell albero

ricorsiva

x then

3

pieno.

i

s

nodo

non

radice

la cui

albero

visita

k

l

then

radice.

nx

1

root Tj 2t

k nell

chiamata un

si incontra

pieno.

che

ci assicura

k

nr

di ogni

prima Se

essere

deve

non

4 B-TREE-INSERT T.

una

crea metà

singola

richiesto

CPV

B-TRez-St già

una

che

pieno.

B-TRE -Issai-No vucx

ausiliaria chiamata

della

B-TREE-IYSERT-NONFULL X,

k in un

della

effettua

tale sia

non

divisione

la chiave

di inserire

il compito

in modo

e B-TREE-INSERT-NONFULL

B-albero

chiave

La procedura

durante

un

deIla

risultato

t come

di

ha

che

visitare

si deve

radice

B-TREE-IwsERT-Noimt.c

procedura

procedura

momento Inserimento

alte -a

si

1e due

B-TRE -Svcrr-Ca .o.

procedura

iterazioni.

nuova

is

è organizzata

procedura

dalla

La

di

e quindi

come/gli

r e ha

mediaita

due

in

diviso

r viene

radice

chiave

la

contiene

TA Tz

T

Tz

T

T

Il nodo

4.

r

con

radice

della

cresce

B-atbero

Il

TREE INSERT-NONFULL

aItri

Gli

radice.

nodo

nuovo r.

si deve

richiesto

e 7-8.

di

T

T,

g

divisione

si deve

infine,

di CPU 4-5

le t-1

La

19.6

Figura

di creare

il nodo nodo

chiavi

disco

sul

anch essi

inserire

di y nel

delle

di riportare

il compito

corrispondenti.

si deve

mediana

il contatore

il compito

1-8 hanno

7

g

di y viene

z in x.

un

Le

5

T

Tq T3

T

nuovo

P

N

L

F-

D

A

B-TRcE-lwscRt-Nosruu.

opera

l x,

l

nel

modo

se ui nte.

Lc

istruzioni

delle

linee

374

19

albera

a

iniziale

che

la

Nel disco inserzione

ckllachiave

B

vedere pertanto numem

inserzione

c

della

chiave

Q

G

M

P

che

la

può

della

chiave

che

s

19.2-1

Uy

S,

K,

,

casi

detta

F

19.2-3

zata

nel

Si

spieghi

L

inser ione

di

cl av,

in,ut

B-albero.

Il grado

nunimo re

r de1

sono

mo

19.2-4

i,t figura

i tcari

arVa

è, 3 pertanto

qu L albero

c

che

si

ottiene

inserendo

la

chiave

Q

s aèunasemp

nell nlbero

*

eie

si

deve

dii

idere

tl nodo

ABCDF,

/a

clriave

ne

..

a

19.2-5

d

ra

ice

e fa

. Il

chioi e

/o

sono

a 2. Quanti

uguale

2,

l,

del

i nodi

n

...,

un

in

che

B-albero

e come

B-albero,

un

B-albero.

in un

memorizzata

chiave

determinata

in

presente

piccola

più

chiavi

le

inserire

di

Supponiamo

chiave

di una

il predecessore

F

afog oa

è inserita

tac

recnntieneieciiiavi

cui

JK.

per

e

linea

è il nodo il figlio

13 ha il com

del

x.

In questo

nod o.v

co p ito di controllare

capii,

su cui

le

istruzioni

si deve procedere se la ricnrrenza - deve

delle

con

vuoto

B-albero

grado

risultato

come

si ottengono

con

di

destra

9-1

I hanno

la ricorrenza.

prendere

il

nodri

un

nodo

di della

pieno

te dalla

c se

-

.,

x .

j c.

npo

l incrementn i no

ocre i

o

che

Suppongo

quest s

E V.2-7

1C

per

le pagine

usato

di quello disco.

del

e inserzione

di creazione

i puntatori

memorizzare

grande

i

per

Si mostri

in un

B-albero

modo

tale

situazione.

DE .

il compito

L istruzione

in esame

reo r vvriabilei linea

per

t più

Primacliinserire

metà

linee

valore

dimensione

le procedure

modificare

questa

un

la stessa

mantenendo

pur

di spazio

bisogno

hanno utilizzare

si potrebbe

si devoiio gestire

non

B-albero

pertanto

interni

nodi

utilizzare

radice

determinare

di un

foglie

come

passopreceeente. nel

Le

iene

Q

I9.2-6

alla

la

trovare

come

ai t gli,

ivisa araclceèpienajeiiB-uiberocresce

nu F

l

spostotct

ne chiave

iceinser-ioneihnhafoglia.

tt

iene

la

è memoriz-

che

a quella

E viene

WRn

di Dtsv

chiamata

identica

pagina

Si se quella

ridondante

detta

disco.

minimo

sono

procedura

una

procedure

B-TieE-IwseRt

procedura

Una

principale.

alle

ridondanti

viene

Disv Rc o

disco

sul

se si scrive

della

della

prima

finale.

..

c

la

B-albero

nemoria

nella

presente

di

chiamata

Una

ridondante

trovare

19.7

risposta.

albero

dell

chiamate

delle

chiamata

una

durante

Z,E

la configurazione

si mostri

di eseguire

accadere

potrebbe

è già

pagina

Figura

è 01.

principale

la configurazione

solamente

Inoltre

nodo.

C DlSK-WRITE

la

motivi

chiave

il

che

anche

si dimostra

Y, D,

B.X.

P,A,

W ,R,N,

Si mostri

vuoto.

di qualche

In quali

V,

T,

L,H,

C,

DISK-READ

della

coda,

in

di chiavi

sequenza

della

dell inserzione

i risultati

in un B-albero

L

19.2-2

inserzione

simultaneamente

È facile

log,n .

Ot

memoria

nella

al 01

ricorrenza

di

modo

in questo

while

ciclo

risiedere

devono

Si mostrino

divisione

e

un

con

realizzata

di pagine

F, inserzione

B-TREE-INSERT-Noufut.t.

procedura essere

accessi

solamente

è O th strùttura

una

ha

B-albero.

Oh

eseguono

di CPU

totale

Il tempo

in un

effettua

B-Tata-It seRT

B-TREE-I1SERT-Nosvuu.

procedura

chiave

Esercizi

T

QR

d

della

e Dtstc-WRjTE.

Disc-Ra o

situazioni

le possibili

di una

di inserimento

h la procedura

di altezza

B-albero

le chiamate

infatti

operazioni

procedura.

l operazione

durante

affrontare di un

caso

della

ricorsiva

la chiamata

si devono

che

17

linea

la

Infine,

pieno.

descrive

19.7

figura

La

nodo

un

su

ricorsivamente

chiamata

è mai

non

procedura

contiene

b

375

8-Alberi

Capitolo

in o ni modifica scelta

la nodo permette

B-TRm-SEAkCH

procedura

binari

la ricerca di ottenere

di t in funzione

del

invece

un tempo valore

di n.

Slál

della di CPU

ICQlizzata ricerca di O lgn ,

in lineare.

Si mostri

indipendentemen-

da che

. - g-Atben

t in modo alberi.

tale

da

minimizzare

Si determini

il tempo

approssimativamente

il valore

ottimo

di t nel

caso

in cui

a

30

di ricerca

nei

del

e b 40

millisecondi

microsecondi.

Eliminazione

di una

chiave

da

un

B-albero

Se c x

a.

comuni In

di

can

questo

l operazione

dalla

nodo

sui

figlio

di una

descrivere

l operazione,

diventasse

un

radice

e il nodo.v

l altezza

però, interno

almeno

una

figura

19.8

mostra

le

di eliminazione

1.

Se

k è nel

2.

Se la chiave a.

Sia

k è nel

si cancella

punto la chiave una b.

I, .

A questa I,. con con c.

La

sia

si cancella

punto

la chiave una

I,

singola

Le

devono

figli

di

i .

Il

procede

primo a

puntatore ricorsi

di / nel

sottoulbero

operazioni

che

verso

le fo

v

unente

che

sia di

il

questa

rlocln

a eliminare

la

P

C

M-

G

di

la radice

.v

la nuova

fa diminuire

di una

dell albero

durante

la chiave

unità

contiene

c

di W

eliminazione

caso

2a

l esecuzione

k

k da.v.

verificare

t chiavi,

i seguenti

allora

si

il predecessore

sostituire

deve

nodo

d

il

segue

I.

-

Se

ha

di radice

almeno

I con

eseguite

si deve

r chieri.

I,. e la elimin no

nel

obesa

si L

I 9.

F

cer ato.

nodo

h m ur ionio -

di

eseguite

F.

chiave

abbiano I

operazione i diveilta

liti y,

solamente

che

dnpo

tutte

le

di

fusione

noclo

co 1

over

t

1 chiavi.

chiavi i 2t

restituito

-

di che I

il

i

noclo.r

clliavi. I

In

tigli

memoria

di pervie

A

questo oca

è il casn

Questo Af.

-

as

ere

I

semplice

riecroB-alberoèr 3,qtiindi

dominimadi

Il g

-n b . uh

lie.

I, da

un

e/a i

.-

di

meno

due

l nod/

chiavi.

mo

sonò

che

v la chiave

essere

possono

2c

L

C

c

sostituire

caso

con

allora

l- il successore

. Sia

di G

eliminazione

A questo

x la chiave essere

possono

casi.

trovare

cercato.

nel

la eliminano

trovann

l

caso

bisogno Prima

diventerebbe

la radice

elimina

I,. e poi

sia che

nodo

etfetto Inoltre,

..

aver

seguito .

accadesse

di F

eliminnzinn2

b

chiave

condizione

senza

c, x ,

minimo

una

i

di s che

è che nel

mai

di.r,

al grado

del

più

Questa

nel

si possono

si deve

ricorsivamente

discesa

inserire

figlio.

incontrare

y. Sia

il figlio

x

chiave

una

p rendere

B-albero.

almeno

ke

padre

ac

si assegna

allora

x, p oi si deve

albero iniziale

a

le foglie. -

il successore

possibilithrimanente

si

il

verso

trovano

prendendo

dal

t chiavi,

con

fratello

chiave

la cui

uguale

in

discesa,

che

allora

e poi

k

una

vuoto .

un

y ha

ha un

ma

chiavi

chiamata

spostare

operazione

allora-si

di radice

che

discesa

Se

x è almeno

se

possono

da

interno,

I.

sottoalbero

operazioni

si

foglia,

nodo

precede

simmetrico,

trovare

che

ricorsivamente

Le

singola

In modo deve

x e x è un

che

sottoalbero

chiave

descritta

figlio

questa

procede

di

procedura

da essere

tale

una

sola

verrà

sia

chiave

k dal

nodo

sul

la proprietà

l albero

e x è una

di k nel

predecessore

che

di una

di x che

che

a valere

situazioni

nodo.v nodo

y il figlio

l unico

meno

a

dell operazione la chiave

presente

complicata.

più

necessario

un

con

far

Si noti

del

essere

che

allora

continua

chiave

albero

chiavi,

cancellato.

mentre

un

eccezione

di

caratteristiche

della

in modo

ricorsiva

vogliamo

senza

sarebbe

dell albero,

sempre La

nodo

da

una

si

principali.

almeno può

molte

istruzioni

la chiave

di chiavi

chiamata

chiave

con

passi

le

è organizzata

Pertanto

ha

se è leggermente

caratteristiche

richiede

della

prima

anche

di eliminare

se il numero

B-alberi.

che

precisione

le sue

condizione

dei

propri

chiave, con

il compito

x solo

questa

l eliminazione

tornare

di una

B-TREE-DELETE

nodo

che

è un operazione

descrivere

ha

definizione

nel

padre

consente di

noti

B-albero

brevemente

su di un

t. Si

richiesto del

di

x. La procedura

ricorsivamente

un

di inserzione invece

B -Tace-DEt.ete

è il nodo

minimo

da

descriveremo

procedura

radice

chiave

paragrafo,

eliminazione, La

una

ulteriore

chiave i

una un L eliminazione

ha

modo

in

fare Infine

r chiavi.

almeno

contiene

che

p er

3b

c x

Se

B-albero.

di x prescelto.

t-1

ha solamente

o il p asso

3a

il passo

nodo

un

sottoalbero

su1

ricorsivamente

19.3

con

l operazione

continuare

k, se la chiave

si esegue

allora

1 chiavi,

r

la chiave

contiene ,

che

sottoalbero

so am solamente

nel

è pre sente

c x

la radice

determinare

x, a11or a si deve

interno

nodo

nel

è presente

k non

la chiave

Se

3.

B-

Questo

2

c il caso

di

elimina.-ione la

cbirive

L che

prece

u ra

c liai e e

a nn

è s

c so

questo diventano sia

l

cl e

u pota

chr

ivi

ivi

ii

pu tn

ii

c

c l-

i

.

..

re

nrhini ePèeisniaarercn

I C rt

i 11 e C C. tlc

.. l i hirn irn ir

B.

Ir

lrictic

v istcvri sp

t prati

ia

.. . vi.iillre

.

cr

r

ifrcatt

378

Capitolo

eliminazione

e

379

8-Alberi

19

di

D

caso

èb

Prob1emi C

L

P

T

X

J

K

.N .O

si

su disco.

C

costituiti

siano

E

La

di

E

C

J

19.8

risiedere

fa

la

L

P

T

nella

X

K

N

O

g

R

S

del

U

V

Y

puntatore,

Z

Per

continua

nel

la pagina

fratello

il figlio Se c r dei

e tutti

suoi

nodo Nei spesso

o di sinistra

B-alberi

dal

i suoi

fratelli.

diventa

sui

propri

r

delle

1 chiavi,

agisce

con

una

una sola

fondere di

di quel

si deve

spostare

modihcata

pagina

una

assieme chiave

c con

di.r

nel

uno

in testa

nuovo

alla

chiai

foglie.

Dato

e coinvolga

elimina

dunque solamente

nell albem, una

capita

senza

chiave

da

un

piuttosto La

aver

bisogno

di

nodo

interno.

Ia

cui

Anche per

un

eseguite è O rii

è stata

eliminata

la chiave

se la procedura B-albero

di

solznente Ot

appare altezza

01

h.

per

sostituirla

complicata.

piuttosto I nfatti f

chiamate

alle

con

tra

ogni

la chiave

operazioni

precedente

richiede

chiamata

o seeuente

solamente ... ricorsiva. e la

Dlsv REwo

accessi

Ol

successiva

e Dtsx-WRn

vengnno no

t. Il tempo

di CPU

caso

Nel

albero

risultato di figura

de1I

eliminazione

del e

chiavi

C.

P

e V,

ii

Si

scriva

in dettagli

l

prucvùur.t

B-Tilèc-Dn

cn. .

costose,

8 ni

la

e scrivere

pagina

alla

testa

l elemento

visto

disco

il

copiare

che

la pagina

de ll efficien-

un idea

avere

per

al disco.

Considereremo

sul

a una

accesso

ogni

per

su

questa

disco

anche con

pagina

m

dipende

da n strategia

che

fatto viene

principale che

in quel dell

noia

realizzare

pila

risiede

noti

Si

che

è nel

caso

c.

è ne caso

Qual di

n

operviinni

Pus

Qual il

pessimo della

pile

pii nel

i coinvolta ed una

disco

coinvolta

sia

corrente,

la pagina una

una

pn ina

può

nell operazione

memoria cinè

la

delle

qualunque

in memoria.

risiede

nell operazione nuovu

In

principale.

eseguire

Possiamn

se la pagina

es ere

trasferita

è quella

corrente.

al

di, cessi

numero è

il

necessari

pere e

necessari

per

uire

una

sequenza

una

sequehz

di CPl.J .

è il tempv

Qui l

ll disco

accessi

il numerosi

pe simo

una

per

è caratte-

strategia

nuova

Questa in memoria

su quale

memoria.

della

q ie t ordine. Qual

CPU dev essere

al disco.

di accedere

c è bisogno

in

è scritta

corrente

notoria.

di

la risposta

seguito,

la pila. sempre

l intormazione

se la pagina

solo

a pila

per

risiede

ntomento

la pagina alla

della

pagina memorizzata

anche

necessario. disco

una

di n operazioni

sequenza

è il tempo

Qual nel

che

caso,

una

per

e n.

diversa

dal

realizzazione

in questo

Sia

al disco

di accessi

semplice

di n operazioni

di n operazinni IP.3-2

leggere

pila.

il puntatore

nel

la pagina

di accessi

è il numero

qual

che

rizzata

b.

l 9.8 f .

della

e si restituisce

al puntatore

il numero

costo

addebitiate

una

allora il

di disco

principale. della

interno

relativamente

considerare

adottiamo

dal mostri

ma

sono

disco

espressione Ora

Se

Si

p il valore

con pagina

testa

alla

si decrementa

è simile

riscrivere

si deve

si non

puntatore

della

n

è quella

pila

realizzazione,

indichiamo

in memoria al

corrispondente

non

della

e questo

p mod

il puntatore

parola

Por

L operazione

sul

basate

pila

operazioni

dali

della

pagina.

e portarla

opportuna

la pagina

basta

pessimo.

sequenza

p iginn

19.3-1

nella

caso

le operazioni

di CPU,

log,n .

Esercizi

parte

parole, a.

casi

al disco

disco

realizzazione

della da

disco.

In questo

pila.

che

il tempo

le foglie.

nel dal

la maggior

è modificata.

non

nodo.

si legge

pila.

za della nelle

discesa

si

quando

si deve

la discesa

è situata

di

infine

padre.v,

della

allora

mediana

chias i

nel

in c, xj.

comporta

la chiave

Tuttavia,

passi.

e metterla

inserirlo

di eliminazione

B-TREE-DELETE

procedura

hanno

r parte

l operazione

ed

operazione

Questa

la magio

di c r

fratello

fratelli

chiave

questa

che

tornare

di destra appropriato

in una

al puntatore

Pus

dell operazione

parametro

punto

questa

pila Se

pila.

numero

incrementare

w basta

Pus

corrispondente

alla

in testa è la parola

pila

In

della

testa

alla

contenute

parole

l operazione

realizzare

disco

di

e Por

a tal

efficiente,

secondaria.

puntatore

alla

in testa

in è il numero

dove

Pus

cresca

operazioni la pila

e cosi

particolarmente

dell elemento

disco

l elemento

di memoria

elevata

dalle che

principale,

memoria

nella un

principale nel

se non

anche

completamente memoria

l indirizzo

che

p/mi

b.

o restituiti supponiamo

una

a disposizione

ha

quantità

secondaria.

memoria

reaIizzazione,

semplice

mantiene è altro

dal

passati

memoria

nella

completamente nella

B

3a

Figura

una

ed

Infine,

di memoria.

parola

risiedere

poter

più

che eliminazione

A

che

sistema

principale

i valori

che

un

in

pila

memoria

di

Supponiamo una

da

è memorizzata

pila

caso

una

realizzare

piccoIa,

accorcia

alrezza

da non

A

di

relativamentc

secondaria l albero in

secondaria

memoria

il problema

Consideriamo quantità.

e

in

Pite

19.1

E

timpn

di

ùisco CPU

eseguire

i

38I

9-Alberi

Supponiamo

ora

memoria d.

di

Si descriva della

una

modalità

19.2

sia

Unione

L operazione c

5

e x

c

risultato

S,

insieme

che

le cui

chiavi

queste

due

Per

ogni

che

contenga

Si mostri

Sia f.

T un

T

chiavi

di

tale

pila

disco

dinamico

che

sia

Per

siano

che,

O l/m

T che

di

è

elementi

e p un

l insieme sono

come

sia

sl nodo

3-4.

come

delle

de11a T,

di T , e chi

chiavi

come

gli

realizzare

di

da1la di

avere

possibile

T

più

a S

x

realizzare

elementi

coincidano

un campo

assicurare delle

e T

in tempo

e in un

radice

T che

chiave

e di T

height xJ,

che

la soluzione

operazioni

due

alberi f,

O jh -h

di

2-3-4 dove

dell albero

sono

insieme

a una

minori

l . Si mostri

in un

spl it su un

unico

albero

ctell operazione

Suggeriniento in

Si descriva

l operazinne

di S

T.

come

un

sono

ricerca.

e sia

l e

h

t- una sono

le

determinata

di k, e sia

che

di chiavi

5

il cammino k, ,

D ,,

C

...,

chiave

l insieme

delle

p divide

S

in un

dove,

per

ogisi

l

T ,Qualèlarelazione

come

il cammino

p divide

l insieme

S

i.

di esecuzione

telescopica.

crea

chiavi

AC

le chiavi

Il tempo

come

appartengono

che

x. Bisogna

Siano

join.

chiavi

maggiori

le altezze

mettere

le cui

x che

asintotico

eseguita

cammino

delle

T, , T ,,,

di alberi

Si mostri

ogni.v

per

l inversa

ci domandiamo

assumiamo

esecuzione

essere

...,m,abbianlOChey l zperogitichiaveyc

per

che,

x in S, l operazione a S-

T

d.

CPU

restituisce

sostanzialmente

elemento

gli

semplicità

l operazione deve

i 1,2,

in insiemi

x tale

operazione

s lit

problema

si mostri

tetnpo

di alberi

tra

di

rispettivamente.

2-3-4 S

alberie

operazione

e il tempo

elemento

Questa

di tutti

radicato

insieme

esistente

ogni

per

distinte.

2-3- ,

il

e un

appartengono

In questo

2-3-4 plit

i costi

per

albero

2-3-4

e le chiavi deve

T. Si usi di S

essere

l unione

O lgn ,

dovrebbero

l operazione

in un

unico

dove dare

join

albero

2-

n è il numern una

somma

3.7 .

e

Note

al capitoln

Eccellenti Hopcroft

CWI11j ld1i

riferimenti e

UIIt1un

li

i

hai

schern

per,. i 4.

i RB

S

c

d,,zii

li

ick

rll cii

st 175j.

-3-A.

., hc..ri Corner

bilanciati j48

e B-alberi presenta

Nele

197p

sono ùtsa

r léèc n

g .. p.

Knuth t cntssplet

I

3J.

Ah .

l ui

l3-

spiegato

sono

stati

l origine

ha

poPcroft

i alberi

.

S e un

che

consiste

2-3-4.

e S

L operazione

elementi

dell albero

join

,

e T

sia

S

S key i

S.

di key xj.

realizzare

albero

Inoltre

al

alla

oltre

pagine

in memoria .

eliminazione.

conie

di

dinamici

u

gli

albero

l operazionc

altezze

accessi

key xJ

le chiavi

influenzi

ed

della

pagine

due

principale

residenti

2-3-4

x

su alberi tutte

alberi

insieme

grandi

x di un

non

chiave

u un

l altezza

inserzione

c.

più

nodo

di

key x

di tutti

operazioni

proposta

b.

S dato

e che

delle

insiemi

e un insieme

sono

le chiavi

a.

che

consiste

di key x ,

piccole

con

prende

join

S

di

due

S

dell operazione

in memoria pagine

01.

abbiamo

l insieme

delle

ammortizzato

e divisione

join

tenendo

traccia di gestione

il numero

pila,

la pila

tenere

per

ammortizzato

I

realizzare

necessaria

hanno han introdotti del

nome.

introdono

lacaratteristicac da

Bayer

gli

alberi h eogani

e McCreight rei ht

2-,-3,

i p recursori

nodo nel

interno 1972

dei

B-alberi

possiede 18

g i autori gli

due

e degli o tte non

li. h. figli. hanno

alberi I Bmai

Heap

binomiali

capitolo

Questo nome

di he

ed

il Capitolo

21

aggregabili.

M tcE-HE v

crea

classe

presentano

una

strutture

di dati

Queste e restituisce

come

un

risultato

di dati

di strutture

forniscono

nuovo

conosciute

le cinque

operazioni

heap

non

che

con

il

seguenti.

contiene

nessun

elemento. INSERT H,.l

inserisce

Mtwiit t H

restituisce

un

nodo

x, la cui

come

chiave un

risultato

è già

definita.

stata al nodo

puntatore

nello

heap

heap

dello

H.

la cui

chiave

è

minima. ExtR ct-Mica H

H,

Union H,,

elimina

dallo

risultato

il puntatore

crea

heap

heap

l elemento

a quel

e restituisce

degli

H

come

H

e H.

di

risultato

un

effetto

Come

minima

chiave

e

restituisce

come

nodo. heap

nuovo

che

di questa

operazione

in questi

capitoli

contiene gli

tutti

i nodi

H, e H,

h ap

sono

distrutti. Inoltre.

le strutture

operazioni

di dati

vengono

che

DECREASE-KEY H,

k

x.

assegna nuova

DELETE H,

Se

si

binari

di

l

l pCI

bel

le

n

Infatti

capite lo

questo

In

C.,lpilolo

per

fnn lcrc

I

C.,alllinerell,o

gli

la

H

anche

forniscono

le due

heap

mostrata

eccezione

di

ne

8i

caio

lue

le

club tC 11p i

car.,lllcl-i,t.cll

11C lf

il

che

Capitolo

20.1.

7.

Nel

caso hanno

Untori,

tempo

di

i due D

pOI1 lllO

è

esecuzione

contengono

HEAPIFY,

heap tempo

UA

pessimo. i tempi

binrimi ili

aciicinc 1 l ll11ClllC

nel

dell opervzione

array

hip gli

della

valore.

tigura

nella

casi

alcuni

in

clCI

l . Il valore

vecchio

definiti

ordinari,

binari

t ibella sola

chiave del

grande

H.

heap

pe. iimo

nuova

una

più

dell upcr 1Zl011C

Uwov

llC1llCCIC

URI N

dalln

concatCll 1R10I10

esamineremo

p irticol re.

ùZ10lli.

caso

l esecuzione

dell opera ic ne

heap essere

dulia con

nel

la

dello deve

Uno . è descritto

operazioni.

Ol

successivamente

esecuzione

0.1.

tutte

Uiio . e

il nodo.r

conte

esecuzione

l opcr azione unire,

non

l operaziotte

efttcienti,

heap

tempo

In

considera

piuttosto

degli

al nodo.x chiave

elimina

X

non

sono

esaminate

seguenti.

di

c in

llll1 lllll lli

un

operazio-

delle

esecuzione

lofale

di

n

elcnscilti.

O 1 ,ll .

cle/li

hcap

li

Fiboll,taci.

che

per

alcllnc

da di

Heap Procedura

caso

binario

Heap

pessimo

caso

binomiale

Heap

di Fibonacci

ammortizzato

pessimo

81

81

81

8 1 en

O lgn

81

81

O lgn

01

O lg i

8 lg i

O 1p

8n

O lgn

81

DECREASE-KEY

8 1P

8 lgn

81

Dee

8 lgn

O lgn

O lp

INSERT INlk1L M

EXTRACT-w1IN UNION

Figura il

20.1

tempo

ll

numero

degli

di

elementi

esecuzione

delle

di tempo

ammortizzati

In all

restituzione

della

questi

una

vale

chiave gli

che

fanno

vincolo

non

20.1,

dopo

introdotta

come

riportati

sia

nella

Alberi

Uno

heap

definiamo

mente

e per

aver

binomiale gli

introduciamo

20.1

limiti

sono

nodo

nello

relative heap,

e

c

alla

Bp

Assumiamo

Bi

negli

heap

di

La

binari

medesima

Fihonacci.

Per

nodo

a quel

un nodo

considerazione motivo

questo

esempio

per

il puntatore

trovare

B,

tutte

le

DEcRe sE-Ms

nodo.

In molte

o applicaU

particolari. alberi

binomiali,

specifica

le operazioni

definisce

degli degli

heap

heap

gli

binomiali.

binomiali

heap

Il paragrafo con

i limiti

è un

20

2

gli

insieme

di alberi e ne

heap

binomi ili

hinomiali, dimostriamo ed

una

loro

20.1

Lemma

binomiali

binomiali

quindi

in questo

paragrafo

per

alcime

proprietà

di b se.

Successiva-

prim i

8,

un

Alberi

i nodi

2.

l altezza

3.

i nodi

4.

la radice

rappresentazione.

della

F gLM

20.2 a

ri è il figlio binomi. i i



gli

Il ssciente ente

un albero

mostra

più

un

a sinistra

ordinatn

albero

della

ii

veda

hinomiale

radice

alberi

binomiali

B,

lemma em

definisce

alcune

il paragrafo 8

0

dell al rn.

8,8 B

che

5.5.2

cnn iste

La

di

de t mito

ricorsii

un

nu k .

solo

an ente.

Per

L alb r

1. fi

ura

20.2 h

descrive

alcuni

dimostrare

L ilbcro

il figlio

allora

0 è una

2...

hinomiale

B,

su

induzione

è per

dimostrazione

di un

La

acritica

della

o

de e

n ma

validità

delle

lemma

sia

quinari

B ha

dei

destra,

altro tigli

B.

binonliale

sottoalbero

k. Per

di ogni

grado

verso

sinistra

da

enumerazione.

i è la radice

numero

del

è maggiore

radice

della

l, e

I, ...,

0,

. peri

/ . Il graclo

grado

I, k

è l a5ero Bè

binomi le

ha /

se

La

dell induzione

esattamente

i sono

dell albero

radice,

proprieth

2,

è k,

a profonditè

inoltre

le seguenti

valgonn

allora

sono

dell albem

nodo

binomiali

binomiale

binomiali

di alberi

binomiale,

de11 albero

l.

binomi le Un albero

B,.

binomiale

l albero

con,siderare

Proprietà

albero

Dimostra .in,re. 20.1.1

di

a1terttari o

di tempo Sia

e heap

modn

binonsiali.

20.1.

alberi

1

heap.

determinato

gli

4

8

o

di eliminazione.

tempo.

heap

problemi

realizzare

indira

3

8

di ingresso

introdotto

n si

problematiche

un

operazione

parecchio gli

Con

figura

quelle di

efficiente

rappresentazione

possibile

figura

a un

comporta

una

binomiali

cosa

richiedere

parametro

tutte

dello

è particolarmente può

. ee

b

2

pessimo.

esame

di una

l

ioni.

nella

pmfondità 0

aggregabifi. opera

riportati

caso

procedure

heap

delle

dell inserimento

l esecuzione

riferimento

questo

in

di

chiomata

nel

prese

dalle

casi

di Fibonacci

tempo

binomiali

come

Il paragrafo

mostra

heap di

tre

della

prima

gestiti non

heap

per

anche

gli

nei

momento

limiti

dopo

siano

richiedono

Viene

per

opera ioni

vengono

memoria

determinata

DEcerE

al

memoria

di ricerca

operazioni

zioni

non

problemi

anche

heap

e non

della

L operazione con

negli

capitolo

questo

delle

operazioni

assegnamento

che

esecu ione

B

B

., i la baie

p

pr

per

pràprietà

l albern

immediata. i passi

induttivi.

che

assumiamo

il

ieri6cato

p

r

l albern

8 binomiale

8,

c6nsiste

di due

di R,,

c pie

.

M1 ll.

lheri

e lS . proprietà

degli

alberi

piotonditè

binvini ili.

t

massima ..

di

un

n dr

ne1l albero

-,,

I,

si

oltictte

somm.inJi .

Ji

l1 ilio .

p r6tonClilh

38á

20

Capitolo

Heap

massima

3.

di B,,

k

1

Sia

D k,

i

l albero

Per

l ipotesi

induttiva,

la massima

dell

profondità

albero

B, risulta

essere

il nu nero

dei

costituito

da



a profondità

i in

profondità

i

B, è dato

dalla

B,,

termini,

somma i

B k,i

a profondità copie

del

Dk

B,,

B,

appare

abbiamo

che

numero

l in B,,

i dell albero

ctell albero

nell albero

l. In altri

a profondità

nodi due

dei

una

nodi

binomiale collegate

volta

il numero

8,

. Per

assieme,

dei

a profondità

nodi

costruzione

i e l altra

a profondità

i di B,,

un

pertanto

a profondità

Qs

nodo

volta

a

Qzv

i nell albero

il numero

con

l

10

head HJ

a

/,

l

387

binomiali

nodi

dei

Quindi

l,i D k-

l,i

1 head H

b

.

Pg I ey 18g188

child

La

seconda

segue 4.

uguaglianza

segue

dall Esercizio

Il solo

nodo

che

ha

un

1,

segue

dall ipotesi

induttiva,

e la terza

sibling

uguaglianza

ixi

6.1-7.

con

un grado

figlio

in più

che

direttamente

la

radice

dall esempio

di figura

di B,

B ,,

...,

i figuli

della

di

in B, rispetto ne

aveva

B ha

20.2 c ,

B,.

radice

alto

più

di quanti

Pertanto,

della

che

aveva

Dato

che

la radice

Per

l ipntesi

radice

diventano

in B ,

è il nodo

di B,,

induttiva,

di B ,

si collegano

quando

risultante

k.

grado i figli

a quello

in B,,

e

come

da sinistra

sono,

assieme

i due

ha è

radice

mostrato

a destra.

alberi

k-

grado

le radici

abbiamo

B,,

che

B.

Bi,.8 ...,

E 20.3

Figura

Corollario

di ogni

grado

Diisrostrazione.

È una

coefficien i termine

nodo

in un

immediata

albero

binomiale

conseguenza

con

delle

n nodi

binomiale

binomiali. binomiale .

l e 4 del

proprietà

lemma

deriva

L Esercizio

dalla

20.1-3

3 del

proprietà

lemma

ulteriori

fornisce

20.1

i termini

giustificazioni

per

sono

Heap

vtene

la scelta

dette l.

binomiale

H è un

g,

dello

h cap

binaria

insieme

di

alberi

in H ha

la proprietà

di un

nodo

è maggiore

o uguale

dell i

Von

esistnno

due

prima

U,econd,

chiave

soddisfa

le seguenti

proprietà nodo,

binomia e

La

che

parziale

albero

piccola

binomiali

b i toi riale.

Ogni

2.

è costituito

di

dnll insieme

alberi

proprietà ciello proprict,.t

il

alo

memori -

nodo.

del

grado

b,

z

se

e solo

2 .Perlaproprietàldellemma20.1abbiamochel alberobinomiale8èpresente lo heap

1. Pertanto,

se b

H contiene

binon iale

al nnssimo

l alberi

Llgitj

binomiali.

binomiati

proprietà

f cap

Lo

del

La heap

a

i

in H

Uno

nodi.

W

20.1.

n

20.1.2

13

n

con

è Ignei.

nu alo

albne

Il termine

H

binomiate

0

20.2

Il massimo

heap

Ui o

alberi

binoiniali

garantisie

di ordinamento chiave

in H

che

1

chiave

uno

hcap

del

le cui della

nodo

radici

pnr-iaEe

keap

di

Una lo

tesso

uno

he p

grado. binomiale

sia

la piii

heap. implica

ch .

bino ,iole

con

n nudi

cunei.,te

i.,p,i.

al nu,ssiit,o

L, J -,.

di

13

dello pertantn

è

l,

110

heap

8,,

il nuni ero

H

uno

B, e B . totale

clei

di

dall insieme

L albero nndi

8,

binomi rie dello

di LÞ,-, J

rappresentazione

per

gli

heap

13 nodi.

H con

binomiale

he p

è costituito

he p

la chiave

padre. hanno

radice

dello

descrive

20.3 a

tigura

hinomiali

alberi

ha è 13.

S nodi,

Poiché binomiali B ha

la rappresentazione con 4 nodi

l ordinamento e B,

ha

un

solo

388

-

20

Capitolo

20.2

binomiali

heap

su

Operazioni

1110 io

o

In

ioio

.

oioo

roao

Figura F oura

20.4 ,

L albero

a sinistra piùiuasmi

binomiale

i ni

8

e il puntatore

sibfing x

nodi

i sono

al primo

erich etichettati r

fratello

d i d estra

orap x NIL.Seilnodoxnonhafigli,alloraehifd ora . x vc x ing x

orasi il numero

sic.

dei

suoi

figura

La

figli

le radici

aremo e

delle

gradi

lista

a un a

ing xj

ea

H

head Hj

è il puntatore

b,o,.1

o

caratteristica

sono

di lista

o,de

corrispondenti

dell

ris rispe ettoto

aal gradod

che,

qual qua

20.2-10 .

Creazione

di

La

hea

lista. . S .

sottoinsieme

di

rispetto

fornisce

il meccanismo della

a

alla

...,

Lt l

H con

n nodi,

con

. d

della

c

lista

11 di H,

delle

questo

I

nella

lista

d

11

che

i che

N

O

1,.

Esercizi

V E

NIL

2

x

head H

3

mine

4

while

5

Supponiamo binomiale tra

che e che

degree siblin

x sia

un

sibling x g

n odo

di

albero

c mt.. . Seex x..... non

e de g r ce x .

g x

un

binomiale

è una

Cosa

contenuto

radice,qua è

in

la relazione

x

en.

do

if

è una

quando.z

uno

hea

Si Siam Sl,

un

cap

nodo,

diverso

inomiale

qual

da

un

nodo

radice,i e, di i un u

k la relazione

esistente

a Ib ero

tra

b inomiale

Supponiamo me

di

iante

una

m binarie e

n e j

associare

visita

delle

in ordine

it uguali

a

etichette differito,

1 nella

sua

binarie come

ai nodi

in uno Uno

e degree .r

rappresentazione

con/,-bitcontengonoeeattamentejbit

nodoxè

uguale

al numerosi

deve

stanno

olla

destra

1

S dello

204.

Quante

Sia.v

iin

strin

la

descritto

nella

correAtC

il minimo chiaman

della 20.3,

figura

C

procedura restituisie

iit

i destr

variabile

llClla

nodo

radice.

y il puntatore

risultato

un

al

puntatore

BirlnwwL-

Per

corrente.

minimo

lo

argomento

al nodo

chiave

la

pertanto.

procedura

con

Bi owi i-Hc v-Miwwuw, come

La

la cui

chiave

heap ha

he valore

l.

d 0

a un

associata

e.

heap

dell ordinamento

proprietà

essere

necessariamente

un esempio.

la

soddisfa

binomiale

h ap

lb figitra

binaria. l

1 che

d nella

sibling x

v

return

variahile

descrittn

k8l X

X

g-

x m

minima 20.1-3

È

ra ice. radice

contenuto

degree p xj

n in I12lll

7

esistenteente

9 20.1-2 . -2

A

20.2-5.

l Esercizio

key x t4811

8

..succede

.

sia

MINIMUilt H

HEAP

l

6 20.I-1

La

minima.

valore

il cui

chiavi

esistano

binomiale

heap

chiave

la

con

nodo

al

non

che

assume

uno

di ingresso

parametro

il puntatore

risultato

a esaminare

andiamo

come

ha

come

si consideri

proposito

BlNOMlAI

. hend H

opportuno.

d

radici .

h

inoltre

restituisce

memoria

minima

e restituisce

n nodi,

i

.

J

radice

prossima

radici

per

b binomiale

aveva

che

elemento

delle

h cap

la procedura di

è 81,

BwowiAt.-HEAv-Mtwwuw

procedura

la seconda

realizzazione l,

a quello

di

lista

0,

unque

vuoto spazio

esso, La

in un

lo

assegnato

avergli

dopo

esecuzione

chiave

della

Ricerca

wtt.,

di

il tempo

binomiale

heap

uno

crea

head H

con

H,

oggetto

un

degli

inoltre,

i

esercizio

per

binomiale

heap

nuovo

un

Molce-Btmowtwi-Hewp

procedura

Chiaramente

in una

lasciato

i

ree ,

rappresentazione

crescente

il nome

alla

o,B

della

o h cap

è il puntatore

testa

cam

organizzate ... d-

NtL se x è l ultimo

gx Il puntatore

con

differente

si

, C

altra

un

ruolo

ora

un

modo , abbiamo

costituiscono

ice,

nodo.

in

binomiali

ing

del

un ulteriore

binomiali ia i dell e

ordinate

heap

radici

si

p

sono

egli

alberi

a questa

d e radici

ro neta proprietà

anche

degli

riferimento

ista sta

nodoxcontiene

binari

d e 1 no d ox.Sexèunaradice, - If 1tresexèilfigliopiùadestra

n-.ino

x

ogni

il grado

mostra

20.3

binomiali

Infine,

numeri

on

Esercizio

l esame

operazioni

delle

superiori

limiti

oooo

è

inferiori

limiti

dei

heap

solamente

in esame

Prenderemo

20.1.

su

operazioni

le

realizzare

possibile figura

dalla

descritti

di tempo

limiti

nei

binomiali ooio

sia

come

mostreremo

paragrafo

questo

II

lClllp l

Biv w m .-Hr . v-tvl e

la procedura

Poiché Cl/

CtCCLl71 lllC

C

0 1,

Il .

w esamin

al ni stimo

Llg J

1 radici.

il uo

il

Heap

Unione

di

due

heap

maggior

che

Uviou

coilega

seguente

unisce

de1le

parte

ovvero

assieme

py sibling

3

child degree

binomiali

che

presenteremo alberi

gli

di y.

verrà

utilizzata

nel

binomiali I albero

Pertanto

le

B,,

come

seguito. cui

La

di radice

- diviene

di un

lo

albero

B

grado.

B,

di radice

La

k

Q,

17

then

18

else

degree J

X C- lléXE-Z

return

di ogni

il figlio La

alla

heap

che

è ordinata

radice unisce

due

il calcolo

fonde

alla

procedura

heap

20.á

figura

dei

figIi

la rappresentazione degli

di un

B,,

H,

e H,

nello

la

si avvale

della

in un unica

lista

rispetto

al grado

è lasciata definita

nel

le liste dei

delle

esercizio

per

radici La

in tempo

lo

ausiliaria di H,

e H,

realizzazione

Esercizio

heap

albero

INON1IAL-HEAP-UiVION H ,

1

H-

lista. B

2

head HJ libera if

E

ordinata

6

7

then

Oltre

Questa

nuova

la procedura

fondono

della

di H,

llPX1-X

svhile

BtwoMwL-Haute-MERGE H

10

H,

return

do

e H,

ma

non

della

modo

deIla

fprev-x 11EXE-X

X,

c

Caso4

I

CBSO

4

è divisa

Bt o n c-Hip-Uno

al

che

le

radici

due

le liste

fasi

fonde nodi,

dei

grado

esistano

due

in

Bir oin c-HE -MaRce,

rispetta

accadere

è presente

manifestare.

procedura

crescente

Potrebbe

in cui

Bwowlwt.-HE P-Usto

procedura

si possono

procedura

i ri risultano

assieme

molto

in una

e H sono

dato

efficienti

lista

unica

ordinate

radici

di

H,

procedura

esamina

cnncatena

la radice

Se cui

dalla

i due

l unione

si riferiscono

lista

heap

per

e

che

le liste

delle

liste

la

in un unica degli

radici di due

più

fase.

prima

assieme delle

non

ma

la lista

H è una

radici

di H, e H,

lista

ordinata

heap

lo stesso

con

crescenti.

gradi

per

Le

1-3 .

linee

liste

delle

radici

ERGE fCstituisce

B twowtwt.-HaAv-M

e la procedura

crescenti

gradi

allora

H, le

richiede

B io.,iwi-Harar-MERoe in

radici

H

con

il grado

relativa

testa

liste

alle

tempo di

radici

delle

alcuni

entrambi

vuoto.

Si noti

elemento.

A

alla

puntatori

x è il puntatore

alla.

radice

è il puntatore

prei-x

sono

è lo heap

almeno un

contiene

a lista

nell

basso

delle

radici

dato

0m

la

che

e H successivamente

H,

ed allo

tato

risu

tempo

stesso

in ingresso.

in ingresso

vuoti

heap

più

lista

binomiali

di due

introduce

H

lista

delle

questo radici

vuoti che punto

la

termina

la procedura

a partire

linea

dalla

4-S

linee

la

6 sicuramente

Bisowv,c-HEwv-Uwox

procedura

di H

in esame.

alla

radice

che

alla

radic

cnn

lo stempro

precede

x nella

lista

delle

radici

v. e

SE6llllg XJ

uext-.r if

ire t-.r

xit. degree- r

c

elegree- nevr-x

sibling nevi-s

then

X

else

c

prev-.r M

he

segue

.v nella

lista

delle

nevr-r.

sil liitg v

radici

oppure

.t

/IC.ll X

if / y .i

è il puntatore

v- Nti

e degreefsibling nevr-xjj Il

esempio che

la

sibling prev-x

È

Caso4

è

NIL

8

4

c

1.3.1.

paragrafo

head H

9

Caso

x

chiamata in

leeoperazio o erazioni

mt.

pi PV-X

.r m

un casi

H, e R,.

la rimuove

oggetti

head HJ

5

ext-x

HA

gli

4

t

BINO11IAL-

HA

4

mostra quattro

dalla

binomiali

MAKE BllùOlvtlAL-HEAP

3

3

Caso

risultato e H.

puntuale

20.2-2

costituita

fratelloin un

di H,

procedura

nodi.

nodo

heap

e restituisce

la rappresentazione

procedura

del

figlio-sinistro,

alberi

albero

binomiali

dei

delle B

CQSO

c

H

Concettualmente

lista

distrugge

crescente

MERGE

alla

la procedura

assieme

in modo

che

l ordinamento

è la radice

BINOMIAL-HEAP-MERGE

procedura simile

della

y in testa

dato

soddisfa

B oseAL-Lidi ,

procedura

HEAP-MERGE

lista

binomiale

Durante

il nodo

correttamente

seguente

procedura

dell unione.

inserisce

opera

a sinistra

più

sibling

next r

c

sibling

Q

La

I

BtvowiAc-Ltxx

La procedura

destro

D

y -

procedura

01.

head HJ

BtvoinAL-LIYK

ciascuno La

X

wL

19

next-x

c

o Caso3

ne t-x

11811-X,

if prev-.v

else

22

cftild z

fyj

sibling

-LI, IK

3fNplti4l

16

-

stesso

l albero

m

sibling .r

dalla

Bwow c-HE r

hanno

y con

la radice

sottoprogramma

procedura

radici

hen

15

--

c

4

heap

assieme

il padre

BINOMIAL-LINK

2

tutti collega

z diviene

I

due

operazioni

procedura

391

binomiali 14

L operazione

binomiali

elegrc

v

che

garatstisce v Casi

I e 2

t

l e Z

Casi

le radici

graclu

ahi mo

nodi

adiacenti

nella -

l

key nevt-.i-

/UGGE

,J

il

IC

I C, . ,

,

.

.

.

list

i H.

d

e he

l

la liitaH.a

-

ill

l llC

he atfH,J

a

Q7

l2

hecd H,

15 Q25

l8

37 30

23

Qs

MAS

Q22

BLVOltlAc-HEAP-MERGE

A

10

Q

12

head Hl

d

8, 29

ne.rt-.r

.t

pPE V

Q28 O

31.

Qm

Qss

Qzs

QI7

Q24

/31

Q22

Q41

45 Q32

393

binomiali

Héap

Ql

50 4

Caso

/50

Qss x b

headfHJ

QS

next-.r

Q12

7

18

6 25

2S

037

33

8 30

Caso 3

45

R

032

.10,

29 48

/22

024

7

IIÈXI

vs

37

Q

QUA

17

Qis

050 Caso

55 X

15

3

Q18

31

ne.vr-x

X

pI C 1 -X

head H

e

44i

Q4f

30

Mgg,

3

50

Q ss

S

Iread HJ

c

IJÉ Xt

.l

X

pPPV

Q18

33

IO

Q4i

Q22

Q3l

Q44

28

so

j25,

Q33

zg

32

24

r 4g,

41

I

,pp

48

Lesecu ione

e che

key x

tre

nella

lista

braso

m er

risultato

delle

I

radici

caso

3.

c

il gradodixè3. ciclo

3.

next

Cf

sia

Dopo

x che

assiepare

H,

coi un

e H.

avan ati

di

radici

ar

at

4. tra

di

una

le

situazione

Questa

x. Un

ciclo, Il caso

ovvero

La

delle

del

grado,

nevr-.s

ciaè

punta

nella

figura

da

albero

I 1- 2 ed

nexr-.v

ciclo

20.6 ,

di un

linee

puntatnre

2, mostrato

del diversi

figura

collegati

il puntatore

Il casn

degree x

nella

vengono

modifica

sono

x è la radice

istruzioni

modifica

nexr-x

1, mostrato

x non

stesso

x che

quando

/ . Le nevt

in variante

proprietà

sia

1 che

ogni

i puntatuii 21

al ncido 20.6 b ,

volta

che

si comincia

si

il caso

per

delle

I casi

il corpo

è la radice

il compito . ono è un che

degree xJ

quando

fattt

avanz

istruzione segue

si presenta

di

di gestire

il nuovo quando.v

albero

una

ree est-.v .

B, per

situazione

questa

arredi cnmune

un

w de

posizione

a tutti

i casi

I

qualche i nodi

nella a seguito

radici

infine

delle

j

deg,.e

fsibling

fnc..vt-xj

hanno

il compito

di due

radici

eeg n lo stesso

avanzare

fatti

sono

sia

necessari

11-12

linee

due

casi

il caso

per

entrambi

di gestire

simmetrici

dei

al passo presentare , , sempre .si presenta

due

collegati

assieme.

di

casi.

ione

segue

un

2. I due

casi

che

caso sono

e.

qualsiasi sostanzial-

-. ha la chiave es est-x di chih traxe tra xe controlln piii piccola radice do ocheiduenodisonostati dop il nodo il nodo ohe diventerò

.sia ,

quale

itenz

i caso ca. dopo o il

dal

e dipendonn

a i i. os stabilisce

odo

c degree sibliirg next-.v .

.si possono ... ,

uno

è la prima

quando.r

listo

H.

della

aav.v. L I5

con

is istfuZiotle

e dell

fa diventare caso as ,,- 4,

. l linea

-..-

14 rimuove

nest-x

il figlio

più

mostrato

nella

hgura

lo

J.

il valore

di.v

per

l iterwiuitc

Ilerl-.Y-. clalla

z sinistr

quando

degree nevr-.i

i p untatori

fa i controlli

le istruzioni

degreefnext-x

controllo contro

Nele di tre

SSO al caso

questo

x e

nodo.v. è I i prima

2

3 e 4 si presentano

sicurameiste, sic, mente

presenta

analogo a

.

l CélS1.

ues Questi

a eseguire

in modo

affrontata

P

r ii.

B nexr-.v

hanno

l idea

è che.

viene

unn

raclici

lista

contittna

0

svhile irellec

posi-ione

20.5

Dopo

e

itera -iohedelciclo

NIL

Figura

che.v

ati

caso

grado

b

degree x e next del

Ql

Q50

H, .

grado

abbiamo

collegamento

I ultima

Qt estaè

/ranno

sono

lo stesse

ulteriore

iievt-.r le

i puntatori

fine

radici

x è 4.

binonriali

l

che

collegato

vengono

heap

Btwowwi-HeAP-MEzce H,

Daro

Al1a

d

di due

il caso

i puntatori

chiamata

aver 2.

Gli

a

H.

Dopo

r è la prima

il gradodi

del

radici

caso

grado

itroltre

della

delle

si presenta

il coppo nexF-V

lista

stesso

leradici

eseguito

e pertanto

Bel lo

i t.-HEe-Uwow.

dell esecu. ione nella

siamo con

Buoi

proeedrra

radice

radici

assieme

si presenta

radici

è it

prima

key nevr-x di

collegato

dopo

H

x è la

primet ione

aver

del1a

bi iomiale

Ini-ialnrente,

posi

44.

ss 05

heap

la

31

Q22

Qs5 Figura

è

10

7 37

CJ50

Lo

29

g

15

Q18

17

Caso 2

g

6

3

head Hl

A

iucceisiv r.

2,A. , ùl.

lista

dde lie radici

e l istruzione

delle

linea

di.i. .. ,est-.v -.

ha

, la chiave

p iù

nieiola. p

e quindi

x è

Heap

sibling nerr-.r

v

prev-r

Caso

ne a-x

d.

I

la

dopo

della

chiamata

radici

numerodi

di radici

un numero

al massimo

contiene next-x

prei-x

J ignj 2

1gnJ 2

0 lpi .

imo

Llp al

contiene

H

BLSOtllAL-HEAP MERGE,

procedura

aLlgnJ I

pari

al mass

I e H, contiene

aLlgn,J

pari

39

binomiali

,J

1 radici

a

e

di esecuzione

Il tempo

un

massimo

ll

B

B,

B

B,

next-x

AV-X

sibling nexr-x

x

prev-x

b

di una

avanzare

fatto

delle

lista

nella

posizione

H

radici

è O lp .

totale

il tempo

Pertanto,

radici.

delle

lista

dalla

radice

una

o si elimina

nerr-x

viene

il puntatore

iterazione

a ogni

C CBSO

2

I I B

B

seguente

La x

prev-x

next-x

sibling next-s

Caso

B,

B,

x

prev-x

c

ne t-.v

I

B,

6

1quamo

casi

che

3

child v

4

sibli t.,o J

5

degree v

6

head H j

7

H c

si presentano

durante

l esecn-ione

della

caso

questo

di

nuovo

i p n2tatori

ar

a .-ari

di

una

nef

posi ione

le

lista

delle

crea

un

albero

0 .v

radici

e alla

aver

procedura .v punta

eseguite

istruzioni dallo

assieme

due

del

stesso

alberi

B,.

caso stato

Infine,

di uno,

se.r

le istruzioni

Il tehs po di eSecUzione

due

è il primo del

caso dell

3 o del

Nella

lista

di

B .

tre

Se.tè

liberi

8,,

caso

x

delle

radic

il snlo

albero

allori

restituita zero,

presenti

alla

successiva all albero

punta

B ,,

seguente

come

uno

o due alla

del

B,

assegnata

memoria

fa uso

non

successivamente

nodo

della

procedura

allo

heap

B ii oin t

-

minima

e

minima

ri sultato

alberi

B,

successiva

successiva

dalla . quincii

è Ol

n.

1

trova r v

Vt .tl OI1

la

radice.bacon

chiave

H inverti

H

la

cl i ve

nella

minimi

, lista

delle

-

-

radici

di

H

ed

elimiisa.v

il

puntatore

.dallalista

H

M. vv-Bii nwwL-H .w

2 3

m

f Clll

della

Bi owi,ii.-l-lr,av-U I ll

X

lista

dcllu

l ordine

n è il IllllllLI l I

di

radici

delle

4

dove

la

con

nodo.

BllùOMIAL-HEAP-M ERACT-MIN F

elemento

Bii owwL-Hz.sv-Ur lnw

puntatore

a quel

il nodo

H

binomiale

he p

uno

da

ciclo

iterazione

iter tziOllC

un

risultato

ottenuto

2. prncedur

che

solo

2ù.2-8.

chiave

elimina

procedure come

restituisce

41 iterazione

puntatore

essere

o trealberi

di

posizione

procedura

un

con

l

il

Bwowiu.-Hz v-MERGEpotevann al primo

4.

le

affrontata

collegando

caso

eseguito

viene

la

con

nodo

la

liberare

nell Esercizio

è descritta

H

binomiale

heap

della

realizzazione

H . Una

del

di

il conapito

anche

ha

uno

Ol

in tempo

crea

procedura

Ha v-Usto

La Dopo

H

B,, A

while

xlt.

BINOMIAL-HEAP-UN1OY H,

temporaneo

sengono

opera ione

questa

stata

Ntl. m

Estrazione x

già

wc

HEAP-Uno in

sia

-Hr- .wc-

Blsoilwt.

procedura

La

Anche

l ey vj

MAKE-B1NOMIAL-HEAP

R p .v

key nert-x

RI

20.

assumia-

Naturalmente

chiave

la sua

e che

4

l

B

m

l 2 sibling ne t-.r CGSO

Figura

H.

binomiale

heap

di memoria

X

HEAP IYSERT H

BINOidlAL

C

key .r

gih

x in uno

spazio

suo

B

nexr-x

B

un

B,

key next-x

x

prev-x a

abbia

nodo

ur

inserisce

procedura

definita.

A

d

nodo

un

il nodo.v

che

mo

3

k

I ey x

di

Inserimento

B.

lista

dei

tigli

risull llltt. ani H.

H

di

.v e

ssegna

a

hea lfH

al

primo

Heap

head HJ

a

Decremento

La

o

di

seguente

heap

assegna

H.

La

del

grande

un

valore

head Hj

37 41

28

Iread H

c

10

l

13

2

10 28

/41

head H

25

12

13

corrente

2

077

then

3

kc x

4

y -I

d

23

9

8

11

Q4z

14 i

della

chiave

del

chiave

di un nodo

x appartenente

di una

situazione

di errore

nodo

a uno il valore

se

x.

x, k

la

error

chiave

nuova

ha

valore

un

della

maggiore

chiave

cocente

k

5

È

6

while

V

/

-w

mt.e

do

le y

key

scambia

8

l ey i

c

scambia

-

bl

m

l ey informazioni

le eventuali

contenute

addizionali

in y e

-

9

i 38.

817

I alla

la presenza

key x

7

l6

18

if k

valore

nuovo segnala

procedura

BIN0k1IAI.-HEAP-DECREASE-KEY H, b

397

chiave

procedura

binomiale

k è più

una

binomia1i

10

Qzv Iread H

d

Questa

25

chiave

a galla

Qzn

ps Qr. g

chiave

errore

allora

07

Il

ristcltalo

delf

esecu

icme

della

ciclo

Blwowwt.-HEwP-ExmAct

procedura

Mt .

a

Uno

di

H

while

La di questa

procedura

è mostrato

nella

figura

20.7.

Lo

heap

binomiale

in

lemma 6-10

di

alberi

8,

B

...,

8,

t, a tigura

0.7 c

fa vedere

come

l operazione

della

ri a

il nodo

y noi

rispetta

con

la

due

nodi.

clelia

linea

5 restituisce

il nodo

x.

chiave

l albero

I ordinamento

del

Infine

comincia

nodo la

l la protnndità

vengono

ripetute

di

una

parziale -. assieme

padre

assegna

procedura

a eseguire

le istruzioni

BwowiAI.-Hcpp-DzcRi

procedura

rispetta

binomiale

Ass-Ksv

massima

del

al massimo

per

un

del

chiave

l ordinamento della

heap

a tutte

le

tempo

n quindi

mrmero

di volte

padre

della di

situazione comincia

a

iterazione del di y. Se y è dello

parziale e pertanto

la sua

informazioni

heap. chiave

aàdizionali di

quindi,

un

livello

successiva. 0 lgn .

Per

la proprietà

le istruzioni

del

ciclo

pari

il valore venire

il valore

una

A ogni

- a y avanzando,

richiede

si fa

la procedura

dell iterazione

nodo, è I

che

al nodo.v.

e della

y

binari

segnalata

punto

punta

di / e

decrementa

he p

è controllare

A questo

inizialmente

20.8.

degli

viene

se non

al nodo.z.

i valori

figura

caso

procedura

corrente.

i che

nel

while

a Lignei.

chiave

3.

infortnzziotte

a scime

l istruzione

si esaminano

e poi

L operazione

Infine.

6-10

usata della

passo valore

chiave

il puntatore

allora

ai

20.

la nuova

della

dall esempio a quella

del

kc -

Eliminazione radici

Il primo

eyjy

nell albeio,

I I comportamento

heap. maggiore

tramite

linee

n/

associate

e H,

analoga

si assegna

è scambiata dell wti me

sia

è evidenziato

tecnica

nello

non

Altrimenti

heap

una

l aibero

la radice Figura

con

la chiave

nuova

scandire

2

come

procedura,

di una

che

che

elitsina

lo he p

da inno lseup

bin miale

nnn

binoeiale

conteng,i

Brs wiAc-Hcw-Dt .i.r.rt . H,.v I

Bixoiiini.-Hr., sv-Drc B i o1

1Al.-

t t .wsi .-Kt s Hl Al -EXl

R A CI

I èl r t

i H..r. tl

H la chiave

chiarii

il cui

di cm nodo.c

valore

si.

e tutta

u uale

a

.

2 del linee

398

Heap

20

Capitolo

20.2-3

head H

a

mostri

Si

lo

20.2-4

lo

mostri

Si

elimina

20.2-5 head H

b

Si

il

spieghi

della

Qm

Qi

Qg

Q

11

Ql

20.2-7

Q4s

Ql

Qzs Qvv

38

so ro

dell esecu -ione

y e

è ancora

il suo e quesra

sono

è la

stati

soddisfatta.

valore

Qv

usr

un

si

livello

ulteriore

heap

della

del

nella

scambio

un

-.

5 pristina

La

Le

b

nodo.x

abbia

un

cui

non

mediante clsiave radice.

valore

più

assegnare sia

dell oi

svhile

i dei

cliiai

possibile

una

chiamata

e tutta

della

radice

Questa

di tutte

le altre

dinainento

heap

dei

poi

che

di due

Alla

della

luce

temporaneamente.

eliminata

al nodo

dallo

he p

fino

con

una

fare

20.2-10

in

Si mostri

si fa venire non

chiamata

BINOIIIAL-HEAP-DELETE

procedura

richiede

tempn

senza

dia

un

esempio

20.2-2

Si

scrivano

di richiede

le

istruzioni

due

he p teinpo

della

l inari, 8n

con per

prncedura

n

a galla

si raggiunge della

ciascuno, li

Bitunwtwt.-Hvw,-iMrkrv,

array

teli dei

che due

1J

di

un i

di due

si

20.2-7

la

l uso

richiedere

radici

delle

sono

le operazioni

procedur

una

inserisce

numero

binario.

heap

binomiali

la

riscriva della

in uno

chiave

le

Si ana1izzino e l operazione

Bixowttwt.-

procedura

Btxos tAt.-HEwv-

procedura

ordinate

per

definite

su heap

modifica

del

ten po

di ingresso

per

i quali

alcuna

Si spieghi

grado

decrescente binomiali

che

invece

essere

possono

asintotico.

di esecuzione

ma

Heap

2-3-4

non

Q lg .

per

cui

il ten po

Bt owwt.-HFwv-Mwiwvw Cfr.

Bwowiwt.-HEAP-EXTRACT-

le procedure

DELETE

C BlNOMIAL-HEAP

il motivo

Biwox1IAL-HEAP-INSERT.

Q lgn procedura

he ip.

non

da

tutte

valori

Q lgn .

O lgn .

elementi

concatenai.

di unione

BINON1IAi.-HEAP DECREASE-KEY

Problemi

Buii.o-HEAP.

un

dell Esercizio

modo

se le liste

Si determinino

tempo

ZO- I

Si

incremema

binari.

risposta

crescente ,

Esercizi

20.2-1

l operazione

numeri

in

che,

grado

MIN,

Successivamente.

a che

che

che

l operazione

tra

esistenti

questo

il caso

affronta

possa

eseguita

essere

deve

pmcedura

che

al

associata Per

tra

di somma

Btio. SIAL-HEAP-EvvR cr-Mie. La

La

caso.

questo

valore

con tale

in modo

Uwiov,.

20.2-9

heap.

20.2-6

L Esercizio

associata

di

presenza

la chiave

modo

i y e

puntatn

la chiave

BIAOlv1IAL-HEAP-DECREASE-KEY,

addizionale

in

nwt

termina.

nello

presenti

.

neppure

procedura

viene

fa in modo

chiavi

il valore

chiave il valore

l informazione

in

anche

e l operazione

esistenti

HEAP-INSERT

nodi

durre itera ic ne.

.appostamento

il ciclo

di tutto

prima

piccolo

a questa utilizzare

in alcun

Btwowtat.-Hawp-DEt.ate

dehv elri

chiave

seconda

della

la proprietà ulteriore

e pertanto

svhile.

ciclo

padre

linea

ina ed

è soddisfatta

del

chiave

prese ua rze11 albero

BINOMIAL-HEAP-DELETE

è sufficiente

rappresentare

anche

O lp .

binomia e

realizzate procedura

possibile la procedura

le relazioni

Si analizzino

per La

correttamente

opera

non

le istruzioni

Si riscrivano

a

uguale

operare

possa

La

a

20.2-8

irera.-ione

prima

è minore cile

di

Dopo

sia

correttamente

relazioni

Bi ow c-HE v-DfcRE sF-Mv.

procedura

5 ne1la

7

spostati

c

li tea

situa -ione

dell ordinanienro

proprietà

della

della

prona

decreinenrata

scambiate

I psmratori

la

risultato presenta

non

Si riscriva

in tempo

heap

Q4z II

valore

Qm

Q18

chesi

che

che

BtwoneAL-HEwv-Mwim vw

procedura con

dell operazione

20.8 c .

figura

della

che

a .

uguale

che

a- .

ancora

20.8

la

risultato

come

ottiene heap

di chiavi

modo

in

valore

Supponiamo uguale

f

situa-io e

cui

per

in presenza

con

operare

,y è stata

motivo

si

dallo

28

dell operazione

20.7 d .

figura

della

heap

38

Q4z head H

che

binomiale

risultato

come

ottiene

nello

24

di valore

procedura

chiavi

20.2-6

Figura

heap

si

che

binomiale di valore

la chiave

correttamente 1

c

heap

la chiave

inserisce

399

binomiali

Problema

2-5.

di esecuzione e

SOI10 nel

CSCQUltC

caso

Biwowwt.-HzAP-Uslov

1A

pessimo è

400

Capitolo

20 Heap

Gli

heap

chiavi

2-3-4

sono

chiave

nel

interno.v

l e x.

contiene

un

di radice

l altezza

x.

realizzino

le di

gli

sono

Uturoi

complessivo

degli

DECREASE-KEY dole

valore

un

C.

INSERT

inserisce

d.

DELETE

elimina

e.

Exn cv-Mi .

una una

l

un

al

un

ordine

chiave

in cui essere

per

di lettura

heap

2-3-4

le

esattamente

più

viene

del

memorizzata in

del

Tc-8

su

2-3-4

su

a-e deve

due

alla

heap

in

di uno

essere

modo

2

for

memoria

2-3-4

che

con

in tempo

con

chiave

x con

Uslow

restituisce

la foglia

il tempo

n elementi

O lgn ,

dove

heap

Algoritmo

Nel

Capitolo

minimo come

heap

n è il

minima.

chiave

di una

determinata

foglia.i-

una

chiave

la soluzione

con

vengono

che

si

E m

R.

un

Diciamo

più

minimn

non

v u,

i

ottiene

unendo

due

oriet tato

sottoinsieme totale

con

algoritmi

che

orientato.

In questo

utilizzati

albero G

è il peso

di

G un per il grafo V e tale che il suo peso

non essere

possano del

minimo

wT

heap

2-3-4.

La

Iteap

gli

risolvono

il problema

definire

per

un

di

trovare

vogliamo

problema

algoritmo

far

il

vedere

differente

per

di copertura. V,

dell arco di archi

E

a cui

a,

i.

Tc

è associata

Si vuole

E, senza

una

trovare cicli,

che

funzione I albero

peso

ii .

di copertura

connette

tutti

i vertici

minimo. Utilizzando

le

V, E, degli

tecniche

costruisce

procedura dei

vertici

u, archi

v

di

che

introdone

il minimo V e, per

u C V, incidono

di

estrai

8

siassumacheue

9

ifiwj

I arco

insieme

generico

I

v

u,

di E, con

il peso

V e vc

th en

T

T v

11

V m

12

E

V

a,

V u

mE

minimo

V

v

V e cancella

V

uE,

descriva

ogni

oppure sui

nel

albero insiemi,. v c vertici

poi-a

rafo

di copertura di vertici

24.1

si

T. La

procedura

V . considerai

V,j che

pp rtengor o

può

a V,.

una descritte

nell ipotesi

realizzazione nella

di questo hgura

che

gli

heap

20.1.

algoritmo Si determini

aggregabili

siana

che

fa uso

delle

operazioni

il tempo

di esecuzione

realizzati

con

heap

degli della

heap

soluzioite

binomiali.

al capitolo

aggregabili

Il,ll /T

sia

V è maggiore

procedura

w u,v

g

un

7

aggregabili

piccola.

di copertura

due

di un grato

grafo

che

albero

presentati

problema

Consideriamo

seleziona

l-.

la chiavè

2-3-4

il iniui no

aggregabili del

E Gj

insiemi

assegnan-

in ingresso.

di copertura

heap

gli

per

24

albero

do

10 di una

e

v,.v degli

sia

Note 20-2

il numero

di

proposta

lo

i due

E,m while

VG

foglia.i .

estrae

distrugge

v, c

Vm v

4

Si

f

i vertici do

disco.

heap.

foglia

tutti

6

heap

eseguita

tale

HEAP G

3

kc x .

foglia

1 nodo

piccola

mantenuti

e scrittura

MST-MERGEABLE

401

una

Ogni

particolare.

della

height r

pensati

Negli

x ccintiene

valore

campo

sono

f

dei

il valore

che

è uguale

parti

parte

il puntatore

I- tale

hanno

a-f

elementi

decrementa

non

motivo.

foglia

5

delle della

ogni

operazioni

seguenti

L operazione

b.

che

il seguente

per inoltre

foglie

r contiene 2-3-4 heap

le operazioni

restituisce

delle

necessarie

operazioni

tutte

2-3-4

foglie,

srnall x

Infine,

O lgn .

Mtwisru

chiavi

radice

numero a.

alberi nelle

La

non

pertanto

esecuzione

Le valore

dell albero.

principale,

dagli

solamente

campo

sottoalbero

Si

differiscono

contenute

binomiali

dimostrare definisce l indie,-,le

che una

la

seguente partizione

Gli

heap

binomiali

binomiali sono

sono state

stati

studiate

introdotti da

Brown

nel 36.

1978 37 .

da

Vuillemin

196 .

Le

proprietà

degli

heap

Gli

heap

Nel

di Fibonacci

Capitolo

alle

20

operazioni

richiedono

l eliminazione

un

punto

altre alcuni

richieste.

algoritmi

lato.

Per

chiamata caso

per

degli

pessimo

conosciuti

per

minimi

con

Da

un

singola

con

programmazione heap

o k-ari

binari

interessanti

nnn di

di dati

niù

si riescono

effetti,

heap

Come

esatta.

dei

permettendo puo

essere

le tabelle

di dati

l anali i

delle

operazioni

specitiche

ilostra

metodo

di questo per

fsrcietlta7iOtle

le

del

sugli

sul

moltissimo

L espnsizione

heap dagli

vpefazioni

dèlla

h ap

binomiali

non

di

potenziale presupp ine

d

complessità

della

degli

ordinari sono

di Fibonacci

una

lo avrebbe ammortizzato

in

li

llCap

nel del

q cl

capitolo,

di

Fibotl u Ci

di

meno

mantenere

per

un valido

la

nel

seguito

cosi

si

hu u

del

capitolo

e si

l 8.3.

paragrafo Capitolo

esempio

l intuizione

ammortizzato

si trovano

I

heap

heap con

struttura

sono

di Fibonacci

descritte

in uno Gli

eseguirlo.

in tempo

lettura

una

In

alberi.

affermazione

chiamate

Il lavom

migliori.

che

di

insieme

binomiale.

hanno

è conveniente

analisi

FihollilCCi

albero

perché

gli h ap alle

1pp,iono

struttura

la

se questa

E vengono un

asimoticainente

pensando

del

di Fibonacci.

di tempo

anche

Del.v

co ne

paragrafo18.4,

capitolo

nel finora

o i cammini

heap

he p

è un

binomiale,



a quando

heup

24

gli

pratico

limiti

stessi

binomiali,

si comporta

di tempo

costruita

heap

sugli

né Decreta,sF.-Kcv

hno

dinamiche

struttura

le

limiti

rimandato

di una

basano

Se dello

comunque

differiscono

struttura

basati

sona

gli

heap

a uno

analoganiente

albero

ogni

a ottenere

gli

ogni

O lgir veloci

utilizzati

interesse

ciascun per

di Fibonacci.

heap

gli

e

Quindi

un alto

per

più

Capitolo

meno

siano

esempio,

01 al tempo

essenziale

ntoltiplicative si che

teorico

riuscisse

minimo

applicazioni.

di vista

punto

con

di Fibonacci

costanti fanno

delle

parte

che

semplice

è n mpletamente Fibonacci,

un

Fibonacci,

heap

gli

vincoli,

maggior da

a ottenere di

Fibonacci

i

gli

le

volta

una

ammortizzato

in nsaniera

di

al numero per

asintoticamente

di copertura

usano

di Fibonacci

heap

nella

25 pero,

pratico.

soprattutto

struttura

Uno

vista

di

punto

l albero

Capitolo

in confronto

rispetto

algoritmi

Gli

01. interessanti

applicazioni

miglioramento

non

ammortizzato

E se-Kev

Deca il tempo

di

che

quelle

particolarmente

piccolo

in molte

lati.

un grosso

trovare

quali

problemi

sorgente

molti

e binomiali.

binari

è

chiamare

possono avere

rappresenta

heap

DELETE

si verifica

situazione

su grafi

risultano

oltre heap

gli

che

in tempo

effettuate

di Fibonacci

caso

e Uwot ,

esamineremo

il vantaggio

hanno

nel

O Ipso

ExvRAer-Mtr

capitolo

ma

C

in tempo

forniscano Mt l uw,

questo

ExTRACT-Ml ù

possono

di DEcRE sE-Kzv

In

Vengono

heap

gli

pmblemi che

lwsERv,

operazioni

Questa

densi,

grafi

binomiali

quali

elemento

teorico,

di operazioni

openzioni

heap

DELETE.

stesse

di un

vista

il numero

quando

e le

offrono

di

gli

di heap

DEcREAsE-MY i quali

Da

come

di fusione

Fibonacci,

che

visto

abbiamo

le operazioni

pessimo

20 sugli Cntlle

heup

IQ ttgura

sii c/llella

di.ll l

binonaiali 0. .

stflltttlr

cile

l

degli

heap

analoga

sono

progettati

che

si riferiscono

noterà

analoghe

sono

In maniera

a quanto

a un dato

heap

sugli

accadeva

heap

gli

per

eseguite

operazioni

anche

l operazione

che

sugli

min

di

heap

HI

binomiali.

binomiali,

efficiente

richiedono

nodo

delle

alcune

eseguite

in maniera

realizzare

per

che

anche

a quelle

venga

fornito

non

di Fibonacci

quelli

dunque

SEARCH

operazioni

a quel

un puntatore

come

nodo

dell input.

parte Il

21.1

paragrafo

vedere

come

fondamentale

di

figura

nella

ne

Fibonacci, l analisi

per

operazioni

Nel

descrive

heap

e

ottenere

fa

21.2 in

i limiti

4i

e

rappresentazione Il paragrafo

min

tempo

H I

vengono

21.3

paragrafo Infine,

e Det.ere.

1a

ammortizzata. di

fusione

20.1.

DscREAse-Kzv

operazioni,

di

utilizzata

le

mostrati

rimanenti

heap

gli

potenziale

realizzare

ammortizzato

La

definisce

la funzione

presenta

21.1

si

binomiali

Fibonacci

due

le

presentate

21.4

il paragrafo

una

completa

parte

5

dell analisi.

degli

struttura

heap

di Fibonacci 35

Analogamente

a uno

I ordinamento

parziale

binomiali.

La

heap

21.1 b .

di

I figli

come

Le liste

in

da

dei

di

di x. Ogni

figli

y

usate

per

Inoltre,date

insieme

in un unica

Fibonacci,

ci

riferiremo

liste

lista

in tempo

a tali

di

con

alberi

essere

necessariamente

alberi

ordinati.

dei

figli

ha dei

veda

il paragrafo

I l. 2

queste Nella

OI.

operazioni

in

descrizione

maniera

figli

un

delle

in

Ci

di ctirare sen

x verrà

iranno

i dettagli altri

mantenuto

.z ha perso

un

due

nel

figlio

degree x volta

dei e un

dettagli

è diventato

marcare

diventa

non

di figli

a valori

il campo in cui

su come

nodo.v

il numero

nodo

i nodi

marcato

fino

volta

figlio

al paragrafo

ogni

Funzinne

il

lettore

21.3.

qualvolta

del

nodo

se un

nndo

f gli

nodo.

altro

potenziale

detto

Come

tiglin

dei

di un

heap Le

accedere

puo

a un

che di radici

di

e righr

heup

di

Fibonacc

minimo.

L

in

dato

lo

Se tutti

una

gli lista

alberi

di di

circolare

de

di

chiave

lieap

i. Quindi ordine

albero

una

contiene

Fibonacci.

lefr

è

marcati

in H.

tH

2 mH

esempio, i, Pereresem

altrn

di i un

insieme insi

Fibonacci minima

Fibon cci

uno

hip

a doppi

è di n col

il punta oreruii H li

alberi

H

in

una

lista

inecliante

questo

nodo

vuoto.

allora

Fihonzcci

un

è chiamato

j punl i3elle

radici

nodo

iiiniieo

nzidci

medi mte conce

della i

alla

lavoro, avaro,

radice ùello

arbitrario.

liita

la

lista

Jr le

delle ra Jici

turi

punt radici il cui

di v ilui

di

di

heap

pni -.,

che

un - ,

uniù

o

sia

grancle

di cui

he

, applicazione

n .1 seguito. i

irato .a o

i. equazione

c c un aanche

, limite

. q superio,v.,l

d dei

.somnm

potenziale -,. .a sufticienza aver . t , uso

,

di uno,.e. h -,

cn aire

letali

che

heap

lo di

co tante

q quantiù

il costo

di

tutte

a p di Fibonacciiniziconunoheap ison negativo l. l . rimarrà 1c

..

,c coih

una

le

varie

bisogno.

. gar n

debelli

p otenziali

indichi p er

3 1l.llpoteiiziale

è5 2

21.1

in figura

di

potremmo

p

lli

-

è dato . dalla

Fibonacci che

costante

di Fibonacci

heap

dello

il potenziale

a co t

simun ere Assumeremo i loro

per

di Fibonacci

da

è det nito

di Fibonaeci

heap

heap

unn

Dato

Fib bonacci. di F

.

e che c questa....,... .costante

operazioni

wi.

collegate

indicata al

il

n in H

sono

legaieento

min H

puntatore

li

de

1l potenziale

Assumeremo

i ui.... coctituiscnno. cos

dell albero

delle

1S.3

p araerafo

des

potenziale heap

sugli

operazioni

21.1

I1060. Si

nodi

del

il inetodo

utilizzeremo

prima, le prestazioni

H

Non

vengono

I nodi

diventa

nodi

dei

numero

il

H

nacci

Fibo

di

heap

un

in n H .

in H è contenuto

heap

sugli

indica di un

prissor

di

attributo

altro

un

anche

attualmente

una lista appic-

al

dei

mari .v

booIeani

a sua

informa ioni

queste

o

operazioni

lista

Z

chi

l alto ,

verso

vantaggi

da

lasciando

nella

Ihecce

a.

Sfrutteremo

relazione.

ngni

per

campo

creati

marcati

campi

loro

dall ultima

ci preorcuperemo non

della

clre

dato

capitolo.

i del

i analizzare ana compito

è 5 é

Flbonacci

lteapdi

rus ecifico

d

1

ilarori

appaiono

figlio.

due

concatenate

informale,

seguenuenri se

è arbitrario.

nado

-

.

La

p e14nodi.

ècuellaconterienrelachiave

he r

e riglv i

y

presentano

togliere essere

possono

dei

suoi

dei

y è l unico

lista

c

reno

indicheremo

lefr

il nodo

in una

si può

che

c

ai

tratteggia

,,

.

ordi o

con

albe,-i

cirtq,te

da

Fibo,iacciformcao .

di

henp

Uno

a

figura

dalla a uno

puntatori

Se

i fratelli

siffatte,

21.l

Figura

alberi

gli

si vede cfsild x

collegamento,

e destro.

Anzitutto

ordinati.

Come

e un puntatore

a doppio

lista

sono

compaiono si

due

sono

sinistro

Fibonacci.

di

insieme

inea

che

al padre

fratelli

collegamento heap

gli

non

circolare

in cui

l ordine

a doppio

circolari

ma

y in una

ai suoi

devono

non

binomiali,

px

lista

figlio

rispettivamente, riglv y

una

alberi

è un

di Fibonacci.

heap

radice

collegati

01.

cicate

una

Fibonacci

di

tali

heap gli

di x sono

sono

tempo

con

un puntatore

lefrQ

quando

hanno

se

uno

contiene

puntano,

allora

mostra avviene

Fibonacci

heap

anche

nodox

la liscia

che

heap,

21.1 a

da quanto

ogni

figli.

binomiale,

dello

figura

Diversamente negli

heap

uno

ri. ,tl,.

e r c ieile i

. iiuucnz i

di tipirazioni.

anche

4

21

Grado

massimo

min

ff/ t

analisi

esista

un

ammortizzate

limite

Fibonacci

superiore

con

operazioni

noto

n nodi.

che sono

quando

riportate

fornite

sul

L Esercizio

fondono anche

allora

massimo

grado

21.2-3

heap,

seguenti

paragrafi

come,

LlgnJ.

DEcReAsE-KsY

D tt

in uno

restringiamo

21.3

paragrafo

E, allora

si assume

nodo ci

quando

Nel

e DEt.a

capitolo

di un qualunque

fa vedere

Dn

di questo

che

heap

38

Qsz

di

che

fondono

sole

In

questo

IeszRv,

Ha v, un

insieme

un

albero

MwtwvM, di alberi

dimostreremo

figli

valgono

anche

Esercizio Dato

un

albero

di ogni

di

Inserimento

21.2

wl

il lavoro

di fondo

un

degli con

di Fibonacci

binomiale

albero

i quali

per

proprietà

ordinato,

I figli

la

ton Un

binomiale

la radice alberi

il più

come



possibile. Se

abbiamo

assicurarci

U,,

radice

sono

con

n nodi

non

albero

di uno

radice

radici

è altro

ordinato

diventa

an

Fibonacci.

di

heap

in,mo

nodo

ha grado

uno

di alberi

un

di alberi il nuovo con

il numero

nodo

ir

gii

alberi

di fusione

uno

heap

Rimandiamo

gli heap

in uno

binomiali sia

a

sia

il nodo

che

corso

di

U

1

degree x

Creazione

ordinati.

2

pX

3

chi1d x

unirne

due.

quando

davvero

all occorrenza

un tempo

vedremo,

inseriamo

bisogno

paghiamo

necessario

Come

allora

un

non

nuovo

C

NIL wt. x

left .vj

5

right r

6

I11QI k X

FALSE

7

cconcatena

la lista

x

di

un

nuovo

c

n Hj

10

un prezzo per

di

realizzare

uno

l oggetto

heap

Dato

P

ammnrtizzato

heap

di Fibonacci

di Fibonacci 0 e in 8

H, 0,

di M vc-Fio-HE sr

per

H

x

nodo

1-6

le linee

fettivo o fondiamo

minimo.

d

.

linee

S-9

A

1

mostre

la un

linea

il quale

il potenziale è quindi

nH dello uguale

MawE-F s-HEa,v

0 e inin H he p

wL

di Fibonacci

al costo

reale

allnca non

vuoto O

l.

ci sono è bH

e restituisce alberi

in H.

0. Il costei

cti

10

nodo

ooperazioni er,. LIIIICO BO 10.

aumenta chiave

con ,-

della

procedura

al

Bwow,,v

nodo

un

diventa

albero

heap

heap

i

nello

ordinato.

non

binomiale

del

minimo

o

cap

composto i onacci.

i

i

. La

H

per nello

2 1 inserito -HF r-ltiscRT, .. -

ill interno alberi gli , , -, vengono di se iiito. v-lvsekv

ristrutturare -, F1e-Hn

albero

il puntatore

aggiornano

Infiite. 21.2

un

e anche

nodo,

quindi

i differenza

tentutivo la procedura

il nodo.v

modo

In tal

01.

l unico

rendendolo

nodo.,

ta linea

collegamento,

a doppio

circolare

lista

del

strutturali

i campi

inizializzatn

hanno

Fibonacci

vuoto,

I-ev mi r H

l ev r m

di H

radici

delle

la lista

x con

c ontenente

l

nH

di una

elemento

di

di ExtRAcr-

il nuovo

o che

Do

Q lgti

figura

heap

nin

then

radici

delle oppure

w.

if mii H

9

possiamo

cercheremo

nodo

di un operazione di trovare

0

4

8

delle

r

che

X c-

ExtRAcr-Mir,.

20.2-10,

essere

può

riempito.

stato

cfr.

in un

realizzazioni

è piccolo,

ovviamente

H, assumendo

di Fibonacci

già

di quello

non

un.operazione

stato

già

sia

key x

e che

allocato

heap

x nello

un nodo

inserisce

FIB-HEAP-INSERT H.

è di rimandare

frale

f

20.1 4

...

U

di Fibonacci

di Fibonacci

nell Esercizio

tino

abbiamo

heap

Lo

b

con ponente

nodo

procedura

necessario.

Per

un

di

seguente

La

quahincyire

k, maggiore

binomiali

aII effirienza

nel

piccolo

o per di Fibnnacei

la ristrutturazione in cui

heap

tninimo

binomiale heap

negli

riguardo

nodo

di alberi

in uno

è il ntomento

di heap

H.

Fibonae ci unico I

d

list,

u, .a

agglunfo

è poi

ta

radice.

della

Inserzione

non

lemma

proprietà

U

ed

lleap

ordiflame llo

di

p di en

n odo

.

anime-

U consiste

nel

della

di sottoalberi

insieme

gs

g4

che

è simile

binomiale

descritte

variazione

la sua

è un

un bilanciamento

il n ero

visto

che

ristrutturare

che

ordinato

operazioni

dete-,minare

heap,

non

46

che MwkE-

ordinato

non

binomiali

seguente

della

di Fibonacci

nelle

operazioni.

Miv,,

albero

heap

operazioni

le operazioni

co l

albero

1gn.

rapidamente

inserire

nodo.

heap

Dn

L idea

due

non

uno

le

solo

ricorsivamente.

mentre U ,,

Le

realizzate

fornite

qualsiasi.

se uno

Quindi,

per

ordinati

binomiale

altro

ordine

Però,

caso

Un

è definito

singolo,

dell altro.

allora

ordinati .

sono

essere

21.2-2

4.

varie

non

come

devono

e Urto ,

quello

di un nodo

nel

Se

non

e come

radice

analizziamo

ExvR cr-M x

binomiali

della

e

z

che,

di

di Fibonacci.

binomiali

U, consiste alberi

allora

heap

binomiale

ordinato di due dei

negli

Q30

O lgsr .

heap

descriviamo

paragrafo heap

Q52 Q3S

Q4t

sinistro

fondono

Qv----

30

l e p iFibonacciHd podr èsm oin eriroil od c ne

Operazioni

Qs--

35

alle

F

21.2

-

Qv Qz-

Q

Qzq.Qq...

nei

Dn

- 24

---- -

z

Nelle

407

Fibonacci

di

heap

Gli

Qrpitolo

.,

dello e iunti aggiun

di Fibonacci

hezp la

non

F,o-HcAv-l sew

hea p hlla

di

Fihonacci. . delle lata

2 l. l.

di figura

Se radici

fa

nessun

avvengono k alberi

k d un di

.48

Capirofo

21

Per

determinare

input del

e H

il costo

lo heap

è dato

potenziale

ammortizzato

di Fibonacci

di

risultante.

Fts-Hme-Issai,

Allora

sia

tH

tH

H

lo heap

1 e mH

di Fibonacci mH

di

e l aumento

si assume

minimo

tH Dato

che

2 mH

il costo

2 mH

H

reale

è 01,

iI costo

I . 1

La

mentre

aggiornati

procedura

quelli

a concatenata

da

un

nel

nodo

restano

estratto sarà

che

Cowsouowvz.

ausiliaria

il nodo

estrae

seguente

procedura è rimosso

nodo

presentata

dopo.

subito è 01

Viene

stessi.

gli

ammortizzato

la

chiamata

inoltre

un

quando

siano

lista

nella

rimangono

che

che

convenienza

eseguito.

infine

viene

radici

delle

per

da i puntatori

1

lista

nella

alberi

degli

409

Fibonacci

di

heap

Gli

01. Fis-HEAP-EXTRACT-Mw H

Ricerca

del

Il n odo

nodo

minimo

essere

minimo

in uno

trovato

in

ammortizzato

heap

tempo

di Fibonacci

reale

di questa

H

01.

operazione

Dato

è indicato che

equivale

il

dal

al suo

costo

min H ,

puntatore di

potenziale reale

H

non

cosicché cambia.

può il

costo

1

zm

2

if

min

H

sitin.

01.

La

di

due

segueme

heap

H

2

Fibonacei

unisce

procedura

due

heap

di Fibonacci

H

e H distruggendoli

subito

dopo.

pX

6

togli

7

if

m

8

concatena if

HJ

7

rilascia

gli

8

return

H

radici

oppure

min H

6

nH n

di R con

la lista

delle

rudici

A vtt.es sin H

ia in H

di

oggetti

H,

ogni

per

e H,

Lsseat, La

non

C H

di

occorre

variazione

ndici

delle

lista

le liste

Fibonacci

H

ristrutturare

del

delle

radici

il nodo o minimo , d Fibonacci di H,

i heap h

heap

gli

per

di H, He

e H creando la linea

e H sono

risultante.

rilasciati

Come

una

á assegna

accadeva

nella

nuova

lista

a ir H

il numero

linea nella

delle

con

radici

collegando

to stesso

che

L .iior

tH ,

è dunque

Estrazione

Il

r HH

r ocesso

uguale

del

nodo

di estrazioi e

costo

nella fine.

Se

un

1 salvando

linea -

zn.,

allora

puntatore di

lo heap

al nodo

minimo H

Fibonacci

no k

è poi

puntatore

questo vuoto

è già

tornita

e abbi uno

8

21.3 b

t Hi

di

lo heap

della

Fibonacci

u

21.3

di alberi

nello

fi

dopo

m H, reale

Ol

in H .

Il costei

Successivo.

in cui

si riduce

il numero

heap

2 in Hi

fino nnsmortizz ito

di

nsininso

a quando

ogni

lista

nella

radice

delle

radici

lu

rado

Fin-Hr,ir-

.

i la piii

on

l

l

opcrazi ni

prcienl,.Ite

tUll .

111ClllfC

con

Ic q r e i

tOlt I VICllè

ii1 udice

che

è stata

eseguita

le

9.

Il passo

2 mH

mostra

minimo

del

radice

grado.

alla

figura

e wH suo

una

alberi.

t Hai

al

al più

Fis-Hewv-

procedura

linea

H

rimane

a quando

finu

grado

0, dato

del

totale

7. mentre men re Iaa linea inea

è

potenziale

2 mH

tH

i figli

tutti

radice

radici

D H.

D Hi

in una

trasforma

Fis-Hz v-EXTRACT-Mli1

21.3,

la figura

mostra

Come

Convinciamo

o getti lo

l

nH

H

irrin H

HJ

2, 4 e 5 creano

Gli

right J

niin H,

l e 3 concatenano

restituisce

else

-

return

restituito

di nodi.

ivit.

m

Cor souo a FJ

12

delle

NrL then

linee

m

n in H

nH

Il

la lista

nrin H

5

linee

iniir H

P

l11lD H J

3

Le

then

10

Mal E-Fts-HE

4

H.

di H

radici

delle

lista

- dalla

H,

I ll/l Hj

Le

di H

radici

NIL

righr -

9

FIB-HEAP-UVION H ,

I

di

E

delle

lista

x alla

aggiungi

do

5 Unione

x di .-

figlio

ogni

for

then

3 4

i.

Il

Ill 11

C. Illll il

ll,l

i .. iC

pl iClllC.

diversò.

di Fibanzcci.

consiste

nel

410

Capitolo

heap

Gli

21

0

01234

min ---

di

HJ

-

--

3

/23- 7 21

min

117-38

/52

- Q52

b

/24

30

Q -Q7

H

-Q17

Q21

-Q24

Q4t Qx

Q46

Q4s 24

4i

--

7

i

/ss

v ---- i

c

-Q38

- - 52

21

23

17

L 2

3

4

A

A

Q38

411

Fibonacci

24

Q41

v .r

-

n

sz.- s g

Qa

Qss v 01234 35

A

Qs 01134

01234 .Q21

c

.Q

.

Q23.Q7

Q52

17

-----

24

so

Q4t

-

d

38

46

4

4s

WQ

...... g

k

Qs

4

3

2

4

Qso

ps l

0

A

..

yg

g3 77 221. S

Q4i

01234 A

,l

223 Q7Q2

4

Q.QQQ Q,... 41

f



30

- --$24

17

Q7-Q21

38

Q52

, 23

30

Q41

Q

Qss

Q46

Qzs

Qss

01234

Q41

01234 A

X -

g

-Q38

Q

Qv

O21

y.

y

----V O Os

24

Q52

24

is

46

30

g 35

030

23

Q4i

figura

ps Figura

21.3

dopo

che

de1le

radici.

3-13

della

L a-ione

il nodo

di

F s-HEAP EXCTRACT-Mt .

miniano

- è sito

arra L

c-e

e segrrendo

i pirntarori

right.

successi

a del

linee

coi

lt

6-12.

r ltiave

23

cm

cliia

il nodo

con

cl

la a

ricosrr t iosre

è stato

collegato

al

è stato

collegato

24

è stnto

col1egato

delizi

lista

delle

de1le

radici

la irodo

situa con

al

delle

n ostra

dopo

chiave

nodo

a partire

con

7, chiave

con

chiave

dall arrayA

min H .

che

di

i

e r alla di

adesso 7, a cui Dalo

di

del

è plmrerto ance ra e/re

e l indiviehia

ciclo

da.z. pcmta

fino

un

8

In

while.

ciclo

del

raion

10

pt -HEAP-Lt v H.

I l-

Ag

j7

J

g

l 4

min R

15

for

m

3 4

i m do

for

ogni dù

0

to

ir

co

o t unratrire

D n Hl

to

w

Ai

nodo

11 llllC

sic

if

wc

niin H then

l9

alla

Ai

aggiungi

then

lista

min ll

radici

delle /cg A i

oppure Ai

tt. w

nella

lista

/AH cl

6

D n FJJ

Ai

1

NIL

0

i

IS for

NIL -d

h

A 3 J non

Coxsouo ve H 1

X

y,

mx

Ad

13

17

2

m

scambià.v

while

Il no lo

Nell ii magine inrmagiire x. Ne/I e rte

Ll

then

righe minimo

cie

Ad

key x

if

lista

f-h del

y c

do

9

delle

for

a qwehnoo

i me

alla

dal nodo itera ione.

itera ione

passaggio

sin a ir ire

aggiunti del

fine

ogni

La

b

a partire

fine

il printo

7.

itera ioni

ai ali.- ata

w e x alla

H.

sono.stati

figli

tre

prime viene

Fiboi acci

di

e i.suoi

i valori di

ioee

cri node

heap

radici

radici

i valori

con

f l mosrra

delle

ognuna

lista

iimnagine for,

e 17 ia e

lista

dopo

La

Ogni ciclo

L iminagine

iodo

il

dallcl

A e g li alberi CONSOLIDATE.

procedura

L itera ioide delle

tolto

conti nraj

7

Uno

a

2 .3

delle

radici

di

H

1 degr e .rJ i

I

Lir k H,

FIB-HEAP togli rendi

W Nll.

3

uirk y

y y

y,

x

lista

d ll un m

fi

lio FwLsE

delle di

.i,

radici incremintanh

di

H legi

c .v

di

H

l ey ini i H

Scendendo 1-2

nel

inizializza

otteniamo

un

l elemento

albero

ogni

iterazione

vedremo

6-12

chi

ha

scambiano

il n ldo

Dato

che

il valore

ricrea non

iterazione

del

f-h.

ciclo

for. questo

ciclo

12

Va

risultante

un

che

che

se tutti

degli

alberi

nell Esercizio

tutti

cui

radici

ogni

21.2-2, luogo,

che

heap

gli

alberi

gli

hanno

la struttura

di

alberi

sono

sono

alberi

ognuna

k figli

allora in due -

non

devono

avere

è pagato

dalla

una

un

albero

radice

solo

ordinati

se hanno

linee

ed

21.2-1

di

U.

Si mostri

anche linee

delle

Possiamo ài

adesso

far

Fibonacci

vedere

che

di n nodi

il costo

è ODn .

ammortizzato

Sia

Il

costo

conmbuto Dn

figli

la chiamata

p iù

colIegata P W o

dell estrazione

O D ir

da ànalizzare

al

reale

del

viene

nodo il costo

del dal

minimo

e dal

del

ciclo

di Co SQLIDATE

Dn. - O anini a un

s olta altra.

e

fatto

lavoro

for è al più

che quindi tH.

nodn che

si attraversa la Quindi

in CQjVSQLIQATE

linee

Dn

estrarre

di Fibonacci

mininio essere può Fio-HaAv-Extgxcr-Mis

in svolto

nelle

per

H Io he p

FtB-FEEAP-Exermcr-Mw.

3-13. tH

che

la proprieth

4

mostri

che

while

delle

il ciclo

quantità il lavoro

ll Ile

Il professor

le

due

stesse

delle

alberi

totale totale

di

aiiiro reale

consiste

lince ese uit i

. 7t i

dei

tH

da uno

Ci-l 2.

un

nel

ciclo

21.2-5

Si

t fl

20.

che

si diminuisce

dalla

chiamata

figura

21.3 m .

alberi

binoiniali

nella

I vale

siano

per

le

di ogni

collegamento

rostanti

il numero

di uno

delle

di F a-Hawp-ExTRwct-Mtx

non

ordinati,

nel

caso

che

4.

tornite

heap

ha

solo

le operazioni

di Fibonacci

con

di fusione

n nodi

di

fusione sugli

la ristrutturazione

del

degli he p

come heap

nuova

ha la stessa

a quelle

sugli

a una

pensato

di MeGee

operazioni

è al più

di heap,

il grado

LlgnJ.

struttura struttura

heap.

Le

loro

dati

basata

heap

operazioni

di Fibonacci,

di McGee

di di uno

vengono

tranne

che

passo.

caso

peggiore

Quanto

chiavi

è il confronto

Qual

heap

di

e offre

realizzate

l inserzione

u timo nel

sugli

di Fibonacci

in

e l unione

è il tempo

di esecuzione

è nuova

la struttura

professore

mostri

che

quando

è iI caso fondono

l unica

di tutte

heap

Decremento

al più

In

questo

operazione

le realizzazioni essere

possono

su

di questo eseguite

capitolo

in tempo

non

fra tutte

due

chiavi

le operazioni

ammortizzato

01.

tempo

ed eliminazione come

ammortizzato

01

decrementare e come

di un la

eliniinare

chiave un

nodo

di nndo

un

nodo

qualunque

in da

uno uno

he p

di

heap

di

lista

r. dici i

in

chiave

mostrerenqn

par igrafo

dopo

della

delle

di,una

Un

i Prov,re

al

questo

imite

implicherh

che

Fe-Hr,,u,-Ernwrr-tv1iw

piii CYCgllllC

.

caso

heap

opèrazioni

che

i

Fihonacci

for

al fatto

dominare

di

radici

nodi

dell esecuzione

le ha

segue.

delle

fino

il costo

la proprietà

in uno

analoga

di dati

dato

quindi

elabunti

liita

il lemma

McGee

eseguono

I -2 e l 4- I 9. Rimane

della

a farle

potenziale

risultante

mostrato

rimpiazzi

Uno

maniera

di

21.3

linee

di Fibonacci

nel

Dn

Fibonacci.

In

grado

minimo

ven ono

che

massimo

affermato

come

dovuta

di Fibonacci

Si dimostri

Si

dopo. 3-5

dell esecuzione

descritto

La dimensione j, dato

il nodo prima

lo heap

heap

come heap

in potenziale

i

f

ordinato.

U,

di

è

heap

ordinati

tali

risultante

unità

Intuitivamente.

i

nelle

collegati,

L albero

2 mH

tH

nella

non

non

le

di O r H .

riduzione

sullo

2E.2-3

quanto

al più

i

3-là Lo

lo stesso

di essere

prima

la struttura

per

binomiale

è al

marcato

Esercizi

del

la lista

Anzitutto,

dopo

viene

H

incrementare

possiamo all interno

21.2-2

rimangono

questi modi.

da Fts-HE -L,i

binomiali

l .

iterazioni

binomiali

O H

nodo

figure

I 1 e restituendo

alberi

diventa

è anch esso

collegat,

nellalinea

che

H e

nelle

ristrutturato

è dunque

2 nH

il potenziale

e nessun

caso

successiva

delle

Dn

nascoste

2I.2-4

radice

albero

for

j

I

mentre

1 radici

I I.

qual

la ricostruiscono.

aver

erano

solo

x della

nuovo

il ciclo

n Hj

Nella

successive

15-19

Dopo

eseguita,

cambiata

fi lio

oghi

che

di Fibonacci

fosse

essere

può

Fts-HEAP-EXTRACT-M x,

secondo

nello

3-13.

ammortizzato

2m R ,

L n

radici.

l array

è mostrato

quattro

e le linee 2 I.3 m .

linee

risultato

delle

decrementando -.

cancellato

la Fte-HEAP-EXTRACT-MIN

struttura

figura

delle

dato

a Ad

mostrano

H

a d. linea

13 assegniamo.v

è

al più

O D Il ,

chiamata

degreefy

wtr., nel

nodo

rimangono

che

la linea

A d

del

che

Il costo

tH

le linee

nella

dato

OD

di collega-

A è tolto

linea

for

Dopo

radici

Dato

a x dalla

2m H ,

l operazione.

ODn

ogni

l I, come

lascia

21.3 c - e

il loro

ripulire.

nella

aIberi

gli

ciclo

il risultato

delle

termina al nodo

del

Nella figure

collegamenti

da

la lista

è mostrato

puntatore

notato

prima La

soltanto

14 vuota

Le

durante

dell estrazione

prima I

Dn

si

linea

di F a-H e-Ltm, a quando

di

e quindi

ma

più

ic, e

w. Il ciclo

dell altro,

nell array

fino

di.v.

for.

iterazioni tre

while

grado

ciclo

mostrano

F s-HIP-ExTRACT-M x

linea

del

i-I

rimane

il ciclo

corso

Il potenziale

w.

il nodo

dell operazione

chiamata

linee

3-13,

radice .

y è collegato

a esso

linee

nella

a una

degree z

dalla

lo stesso

tre

seguito,

il puntatore

Si ripete

avvengono 21.3

la linea

di Fibonacci

radice,

1e prime

for

Nel

delle nel

che

punta

il padre

incrementa

è incrementato

con

A dJ

x e p. Il risultato

che

for

contiene

tranne

while,

tra x e y diventa

10,

iterazione

figure

punto

completato,

una

ree x .

deg

dopo

Le

degreefx

ciclo

collegare

linea

radice

risultanti

21.3

radici,

d

la successiva

alberi

A

è più

nessun altra

eseguiamo

nella

ciclo

che

nelle

radice qualunque coincidere o no con

mantenuto

dell albero

d del

modo

una

può

a x. Nel

L invariante

x è la radice

piccola

di degree x

I in variante esiste

gli

y non

radici.

seguente di

x, che

puntare

a x e y se necessario.

x, y

che

delle

iterazione

più

i puntatori

Dato

fatto

nel

l analisi

nodo

qualche

viene

vogliamo

la chiave

opera dopo

NIL

l invariante

In ogni

a Fts-Hne-Leve H,

un

il nodo

preserva

degreeps ,

è che

lista

è che

un animo .

degree x

8-9

for

a

radice

array

iv nella

Cowsouo m

elemento

per dell

ciclo

linee

tra

mento

ogni

avente

radice

del delle

d

la procedura

A degree x

esamina

while

dettaglio,

A mettendo

lli

tLlllp

lllllll fll//JtO

O

IL/1 .

e

Ftu-He,se-Dr,.t

ere

ven ,no

414

21

Capitolo

Gli

Nella

procedura

prima,

che

chiave

l.

seguente un

togliere

l operazione

per

nodo

da una

lista

F a-He -BecREAsE-Ihv

concatenata

non

cambi

assumiamo, nessuno

dei

campi

come

2. 3.

in un

Non

F s-HEAP

altro

poi

due

di x sono

stati

rimossi

con

perso.

x viene

m

3

key x

4

i C

5

if y w ti

chiave

appena

chiave

corrente

Ccv H,x,y

5

tagli.

volta

tagliato i passi linea

nella

3 di Fta-HE v-Ltvv.

finito, y era

dal

4, dato

il che

padre,

1 e 2 e un

cancella

successiva

che

un

lo rende

figlio

di x è stato

esegue

il passo

i rarkfy

in cui

esegue

un

lo

marca

il nodo

figlio

una

nuova

tagliato. l.

La

Possiamo

y viene

di y è tagliato,

si

CASCADING-CUT

linea

4, dato

che

e

collegato verrà

mark/v

l albero

fino

tagliato

la

linea

su y. Se y è una della

il suo

figlio

secondo

nella

linea

6 su

non

trova

radice,

è stato figlio

a quando

da

7 di

allora

una

appena

di y.

radice

y -

il test

è marcato, tagliato,

y è tagliato

.-, padre

padre

Fts-HEw

Se y non

procedura.

primo

il suo

perso

figlio

Dunque,

a cascata

ricorsivamente

lungo

nodo.

la terminazione

ha appena

chiama

risale

il secondo

altro

di taglio

causa

invece,

essere

a un

operazione

nella

Se y è marcato,

v potrebbe

perché

stato,-ollegato

2 di CAsc owa-Cvv

procedura

e

cui

CASCADING CVT

x

fatti

mari x

2. La

ancora in

linea

termina.

Ley ini g H min H

then

dei

a tRvE .

momento

la y

cancella

il passo

abbiamo

nella

if kc x

415

nodo,

se si sono

TRUE

la linea

perché

DECREASE-KEY

l ey y

viene

è

quindi,

esegue

messo

figlio

mari- xj

Cur,

vedere

dal e kc x

il secondo

Il campo

Non

CASCADING-CUT H,

8

della

pX

7

9

è maggiore

k

then

é

nuova

figli

Fibonacci

radice,

a un

quindi

la

error

then

una

collegato

procedura

k

ora

2

x era

poi

key x

if k

1

x,

istante,

x è stato

radice. DECREASE-KEY H,

certo

di

strutturali

rimosso.

nodo

nel

una

di

Decremento

heap

nella La

e linea

procedura

o un

nodo

non

marcato. volta

Una Cut H..v.

y lista

dalla

togli.r

x alla

aggiungi C

3

pX

4

mQI k X

che

terminano dei lista

figli

di y, decrementando

delle

radici

La

tigura

dallo

Nli

21.4

he

figura

di

I

2

if

py c

l

FALSE

i

4

then

mari Q

5

else

Cut H,

richiede

invoca

due

impiega

Ol, sia

il costo

oltre

al

la nuova

chine

non

a x. Se.v

è una

radice

dato

strutturali.

che

sia

COl11pie

maggiore

della

o se key rJ

l e

l ordine

dello

chiave v,

he p

i seguenti cnrrente

dove

non

e poi

di.v

è il padre

l-3

controllano

assegnano

di x, allnra

viol- to.

è stato

le linee

passi

Le

non

linee

4-5

che

la nuova occorronn

i

tempo

dello nella

tagliando,v

heap linea

è stato 6. La

violato,

procedura

possono ta CLrr

veriticarsi

molti

contro1lano

cainhian enti

il legutne

fra.v

si

e il padre

y, rendendO

.

aiutano

a produrre

il

dato

seguente

ottenere effetto.

i limiti

di

Supponivmo

tempo

desiderati che.v

sia

usiamo un

nodo

i campi che

ha

nuirl . avuto

che

Ia se

uente

storia

La

nnrcato ic

2 nodi

di

mostrata

nella

nella

esecuzione

Fte-He -DEc c sE-Kn

figura

dei

c volte

reale

di

è soltanto

Fia-Hz l-DecRe sz-KEY

procedura tagli

a cascata.

a partire

di CAscwotwa-Cuv

il costo

nel

da

impiega

una

che

Supponiamo

data

tempo

chiamata

di

senza

Ol

Fts-HEAv-DEcazwsc-Kcv.

l alberi

marcati aver

chiansi ta la marca. dui

prodotti 1 snno

c

Sia

potenziale. Ogni

e rimuove

2 tn H

il co to

mostrata

nascnste

4

che

c

possiamo all ihterho

Fis-

contare tutte

comprese

marcato

stati un

tagli

H lo heap

le

c

ammortizzato

2

tR di

rimangono

in cascata.

e l albero

dai

tagli

Il cambio

2 mH

Fl -HEsP-DECREASE-KEY

dell esecu-

prima

di Cascwwtua-Cin .

t3opodiché,

snlarcati

nodo .

di Fibonacci

ricorsivn

in cascata

in potenziale 4

tH con

trantte

l ulti-

c alberi

i rH

radice

ir .v

e l ultim è quindi

el chiamata

al più

c . è al più

inizi i

radice.

Per

nodo

c

tH

questa

Oc

lia

di

chiamata

il cambio

di CASCADING-C può

Dunque

sordine

reale.

chiamata,

cambi

condizione. Se

c

seconda

a partire

chiamata,

prima

è Oc.

di partenza,

mH

chiave

un

La

La

chiamata

Quindi,

adesso

taglia

di Fte-Hewv-Dzcac sE-KEv,

21.4 a .

ammortizzato il costo

di P s-HEAP-DECREASE-KEY.

alberi Fts-Hewv-DECREASE-KEY

8 e 9 di Fle-Hzcv-BEcREwsc-Mv

a cascata.

Ogni

ricorsive,

Calcolianio

y,

tagli

ricorsivamente

ricorsive.

chiamate

TRUE

nsa, La procedura

le linee

chiamate

figura

a cascata.

determinando

ten po

le chiamate

di due nella

CASCADING-CUT H,

6

avvenuti,

necessario.

tagli

che

Cominceremo

zione

una

mostrato

HEAP DFCRfASE-KEY. mari

if

sono

se

l esecuzione

dimostreremo

CASCADING-CUT

ztc

then

3

mostra

non

21.4 c - e ,

FALSE

CASCADIVG-CVT H,

-

a cascata

tnin HJ

Fibonacci

21A b ,

01. m

i tagli

degree y

di H

Adesso

1

tutti

aggiornando

O

I,

incrementare di

Oc.

le

unith

di

poterrziale

tinn

a

furie

clominarc



costanti

più

2I

CapitoIo

beai

Gli

min

Fts-HEav-DELETE

Q

è analogo

a Bwoitv,c-HEAp-DaLma

di

rende

x il nodo

rimosso

dallo

Fibonacci

417

minimo

nello

heap

di

t

7 ------ ---

a

-----Q38

z4Qvn

zi

Q4s so

z

Q

s

À

QQ4i

assegnandogli

Fia-HEAP-EXTRACT-Mia.

procedura somma

Q4

.

il valore

del

ODn

tempo

Il nodo

r è poi

Il tempo

ammortizzato

01

di Fts-HEAP-ExrRwcr-Mt

ammortizzato

heap

di Fibonacci

di F a-Hne-DEcmE

di Fia-HE v-DecRsasE-Kzv

e del

dalla

è dato

tempo

dalla

ammortizzato

Y.

Esercizi min

min

H

. .. s

i. p. s- i--

cl nriri

Ff

-

d

--------

7

Q15 Q5-Q26

2L3-l

----- 38,

Supponiamo modo

17

o

23

21

Q26

che a un

radice

x in uno

diventata x sia

altro

una

marcata,

nodo

Giustificare

il

metodo

degli

tempo

poi

del

di Fibonacci marcata, è una

un

figlio.

01

sia

marcata.

e se ne deduca

se non perso

ammortizzato

aggregati

Q38

heap

radice anche

e ha

QS2

-

Q24

una

essere

fa differenza

41 .

21.3-2

QI5-Q5

che

x può

collegata

30

H --

e

Fibonacci

di

radice

che

che

era

Si spieghi

in che

l ana

isi non

per

stata

in precedenza

F s-Hne-DEcRawse-Kzv

usando

il

18.1.

paragrafo

Qi

21.4

52

Due

21.4

Figura

15 la viene

24

chiave

con

a

tata

decremen

nell inrmagine

i

A

e.

Il

non

nodo

nodo

che

adesso

che

m

marcata

è nia

rea

ha

taglio in

di

a

chiave

5,

dato

i ragli

wta

radice.

altro

ro dal

cascata,

chiai

con

suo

ch ia raglio

Il

suo

v iene

con

si sarebbero

rana

chiave

il sr o

ai

eva

chiai

radice

dato

nell immagine

26

Anche

non

se

è marcar .1

heap

minimo.

adesso

tutti

un

che

termine

è il doppio da

è tagliato

quando potenziale

paga

potenziale

dovuto

mai del

un

il taglio

taglio

la funzione numero

che

potenziale dei

a cascata,

e la smarcatura,

aI fatto

nodi

marcati.

cosicché

stata Un

definita nodo

il potenziale

e l altra

il nodo

sia

unità

y diventa

una

compensa

in modo

includere

y viene

marcato è ridotto

da

di

l incremento

2.

smarcato Un

di un

di Fibonacci dal

di

eliminare

È semplice ODn . chiave

come ibbia

un

nodo

fa la procedura valore

nelln

da

uno

seguente heap

heap

di

Fibonacci

assirmiamn di

Fibonzcci.

, OMINO

fondo

21.2-3

sono

pero,

nodo

far

In questo appena

I tagli

al l interno

che

che dello

mostreremo

paragrafo due

perde

di uno

J nel caso

tipi

ordinati.

alberi

è

nodo

Dn

non

alcuni

vedere

faremo

precisamente,

si che

non

padre

che

binomiali

binomiale.

dal

di un qualunque

ci assicura

alberi

possono

di un albero un

noti

Si nodo.

che

I analisi

per

in x.

qualunque

che

di n nodi al momento

in tempo

ammortizzato

del la chiamata

21.

Dn

figli,

Dn nJ,

Llog

è

dove

è la

con

size x

che

x non

Faremo

degree vJ

seguente

il numero

nodi,

che

sempre

nodo

lista

è esponenziale

il valore

effettivn

delle in

del

uno

di

contenuti

della

parte

size v

x all interno

x compreso,

fa necessariamente

vedere

contiene

ogni

per dei

nel radici

degree x .

heap

di

sottoalbero puo

essere

Va

tenuto

di .v.

grado

J

Sia

i un nodo

co

y,.

al più

y,....,

in uno i

y

recente.

heap

fjJ i

d i Fibanacci

degree y,

Quindi

e supponiamo

di x nel1 ordine

con

che

il quale

sono

stati

i -2

0 e clegree y

elegree x

per

sia

collegati i

uguale a.v,

2. 3,

....

a/. dal

Indichiamo meno

recente

k.

nessuna Dimostra -i ne.

Ovviamente

colle . to

FIB-HE P-DCLETE H.

L Esercizio

e Fie-Hzav-DEt.EIE

al grado

radice.

nodo

un

Dn

y 5 /2. di

radice

presente

Più

Fls-Hewp-ExTRArr-Mw

superiore

di Fibonacci

tagliamo

O lg .

con

di

è O lp .

le proprietà

che

indichiamo

unità

di

il limite

heap

violino

Fibonacci.

unità

n nodi nello

momento

1

un

che

in Fts-Hewv-DecRe sE-Kzv.

che,

di

ammortizzato

vedere

con

heap

Eemma

Eliminazione

il tempo

alberi

gli

a v vengonò

$

come

massimo

grado

far

di Fibanacci

L idea Si capisce

che

dobbiamo

effettivamente

min H

dove

e,

dimostrare

in cui

che amebe i l n una g in e

nel

clte

O lgn ,

genitore

radice.

7 è i na

Per

chiave

suo

momento

irore e 33

gen

con dal

iato

del

Viene

b

ed

genitore tag1

fermati,

è ntostrato

c he

dal

e diventa

genitore

Fis-Hesv-DecREAsE-KEY

nodo

e del

e 26

ini-inle. radice

wa

a cascata,

il iwe1o

che

a cascata

Fibohacci

di

diventa

a 5 la diventa

un

heap

il nodo

Il nodo

è taglia

radice

sena

46

decremenrata

Avviene

d.

Lo

a chiave

a cascata.

o. Il nodo i tagli

stato

áveva

Vietare

c-e

non

fosse

mrovo

al

chiodo

marcato.

dell esecu io e

risulwto

punta

del

chiave

cessctno

punto

questo

questo

24

chiave

cm

nodo

Fis-Haifa-DEcREwsE-KEv.

avviene

radice

rota

e diveirta

di

il nos o,

c e ckrnque

n arcato

era

chiamare

Limitazione

u.v,

tutti

i vari

de,ree y, y,,

y ....,

0, y,

eram

Datn figli

i di

2, x.

per

notiamo cui

che

quando

dovevamo

avere

y

è

stato

deq ree x

x

I

Fio-He v-Drceesss-ki. v H,.c.

2

F18-HEAP-E TRACT-MI H

a,

c,ic

perso

due

t, li

sarebbe

stet,

t,gli,to,ia.v.

Ne

concludiamo

che

der ree ,

i

. a

418

21

CapitoIo

Gli

alla

infine

Amviamo

il I--esimo

2.2

paragrafo

se

k0

l

se

k

se

k 2.

Fq

Fq

è stato

heap

di

definito

per

Nel

di Fibonacci . della

mezzo

inferiore

ricorrenza

su

size x ,

I

e poi

size v,

size x

sommiamo

21.2 gli

k

interi

in un

aluo

1

di F

adesso

base i

per

0

k

per

altri

gli

I per

il primo

figli.

figlio

Abbiamo

il quale

per

y, cosi

che

per

induzione

su

0 e I

1 sono

ovvi.

O, 1, ...,

L

l. Abbiamo

k che

s,

Nel

passo

dunque

che

F,,

tutti

per

induttivo

interi

gli

non

assumiamo

negativi

che

k

k.

2 e che

I

F,

Q

Sg.

.

2 l

i0

dimostrazione

La

Dimostrazione.

per

procede

l-. Per

su

induzione

k

0 2 F, i

0

l

e

per

.

F,,

modo

I

Fj,. g

stesso,

419

1

I

s, tutti

21.1

Fibonacci

k

2 ps,

Dimostreremo

Per

il nodo

il lemma

di

s

I casi Lemma

1 per

applichiamo

I,

esprime

lemma

Il seguente

il nome

giustifica

di Fibonacci

numero

0 Fg

che

dell*analisi

parte

heap

l

F,

I

Fp 1 F,

i0

i0

10 F/

l FO .

Assumiamo

ipotesi

per

Fi

Fj,

L ultima

che

induttiva

I

1

Fq

g,

I

cui

F da

che

discende

uguaglianza

Abbiamo

cosi

Corollario

Fg,

Il grado

discende dimostrato

dal che

lemma

21.2.

size .v

s,

F,

p.

21.4 massimo

Dn

di un

nodo

in uno

heap

di Fibonacci

con

nodi

è O lgn .

Fi l F

Dimostrazione.

i P,.

Sia

lemma

21.3

discende

k

n in

realtà,

log,

x un

nodo

che dato

in uno

n

heap

size r

che

di Fibonacci

k è un

intero,

con

abbiamo

n nodi

e sia

i logaritmi

Utilizzando

p.

che

k

J.

Llog,n

i0

di

un

nodo

qualunque

Il grado

massimo

che Dn IE

O lpi .

Esercizi

il rapporto

detmito

aureo

nell equazione

2.

14

come

p

1

2f.4-1

1.61803...

v 5 /2

Il professor O lgn .

s un 1

Disrrostrazione.

nodo

Pinocchio Si dimostri

di in uno

heup

di

Fibonacci

e sia

l

Allora

degree .v .

F,

size .r

$

2E.4-2

Sia

s

il

valore

minimo

possibile

di

size ,

fra

i nodi

-

Fibon acci

immaginiamo tagliare

tali

oche

il

formato

che

l altezza

il professore di operazioni un

da

di uno

è in errore

unico

sugli

albero

di Fibonacci

è una

catena

con

n nodi

che

lineare

crea

è

intero

un qualunque

per

di Fibonacci

heap

che

heap

mostrando.

uno

heap

di n nodi.

dove

y 5 /2.

tutti

afferma che

sequenza

positivo nuna

21.3

Legna

$

Dal

d,

dove/è

Sia

è dunque

degree r . p abbiamo

la disuguaglianza

usa

Il lemma

l analisi.

completano

corollario 2.2-8

nell Esercizio

dimostrata Fi

e il suo

lemma

Il seguente

l

in base

gr el.

di un

nodo

intero I

si

costante ottiene

l. che

la

generalizzare x

dal

l

Dn

La

padre regola O Iran

nott nel

regola appena

paragrafo

dei

tagli

perde

il

2 l.3

a suo

utilizza

cascata

in

I-esimo I

maniera

tiglio. 2.

Per

tale per

quuli

un valori

di dato di

Note

421

Fiboaacci

di

heap

Gli

al capitolo

Problemi

Il

ha

Pisano

professor

affermando

che

a cui

1nin Hj.

punta

della

alternativa

Realizzazione

la

proposto

della

il nodo

quando

Fin-He v-Dateti,

procedura viene

che

è il nodo

non

cancellato

limiti Kzv O lp

y

p xj

ifywwc

4

then

5

CASCADING-CUT H.

7

aggiungi

8

togli

del

professore

dall

ipotesi

in parte

c è di sbagliato un

Si fornisca

d.

della

Sia

H

do

che

deg

ree xj,

limite

buon

x

a.

due

efficiente acsegnandole

nei

fornisc

elirnit a cancellati. nieruo

casi

n ff

Si analizzi p itivhbc

in cui c di

numero

Supponen-

di Pisa.No-DEL -e H..v . di

potenziale

H

in

esprimendolo

in cui

di

termini

cimare

nodi

Fibonaeci per

gli

alberi

il tempo ueccis irio

H.

di Fibonacci

senza

il tempo

cambiare

operazioni. Fis-HE v-CHAxor -KEv H,.i. l , e se

Kc n

mocliilcare

essere

ammortizzato lu ilruttur.i

4, di

il tempo

mulizzi

minore

o uguale

che

camhi

esecuzione a l-cg s . r.

Fit -Hrwv-Pwu E H.

l operazione

per dovrebbero

di esecuzione

ne

maggiore,

rispettivamente

efficiente da

migliore

è asintoticamente

x w niin H .

il valore

/ sia

F non

PtsAao-DEL

l operazione

realizz izinne

una hiin r,

di

altre

de11e

in maniera nodo.v

per

l cap

del

Si

il

in cui

operazioni

la chi

ie

01.

caso

nel e del

di degree r

in termini

I esecuzione

limiti

caso

Si realizzi

vmnsortizzatn h.

nel

sugli nuove

di esecuzione

ammortizzato

si

ammortizzato

anche

fornire

effettivo

di PisAxo-DEl.EIE

effettivo

espresso

dopo

ottenuto

opera-ioni

Altre

Vorremnso

velocemente

più

in tempo

e mH.

di Fla-HEAP-DELexe,

2l-2

eseguita

realizzata

essere

al tempo

essere

radice,

il tempo

che

viene

procedura

7 possa

Cwscwowc-Cuv.

una

c, r P

Si concluda

superiore

Fibonacci sia

non

di H

radici

delle

ipotesi

dovrebhe

procedura

lo heapdi

questa

la linea

lista

di H

radici

che che

y

di x alla

figli

delle

in questa

Il limite

chiamate

dei

lista

x dalla

dipende

.i w min H .

c.

la lista

L affermazione

Cosa b.

x, y

Cui H,

6

a.

agli

dell abbinamento

su

hanno

sviluppato

Ol

nel

caso

tette

ipotesi

della

ùi d tic

su

e,lixzazione.

l i fui rione

quali

nodi

c hè sono

.Sw...gc,ripolcnr

iic.

nel

nel

e Tarjan

Shrairman

Esistono

di Fibonacci.

heap

degli

ammortizzato

in tempo in tempo

FIB- HEAP-EXTRACT-1VIIN E.

else

le coppie,

tutte

sorgente

con

minimi

e pesati

bipartiti

grafi

minimo. Qabow,

Driscoll,

alternativa

di Fibonacci 3

fra

descrive

articolo

Il loro

75 . cammini

dei

a problema

di Fibonacci

heap

H

then

2

heap

di copertura

e dell albero

x tnin

stati

degli

e Tarjan

da Fredman

introdotti

sono

minimi

cammini

In seguito

PISANO DELETE H,

if x

dei

singo1a,

come

l

l applicazione

inoltre

variante

seguente

veloce

è più

l esecuzione

eliminazione

di Fibonacci

heap

Gli 21-1

caso

pessimo heap

pessimo.

Gli

caso

di algoritmi

heap

58 due

l altro

di Fibonacci

non rilassati paralteli.

ammortizzato hanno

di heap

tipi

anche

permette

uno

di eseguire

e Errawcr-Mtw ulteriori

rilassati

gli

rilassati

vantaggi

e Datate rispetto

ha

gli

stessi

DEcREasEin tempo agli

heap

4

di dati

Strutture

In

disgiunti.

dato

mantenimento

realizzazione una

data

viene

rappresentazione

sua

e la

22.1

di dati

struttura

Una

dell

membro come

dinamico,

risposta

entrambe

piccolo

Conte

per

di un insieme

non

le

da

è rappresentato

esempio

che

Dato

oggetto.

un

ordinati . elemento

ogni

studiato.

offrire

y,, vorremmn

oggetto

l elemen-

essere

posavano

abbiamo

in

descritta

regola di scegliere

quella

gli elementi

che

di un la stessa

si ottenga

una

essere

puo

d

utilizzato

viene

il rappresentante

volte richieste,

le due

ci

dinamici

insiemi

con un

quale

ovviameme

assumendo

realizzazioni

fra

dato

è un

che

membro

quale due

di

S,

S ...,

S,,

rappresentavate,

è importante

applicazioni

altre

il rappresentante.

insieme

le a1tre

dimostrare

per

S

collezione un

da

stesso

l insieme

In

volte.

determinare

dell

delle

esecuzione

ammortizzata

se cerchiamo

che

soltanto

modificare

senza

per

precedenza.

insieme applicazioni

imponiamo

rappresentante

insieme

to più

In alcune

insieme.

ma

pratici

di Ackermann

di

tempo

nel

una

è identificato

Ogni

disgiunti.

dinamici

insiemi

scopi

di esecuzione.

mantiene

disgiunti

insiemi

per

gli

disgiunti

su insiemi

Operazioni

di esecuzione

la funzione

l analisi

usa tempo

sul

debole

più

tutti

per

e discute

compare

che

e quindi

alberi.

ad

leggermente

superiore

limite

un

è lineare

22.3

paragrafo

il tempo

radicati

semplice

a una

Nel

il

per

disgiunti

insiemi

per

concatenate.

alberi

usa

definisce

22.4 lenta,

molto

crescita

la realizzazione

con

operazioni

che

ad albero

i metodi

sguardo

uno

diamo liste

mediante

efficiente

piu

22.2

paragrafo

Il paragrafo

dalla

inversa,

Nel

di dati

stmttura

una

da

offerte

la rappresentazione

è sovraiineare.

teoricamente

operazioni.

effettuata

disgiunti

utilizzando

si ottiene

capitolo

queste

le operazioni

insiemi

per

Questo

fornisce

applicazione.

semplice

una

e presenta

insiemi.

che

insieme

a quale

esplora

due

di dati

struttura

descrive

22.1

Il paragrafo

e unire

elemento

di una

insiemi

di

collezione

determinare

importanti

sono

operazioni

in una

distinti

n elementi

raggruppare due

contesto

questo un

appartiene

che

devono

applicazioni

Alcune

disgiunti

insiemi

per

le seguenti

operazioni un

crea

1vl wt -Svf x

in

UNION . E.

1

un

unisce insieme Clisgillnti

il

insieme

nuovo che

momento

gli

membro

unico

maui

e

che.r

richiedere

Dal

è.v.

rappresentante

quindi

dnbbianto

ùi ,,iunti.

insiemi,nno

non

sia

già

insieme.

due che

prinl l

è

ii

dinanzi

insiemi l unione dell

di

i he

questi

esccuziollc

culltCl1 due Jell

Ollo. l insiemi. oper izione.

C Si

l.

Il

5

Cselllpli

1d

suppone

che

r 1ppl setltallte

c S

i due

. in insiemi dcll

un

nuovo si mo illiiellle

Srmtture d dd per insiemi dbgimri risultante

è un membre

iI rappresentante abbiamo distrugge

richiesto

restituisce

un

In

tutto

il capitolo

disgiunti

di due

di operazioni

operazione

insiemi

rimane

un unico

attenzione

insieme.

che,

dal

m operazioni,

ne

delle

determinare 22.1 a, La

delle

molte

esempio,

seguente

calcolare

le

componenti

determinare

vertici

grafo

di un

di

sono

G è indicato

strutture

di

che

gli

insiemi

dopo

n-

l operazioni

UNtox

è perciò sono

contenente.z. dati

sono

al più

il numero

disgiunti,

ogni

Usto ,

n-

incluse

insiemi

per

e m,

dunque,

I. Si faccia

nel

for

2

ogni dO

3

forogni

4

do

dati

grafo

un

per

non

usa Una

grafo.

con

V GJ

nella

numero

b,d

totale

di

che

La

v c

su la

insiemi

per

arco u,

v

then

3

La

ei assicura

Poi

i

li

li

i

i

a

b,d

g

Vi

i

ii

a,c

a,c

b,d

VASI

hl

lil

lil

b,d

ic,g

g

h

le,gi

fj

lt.i

h,i

a.c a,b.c,d

e.f

a,b. -.d

e.f

b,c

a,b. .d

le.f.g

è indicato

con

Figura

2.I

Un

a di

con

grafo

insiemi

dopo

r gni

che

componente

connessa

se e solo

uin Quindi

-, i CONNECTED-Cowpowzms o N

crea

decidere

può

22.1

.se due

iilIustra us ra

b

c

il i

connesse

b,

a.

è.stato

urcr

c.

/,

f,

f

/h.

g/,

i/

e j/.

La

b

esaminoto.

se i co vispond gli

vertici

iil modo

in

si trovano

cui

gli

g

insiemi .

in

maniera

n na

ne nella

insiemi .

etti

sono

ta tale

nello

che

.. stessa

la

Sare-

connessa.

componente p

costn sono o costruiti

disgiunti g

insieme.

stesso p rocedura

da

La

Co rcteo-

EG Esercizi

c Fino-S av v

Supponiamo

a.

TRUE

che

dopo

e,

ven

Converto-Cowvoetuls

delle

FALSE

per che

ogni

22.1-Z

tutti

asse

arco gli

ti, archi

i

gli

sono

n

inizialmente

insiemi stati

che

presi

contengono

in cnnsiderazi

ad

ngni

veitice

i un

w e v. L E ereizio nne,

due

vertici

proprie 22.l-

sono

Si

mnstri

dueve

Si elenchino

i, d .

iterazione

guita

a e.

sul

orafo

orientato

non

.he .

vertici i ve

i vertici

linee

dopoche sono

in ognuna

delle

in profondith

ni

vc ito

che

a,. iun

i mn

un

nuoio

orci .

conness

componenti

p

3-5.

tutti

gli

-,, , .stesia

nella

m hi

sono

ctati

.se

e

rs.

vrcwco-Cowvowci

daC,

esaminuti connessa

componente

.colnse o

sono

nello

stesso

l ll S IC lllC.

n all t unì Quante

un Quante visita

li

h.i

i

chiamatis

viene

volte

, t-tv -Sor -.

voltei

e

, chiamata

.

,

,, Uno .

Si

loro alino

1le

di

l e eiuzione . i

ritirante l .

miopia

lil

lr,i

8

comp,menti

quattro

disgiunti

stessa

22.1-3

una

i

dei

EG .

figura ura

CowwerrEo-Cowro r res unisce

che,

al

lg

Friso-Sei v

retur

procedura

insieme.

is

f

v

return

else

N

lei

utilizzata

L insieme

VG

Uxiotu u,

if Ftxo-Se u

2

cl

le

e,g l

colle ione

preliminare essere

connessa .

archi

disgiunti

procedura

22.1-1

I

la

disgiunti

insiemi

Cowmwems.

if Fuso-Skl u then

t

di d

figura

MAKE-SET v

SAME-COMPGNENT u,

c

b

lPONEi4Tpuò

componente degli

5.4 .

b

a,b

nel

presenta

la

connesse.

volta

e l insieme

si

paragrafo

le operazioni

S wE-CO

stessa

disgiunti

cfr.

componenti

quattro

la procedura o no

insiemi

orientato

Collezione

iniziali

Cowni oxEwt

vertice

5

esaminato

insiemi

inoltre

CONi1ECTED-COMPGiVENTS G

1

Arco

disgiunti

di

con

grafo

C stataeseguita, vertici

8.

MAtce-Sex,

MAm-Sm

insiemi

strutture

connesse

se due

di un

insiemi

che

l operazione

insieme

di operazioni

Co wecreo-COMPONENTS

CONNECTED-COMPONENTS per

delle connesse

procedura

disgiunti,

collezione

scelgano

momento

n.

per

un

siano

delle

Dato

degli

di Urto Dal

dell unico

esecuzioni

le operazioni

strutture

mostra

dalla

e Fio-Set.

m

appIicazioni

togliendoli

di operazioni

che

le componenti per

Uno il numero

che

collezione

di

reaiizzazioni

rappresentante.

in una

r, il numero

Il numero

discende

e S,

molte

nuovo

al rappresentante

parametri

momento

Un applicazione

Una

S

i tempi

di uno

S,, benché

S, come

insiemi

puntatore

Maxi-Ser,

Ux box riduce

o di gli

analizzeremo

in termini

totale

S

che

gli Fmo-Sm x

di S, u

di

425

E ssi uzioni

cnn

CONVECTEDconnesse

I,. comnone ti intermini

di

l .

E

e/,-.

426

Capitolo

22

Rappresentazione

22.2

Un

modo

insieme

utilizzato

come

contiene

un

dell insieme

una

di insi*emi

struttura

lista

del insieme,

di ogni

se tale

ordine

di

dell insieme.

Ogni

deve

disgiunti

oggetto

di ogni

oggetto

soddisfare

questa

MAKE-SET lista

rappresentazione

C FIND-SET

concatenata

mediante

sono

il

semplici,

La

gli

oggetti

possono

l ipotesi

che

il primo

cui

unico

una

lista

e richiedono

b

concatenata

nel

figura

successivo

22.2 a

apparire

mostra

d

f

in un qualunque

oggetto

oggetto

concatenata,

tempo

di ogni

è .v

entrambe

01

F vo-SEv x

427

disglunn

itUlemi

nel

lista

sia

il

a

rappresentante . Con

per

concatenata

lista

contenuto

al rappresentante.

concatenata

consiste lista

nella

all oggetto

puntatore

t

disgiunti

insiemi

per

Il primo

all indietro

lista

dati

concatenata.

un

e un puntatore

All interno

anche

una

con

rappresentante

elemento

insiemi.

ordine

realizzare

per

ogni

elemento due

concatenata

C

semplice

rappresentare viene

a lista

d

di

stmlnlre

le

MA E-SEv x restituisce

operazioni

crea il

una

nuova da

puntatore

.r

al

rappresentante. d

f realizzazione

Una

semplice

c

b

e

h

dell unione rb i

La

semplice

più

insiemi

realizzazione

come

SET.

Come

fine

della

lista

la figura di

che

riamente

l Esercizio

adesso

operazioni

Mal c-Set

una

e il

tempo

il numero

n

totale

di

oggetti

Dato aggiornati

della

richiedono

da

tutte

era

originadi x.

tempo

nella

l i-esima

un

lista

al

all inelierro

pirntatore piri

Vuoi e.

un

cemtiene

8n- .

oggetto

., lista,

nella rivt,ltnnte

insie,ne

pun c I ie

il

ra

o barella

successi

gg etto

è

Ogni

f è il rappresentante.

/ove

at

b

p resen1anre.

isra

/1 risultato

di

è f.

figura

22.3.

di

aggiomQll

oggetti

I

M. w -Sex x,

I

n

Le

di

operazioni

Numero

Ma,vE-Sex .x,

V.

Uno

di UNION

1

M wz-Sex .c-

C

q-l

Uaio. x,

I

v,

2

Uruiow x ..r,

i 8q

mt

dell insieine.

elemenro , pri no de l

i1 rappresentante

g,

Operazioni

X

operazione le

e

è

lista

oggetti

gli

mostrata che

insieme

che

lunghezza che

alla

ite1la

y. Sfortunata-

oggetto

di avere

di.r

nuovo

contenente

nella

1 operazioni

8n.

o Fiso-

la lista

del

ogni

c,

g,

appendendo

per

lineare

degli

di MAt E-SEv

oggetto

di m operazioni

q

la

rappresentante

supponiamo

tempo

rappresentazione

tempo

del l insieme

sequenza

di m

impiegano

usa

eseguita

al rappresentante

I Lm/2Je

m-n

la sequenza

i oggetti,

y

22.2-1 ,

richiede

trovare

che più

viene

il rappresentante

e questo

l e q

unione

significativamente

il puntatore

è difficile

i il21

Eseguiamo

aggiorna

di.r,

di

Uwtòw x,

originariamente

lista

non I

n

22.2 b ,

veda

si

operazione

impiega

aggiornare

nella

In effetti

y

era

dobbiamo

Siano

concatenata

mostra

1 elemento mente

lista

dell

UNION X,

.

3

X

il

Il tempo e

totale

impiegato

O ni

q

è dunque in

quindi

ammortizzato

8n

media

ogni

di un operazione

q- ,

che

equivale

operazione

a 8m

richiede

dal

momento

tempo

8 in ,

che perciò

n

O in

il

tempo

Usino .i,

q

f/pi e la

cr ne.alenate

Un

euristica

I unione

per

pesata

li

entrambia en sequenza

Lz

realizzazione

chiamata, e deve

essere

Supponiamo C1ÀC.re

l nttiolte

della

clovuto

f

aggiornato invece

u iln ente

pedala,

Uwiov

procedura

al fatto

che

può

capitare

il puntatore che

ag

lilia

o ili

iornata

sin olv

l

è 8m.

descritta

he

si

opcèJzi he

impiega una

al r,ppresentante

ruppresent tnte e

sopra

di appendere

tppend t

n he

empre

Usios

ogni

per

inc1ud

puc

lift i

la

tempo lun

piii

meebro

l i 1un hezia lift

at1c ra

piil

cort

impie Ire

medio i

d

una

del l, lista della

lift i

o quellu

tempo

8 ni

per

hanno

operazioni Il

l ill

quecf

Qm

elementi.

M ac-SrT,

Con e e

Uiio

F,w -Stl.,

mostra

dsel,

-

la

/

I

p

erò i i

di

il

iwr

ientct,

runpre

e c li tac

I

una

teorema.

seguente

sono

Mai

impiega

r- -Sn,

,

Teorema

22.

I

poi luFI J.

n tee .

m

asando

..

iud

tchc piii

O Ill

in

UNION, .

,insiemi n,

rii

sente lice

pii,

corta.

più più

tC .111pO

di

redli. - i.-i me

i

sono

M, vt -St. r.

impie v

tempo

Ow

n

Ignl.

.

UNION

l euriilil. J

C FIYD-Set.

pI di

cui

n

di

Srrutn re

Dimostrazione.

Cominciamo

limite

al numero

superiore

aggiornato.

Consideriamo

rappresentante

aver

di x è stato

volta

prima

che

avuto

almeno

elementi.

almeno

totale

per

oggetto

Mam-Sm

più

usato

sequenza

è dunque

Om

l insieme

doveva conto

per

che

l volte, ha

al più al

l intera

I 1gn3

al

minimo

n, dopo

al

fra

le

tutte

On

al più

Figura

224

Una

di

foresra

disgiimti.

insiemi

1 insie ne

rappresenta

dc .stra

sulla

1gst .

di m operazioni

fanno

ta

aver

il puntatore volte

à

che

deve

è dunque

sequenza

e se ne

k

n elementi, più

al

risultante

n oggetti

gli

01,

ogni

per

la deve

il puntatore

avuto

l insieme

a

Dunque

risultante

in cui aver

è stato

il puntatore

piccolo.

429

disgiunti

insiemi

per

n, un

oggetto

che

più

successiva

aggiornato

tempo

volta

volta

nell aggiornare

impiega

ogni

risultante

grande

necessario

di dimensione di un

aggiornato,

f Igk

stato

insieme

nell insieme

ci rendiamo

aggiornato

il tempo

e Fwo-SET

l intera

modo,

essere

totale

facilmente

la

l insieme

può

Il tempo

ricaviamo

operazione

che

che

trovarsi

l insieme

in questo

Dato

ogni

Sappiamo

Analogamente,

aggiornato,

in un

al rappresentante

di x è stato

di x è stato

k elementi.

di UNION.

x.

x doveva

elementi.

Procedendo

di

operazioni ciò

due

oggetto

il puntatore

al rappresentante

al rappresentante

rappresentante

Da

oggetto

aggiornato,

di x è stato

il puntatore avuto

un

dato

ogni

per

in cui

il puntatore

rappresentante quattro

calcolando, di volte

dati

ll

b

dipgtrra

insiemi

i due

rappresentano

che

f è il rappresentano.

dove

f, g ,

d.

alberi

Due

a

di

risultato

Uwo e,

g.

ogni

Om.

Il tempo

n Ign .

22.2-4 D

Si fornisca

un

limite

asintotico

operazioni

di

figura

22.3,

l euristica

per

l unione

della

di esecuzione

tempo

sul

stretto

a liste

rappresentazione

la

assumendo

di

sequenza

e

concatenate

pesata.

Esercizi

22.2-I

Si

scrivano

delle

procedure

rappresentazione ogni

a liste

oggetto

x abbia

contenente contiene

x, x

assumere modo senza

che

e site x che

last x

è possibile usare

fx

e si-e x

siano

oggetto

scorrere

tutta

nella

dell solo

di x a quella la lista

che

utilizzino

contiene

x.

rappresentante.

l operazione

Si mostrino

la strut

SET nel

programmo

I euristica

per

tura

di dati

risultante

seguente,

l unione

usando

e le risposte

dalle

y

operazioni concatenate

i m

4

do

5

for

i m

veloci

Si

do

7

Uwtotu x,,

8

UNION X

9

UNION X .

10

FIND SET X,

Il

Fwo-Se

deduca

U iov

che

gli

da alberi

rappresentati un

r lppre enta

In una

insieme.

di dati

per

le tre

Realizzizmo

insiemi

asintnticamente

disgiunti per un

questa

concatenate, dei

disgiunti

insiemi

albero

con

nella

fi uro

un

unico

più nel nodo

non

veloci

di ottenere

possian o conosciute. una

seguente

modo

siano

l introduzione

con

cammini

Come

stesso.

rappresentazione

a liste

compressione

e la

rango

operazioni

semplicemente

crea

la rappresentazione

di se

è padre

ed

usano

che

intuitivi

algoritmi

che usano -unione l per

con

pesata.

MA E-Set x 1 to

I 5 by

UNION A 1 to

2

operazione

Ftso-Sn

un oper azione

viene

un

operazione

alla

radice

la

Uwiow x,

mo trat

di U os,

22.4 b ,

fa s

la radice

che

di un

albero

punti

dell altro.

Z

13 by

4 per

di

il tempo

migliorare

esecuzione

r,,

x, ,

X,q di

XE

quaii

x

moditicando

usando

sono

insiemi

albero

il rappresentante

contiene

albero

di quelli

euristiche

Euristiche 6

22.2-3

gli

e Ogni

un elenlento

I tv16 do

for

di ogni

radice

nonostante

vedremo,

M vz-Sm

fori

2 3

La

al padre.

Fi o-

s

1

disgiunti.

insiemi

degli

contiene

llodo

In che Uwow v.

le strutture a liste

ogni

Si puo

due

la rappresentazione

veloce

più

in cui

radicati,

di v

restituite

realizzazione

che

più 22.2-2

disgiunti

di insiemi

Foreste

In una concatenata

che

se x è un di y per

22.3

che

de11 insieme

lista

insieme

la

Si assuma

pesata.

al rappresentante

punta

corretti

la lista

e senza

che

all ultimo

e Usto l unione

per

la dimensione

concatenare

last i

rep

punta

riporta

che

Fino-SE1

e l euristica

attributi

gli

lasr x

Mal E-Set,

per

concatenate

la

rappreixistatio c

dimostrazione

del

a liste

Teorema

concatenute

22.1,

c l euri

che

etica

si

per

pocsnn i

I unione

ottenere

pei ti i.

n

nndi. lineare

Usai do sul

due numero

invece.

euristiche. totale

o

ùi

riusciamo

nper vivni.

ottenere

un

tempo

ali

esecuzione

che

è

430

Capitolo

22

Ur tow .v,

Lift .v,

431

disgiunti

F io-Sa v

y if

1

raitkjs

ranl x

2

then

py

3

else

pfr

mx e-

if

y

ra l

ranl fy

x

5

con

Fm -Sm

procedura

1

rankfy

rahk y

then

La

iiaviemi

per

y L, w Ft o-Ser ,

I

dati

di

Strutture

semplice

è abbastanza

cammini

dei

compressione

a Fl Y D- SET v o era Figura

2

5

dei

Compressione

eluremte

canrmini

I

iodate

Ft ao-S

vr

e i cicli

le frecce

al/e

radici

w p .i-

if.r

l

then

ccitnini ro

con

d nccesso

l unione

maggiore

adesso

rango,

per

la radice

col

allet

rango

di un operazione

corso

neI

direttamente

punta

viene

fetta

con

radice

alla

puntare

ran

o

La

la

efficace.

Come

si che

ogni

cammini

per

Uistow.

sul

realizzare

viene

nel

usata

punti

cammini, corso

direttamente

è abbastanza delle alla

semplice

operazioni radice.

e malto

FR D SET La

per

far

lu radice,

cercare

la radice,

alla

alla

direttamente

insiemi

disgiunti

di insiemi

disgiunti

delle

EfTetto che

utilizzi

l euristica

dell unione

per

un

restituisce

pr

cambia con

i ranghi. rango

il

scegliamo

mentre

nodo ogni

maggiore

padre

in ihaniera

casuale

nell albero

volte

che

di una

una

corrispondente viene

appl

radice raclici

delle

icata

con come

di Fio-St

è 0. L esecuzione Ululo

rango padre

a due minore

rendiznw

alberi, in

eden

di

u il suo

e incrementiaeo

v non l t ru Jice

ui

li lli/J. rango.

lo

del

nodn.v.

La

input

due

puntutnri

procedura alle

radici

Liiv.. dei

due

una

sottoprocedur

invocata

d

Uviur .

iitill7/ I

e viene

radice,

alla restituendo

sul

px

a

rappresentazione

e questo

22.4-3 .

Esercizio

cfr.

qui,

se

nel

esecsvionc

la

liste

caio

pi

ricorsiva

con

parametro

x facendolo

puntare

mi lioraiio

il tempo

se

lo...ahi

al

dunque

e

f

n

e

di

piii

produce nel

pe. ta tempo

in

non

Benché

22.3-3 .

Esercirio

tr.

uit i

ese

rango

per

l unione

per viene

è anche

mi .lioramento

l unione

l euristic6

con

è stretto

Of

la

tale

sole.

risultante

Ll,tvc-SrT

di

iore

e

Da

assieme.

ottenevamo

limite

in cui

cammini

dei disgiunti.

insiemi

usate

realizzazione

operazinni

n

abbiamo

il caso

3.

linea

compressinne

di

sono che

esecuzione

di

la

che

foreste

euristiche

due

è

è questo

il nodo

2 agginrna nella

à. Se.s

esecuzione

di

rango su

operazinni le

quando

prov irlo

per

x

puntino

linea

nella

ps

e la chiamata

il puntatore

poi

tempo

restituito

linea

La

radice.

restituisce

x

eseguita,

2 viene

la linea

I unione

delle

tempo

sterzo

della

di

padre

2 non

è eseguita

puntatore

baia

esecuzione

mv inre

dell unieo

di Finn-Sv

rongn. di

iniziale

per

che

tale

in maniera

i nodi

di accesso

il camminino

risale

prima

tutti

aggiornare

chiamata

euristiche

Separatamente.

il rango

nella

passate

Ogni

Altrimenti

termina.

a due

metodo lo discende

e poi

rndice. la linea

allora

ricorsione

dei

compressione

rango.

di

foresta

una

dei

di accesso

alcun

foreste

per

22.5,

cammino

cambia

non

con pressione

la figura

mostra

nodo

Procedure

Per

euristica,

seconda

g .rj

è un

Finn-SEt

procedura

direttamente A nche

Fwn-Sv

.i-

radice.

piccolo

più

m

p .i

return

3

8n

f

se

1 zn

Ign

pnssiamo

f

n.

COllle

alberi. di

Acl erm u n

cresce

che

nviltr

che

Icnumcntc

dctrnil I11È

lli.l

.4. p, ll ,1gl lf 1

MALE-SET X I 2

p xj nel .r

.v

-

0

e

U voi

1 operazioni

n

iato

On

pl

1llCill ..

Il1

p ll l

l

ll 1

.4

pn VClC llt

il

liinitc

li

germciite

piit

dcholi

di

O in

I

t.

Per

432

Capitolo

22 Strutture

di

dati

insiemi

per

disgiunti

433

Esercizi jl 22.3-1

Si risolva con

nuovamente

l unione

22.3-2

Si scriva

22.3-3

Si

l Esercizio

rango

per

22.2-2

usando

e la compressione

versione

una

i

non

ricorsiva

dei

una

foresta

di

insiemi

con

dei

iiano

una

sequenza

operazioni

soltanto

di m operazioni

MAI z-Sul

l unione

che

M wE-SET,

impiega

UNION

tempo

di cui

C FlND-SET

Q nilgn

viene

usata

e Ltsv.

dove

quando

3

Figura

dimostri

Si tutte

ogni

le operazioni

soltanto 1 unione

di ni operazioni

v, appaiono

Om

Cosa

la con pressione

per

usate

accade

nella dei

MwvE-SET. tutte

di

prima

vengono

se

rango.

per

l euristica

sequenza Lii

tempo

22.6

1 valori

sia stessa

le

la

Ftr o-SET

Analisi

dell unione

di

A i,

operazioni

Fir o-Sex.

compressione

dei

iisto

nel

rango

per

euristiche

per

operazioni

su

n mostrando zione per

un

l unione insiemi

limite

per

sia

complessa

lenta del

superiore

situazione

se

viene

usata

p2

p2

p65536

soltanto Rammentiamo

adesso

1g

definita

la

dei

cammini

lg

n

e per can

esecuzione

crescita.

con binato

ne

it

di esecuzione.

funzione

di

Per

meglio

una

notazione

Ackermann

capire

lu funzione

e la

per

sei 0

ripetuta.

Dato

inversa un

c,

intero

può

dato

i

0,

essere

più

definita

gi

ricorsiv imente

se

da

Om

lg n .

d aiuto

utilizzai

I espressione

la

piiu

di

coinpone

Ig 1g

termini

della

n 0, r

0

o

n

g

è

indefinito

1

l e.,ponii i,

I inversa

introdurre

j

2

1

Ai

1,2

Ai

I,A i,

j figura

2.6

figura

dell

ri

lafnis gioire

per

mostra

22.7

il

mostra

esplosiv t

2le

con

il

l

j v,lore

esponenziazione

ripetuta

di Ackermasm,

che

è defmita

su li

interi

....

coi

niimei

2.,

ri

a

con

2.

tunzione

A i.

j

perché

distanza il

nel

del

numero

li

lllll101

Ackermann della

delle

elementi. Olla

abbia

colonna

colo,1ne

Le sOlli1

i e j.

di

piccoli di

sottoiniieme

fr i

ITLlllltfO

valori

per tunzinite

la

espw enziale

consiste

roisa

una

piii

i, j

della

riga

nella o

i

per

rig s,

secnnda

coluilne

j 1,

per

schematicamente

Le-prima La

2,

indie lo

che della

e e

è fondamentalmente

A i,

rapii..unente.

i forni.,ci

n

finalmente

ora

2

arametro

in

i e j come

2 ,2-

il

2

n1

La

,.lltezza

1

21

da

i 0,

Ig

Ig2-

si

Intuitivamente,

Capitolo

.2

crescit

2

0

funzione

semplic

La

la tunzione

i0

i

La

A i,

indica

se

min

positivi

e la sua

1g

sei 0, n

1g lg

n

in

la dimnstra-

una

inversa

di Ackermann

I esponenziazione

per

sua

funzione

0

la funzione

presentare

daremo

della

i

delle Ig

è O nne in.

che

n .

tempo

uso

esamineremo

invece

O ma m, sul

di

paragrafo

Dopodiché,

debole

più

caso cammini

dei

In questo

cti esecuzione

leggermente

nel

la compressione

n elementi.

la suu tempo

di

definizione

l intero

per

n

compressione

Possiamo La

i e di j.

di

piccoli

4

che

cammini

con

it tempo

rango

disgiunti

quanto

molto

22.3,

paragrafo

valori

per

2

impiega

cammini

indefinito

Come

j

esempio

funzione

22.4

22

2-

rango.

per

che

2

g4

2

. .

2

ii

Per 22.3-4

2-

p2

cammini.

l

fornisca

j4

p3

i2

la compressiane

j3

disgiunti

cammini.

di FmD-SET

j2

l

llCl

linee

j. della

fra

SOlt 1lllSICllld

una

tale

cresce

già ri .a

pritua

ri he

di lCCIltl ltlClllSO

llCll

grande.

., .,

I,.l

lCt./,.l

l1,-, l

COllSlllC

dCI

iOlh lllslClllC

2--.

2-

. 2-

....

delle

coloni e

J

Strutture

Capitolo

di

dati

insiemi

per

disgiunri

435

22 che

è di gran

10 .

colonne

tutti

più

di,r

Ig

Proprietà

2

dei

numero

stinsato

eccessivamente

Si noti

pratici.

n

del

grande

vaIori

per

scopi

gli

O ma m.

V

lunga

è solo

che

5,

il limite cui

per

di atomi che

grandi O ni

Ig

g n

5 per

nell universo

A 4.

è solo

tutti

Ipt.

l

leggermente scopi

gli

osservabile e quindi più

circa

á ,n.

n

debole

4 per

del

limite

pratici.

ranghi

00

Nel

seguito

del

operazioni

4

cominceremo

Figura

2 .7

La

eleinenti

gli

della

ori . rn aie che

crescita riga

il w

riga

irella

nelle

ancora

più i

i

riga

compaioiro

insella in

i aunreiua

delle

La

della riga

i. A calma

riga

1. la

riga.

prima

i aumenta

linee

della

le

fra

crescita

di

crescita

tra

riga

e

eq lo ii

In generale.

incredibilmente

righe

l e i indicano

di

se

aircrrra

riga

i

con

il numero

della

riga.

Si nscervi

che

2 2,

i nodi

tutti

della

x c px.

tutti

per

interi

gli

x abbiamo

Dimostra ione.

La

della operazioni,

colonn

22.è.

I. Quindi.

j

le

La

Indichiamo

con

size .i

2 per

2, la funzione

Definiamo a m,

Per

min

un

far

un certo

camnsinn

accesso cammini.

A supporto

I

J

stB

Sl.

notare

I

perorasi

al

ri ,

cile

i

foreste

numero

tecresce

l. In

x rtic lare.

valore

di i che

monotona. dis iunti

di

in tempo

che

a n,,

ahsteno

con

Aj4.Ln lnj

A 4.

n

allora

al crescere

che

suo

cot to l

tutti,,li n

sl 3.

nodi

I ., m,,

dato

Visto

size s

2

dimostrazione

CI C

l1 n1

ripliil

lit

ill

qlle l

lilia

che

sul

F vo-Sv

che

che

ha x come

radice,

sul

numero

numero

di

appaiono

nel

22.4-1.

nell albero

induzione

per

cambiano

non

né il rango

di una

dell occorrenzs

prinia

0 e ogni

albero

contiene

della

operazione

un

contando

il

radice

di operazioni

Lwv,.

né la dimensione

Si del

prima

Lidia,

dato

che

i ranghi

nodo.

ra tl,.

Sia 1A

Se

pratici. che

cheabbizmo

111 lll

It

il rango iCI

ranl

Il nodo

J

e ecuzioneùi

prinsadell

Lisv e

iiara,il,.

.v

c ra l

y,

y è lu radice

size

possiamo

dell

sizej.x

hc

subito

dopo

definiamo

sizè

e size

lllQIOgd.

ulbero

assumere che

senza

si i nn

perdita

dopo

size i j

.s

per

gran

j

i

nodo

i.

non

camhi u

r i ..hi

i

di generalità

I u etazi ni-.

2

i

funzione

tempo .

immediata e

caso

radice.

Celi,i il tempo

Tr iitne

1,

è una nel

induzione

grutrl, I

si

rairl Q x j

cambiare

nel

è una

.

procede

Fimo-Sa

i è vero

inizizhnente

prunl i

O m lfor.

che.v

bero.

il lemm

ia

di in. scnpi

n.

La

le operaziani

Base

n ed

a cab.i

t .

4 per

che

dei

la lunghezza

x di alberi.

ioste.

noti

sono

O me rn.

le radici

grani

l

dei

è strena

fintanto

22.3 tutte

Dinu stra

proprieù

c ompressione

operazioni

n

al

è necess. rio

Quest

che

I. dato

di m.

monotonicamente

monotonie lmeilte

i

al crescere

cresce

ci aspetteremmo

del

I nlttJ

piccolo

di insiemi

n operazioni

di

Loiliij

in marniera

precedente

il volai .

Legna

decrescente

che il più

decresce

crei ere

aftermazicne che

i otare

diversi.

Lliamo

C . iC

è O à sn.

i

di 1gn ill

SONO

modo-

Per

n i tassato

n di elementi

decresc t

della,tostra

A i,

che

seguente

è manotonicamente

basta

il numero

di

U iot

nell Fsercizio

far ciò.

di 2

nel

.

n

il valore

J che

di

operaziotle

per

m,

proprietà,

numero

dei

cominciun o con

3 4,

I n ln

Ackermann 1gn

i5ul momento

rapidamente

più

di

fm/nJ

questa

all intuizione

compressione

A i,L

di

a A i,

dntn

funzione

A i,

quindi,

superare

cammini

meciio

j

ancora

di n, la funzione

conto

corrisponde

del

i

di m

cresce

della I

valore

rendersi

crescere per

l inversa

n

Fissa o

A i.

lettore

un

M vr-Sta.

di

delle

Per

ranghi.

tempo

puo

esecuzione

cammini.

.v stesso.

nodo i

al

px

di

dei

la disuguaglianza

col

Il valore

con

procede

realizzazioni

lasciamo

cambia. fissato.x.

tempo

sui

dei

dove

0 e cresce

non

dimostrazione

usando

J

raul- p x .

il tempo

1g n

e compressione

proprietà

è inizialmente

con

Om

rango

semplici

rank r

monotonicamente

per

ranl x

che

di ranl- x

limite

unione

alcune

dopodiche,

pr.

con

dimostrare

Il valore

paragrafo

2-

j

22.2

Per

cresce

.2 che

Leuusra

ossia.v

gli idènte.

e

le colonne

fra

I

uitiamo piii

il numero

col

il

proveremo

disgiunti

spa..intrrra

della

coloima

la distanza con

a la

i i alori

a risctlsa

sia

i

esp1osii

ori oivale

i numeri

on

iiel1a

le

spa.iatura

nio1rissilno

colonne nella

Acl,.enmnm

riga

scalci.

i corrispondenti

appainno

di

fi,n-ione

riprodotta

riga

i con

sparso

I che

della

1 che

essere

puèè

compaiono

efemeiui

esplosi,.a

paragrafo

su insiemi

dintcnii ni.

L, a.

che e

reati .c

mn/

y.

436

Capirolo

22 Srrutture

rank .r

Se

rairl

J

size y

il nodo

y,

.r

gran/

y è ancora

la radice

del

nuovo

albero,

Dimostra .ione. operazioni

grankf

per

Dato

del

Uno

r

Dis wstrazione. r ad

un

.x a ogni

22.2

r, nessun più

nodo

una

n nodi, di

rango

sarebbero un

r.

sua

r, questo

un

viene

della

più

nodo

sarà

mai

n/2 r,

al più

il che

a iil2

volta

22.5

Ogni

ha

nodo

originale

sono

rango

al più

Se fosse

numeri

naturali,

del

Useremo

il

dimostrare assumere

r

rango

2

è etichettato

momento

che volta

lemma ulteriori

degli

il limite

1gn,

etichette più

r. Dato

che

assegnate di

2

ci sono

che che

per

Dunque,

che

costo

reale

1 nodi

di rango

r. Dato

che

l intera

della

Livv.

invece

vena uso

di esecuzione

ammortizzata

cfr.

l analisi

dell operazione sono

asintotico

le non

amntortizzat t, Uwoe

alle

puntatnri

eseguite

due

operazioni cambia

r ifa

paru

Detto radi .i.

F so-SB anche

22.

18.1

Dato

in Om

originale

S.

la sequenza

per

i costi

alle

reali

S

di

,

operazinni

S

viene

eseguita

in t m

j,o

O,

1,.-n .

in tempo

O n

di

Ig n

tempo

di

tre

Ig n al

operazioni

M wz-

iW wz-Szv,

la sequenza

per

esecuzione

e Ftwo-Se ,

di insiemi lg ir

Li v

derivata.

O m Ig

di cui

disgiunti

nel

che

pro -o la somma ia

operazioni

caso

n sono

con

n

e della

operazioni

unione

per

rango

reale

di

pessimo.

corrispondono

totale

stata

MwKE-SE1

delle

eseguita.

d il

al

costo

unith

di prezzo

Questo

totale

ogni

assegnate

una

rappresenterà

il

tempo

somalo facili reale

una

01.

unith

i prezzi

operaziotle.

per

assegnati

coincido-

operazioni. assegnati il rango

il blocco

con

la notazione,

0.

per j l

Bj

I,

I. 8g

Userenso

II seguente

c Fiw -Si,,

e LINK

ognuna

alle

operazioni

r al blocco

il numero

definiremo,

dato

Fiso-Sex ,

1g r per

più

alto

un

intero

r

è dunque

i ranghi

partizioneremo

0,

1,,

Llgn

il blocco

Ig

1gn

dei

che

Llgir J è

1g n

1. Per

J. D to

1,

j

1,

se

j

se

j 0,

se

j 1,

se

j

2.

....

Ig n

l.

il blocco

2....

8j

.

l

assumeren o

se si considerano

LJwoi

foresta

impiegano

i prezzi

massimo.

le

tipi

due

Supponiamo

che

Pei-

.u

ru

0,

j

di

prezzi

per l.....

i

l.

Z.....

Ig n

appartiene

al

di,cceiso.

dal

partu

I

/ il

un,.r

Ai c l1LC

trinità

unità

ti

hk,ccn,.

ni inlo l11 II110

di

Si

J. con

blocco

l

o ni

poi

una

Llllil

llllll l

unith Lli

li

cti

r

faccia

lio

c lnlillinu

t,. le

e.v,

unità

i/à

di

è mai

che

I

sono

ovvero si

, .,

cigni

J

nu l

J

,

.r

sul

22.2

i

la

c tlllmill i

n di

coincide del

nodo

D

cantnrino. dei

e dunque

implica

consecutivi . 1 LÞ

di

coniata

all ultinui

il lemma

ronchi

e unità

accesso

radi e

blocco che

blocco di

stc,,.nblocc , raciicc.

di

camnlino

attenzione

nello della

il

dei

dell in ieme

mt

cile

è p r, uno

ranghi

no lo.v

hl CCll.

c

nodo

in un i

Fio-Sex

nodo.v .

ssegniamo

bloc n

i nodi

consiste

j-esimo

u n operaziutse

per

Fit o-ScT

dove

ca,timino

Irl,ivp-S,-.q-.

di ni

di m operazioni

O i

il

Ltm

su una

operazioni

assegnando

-

i1 cui

sequenza

di tempo

MAwe-SEv,

di

delle

di discutere

in b o citi

.v ..v,......i .

una

di partenza

sequenza

dimostrare

unità

operazioni

queste

Dunque

conviene questo.

á

la sequenza

convertita

di tempo

le operazioni.

assegnati

che con

inoltre

allora

è

limite

per

Ftwo-Se .

di convertire

limite

e calc oleremo

R

Nell eseguire

I iiv

procedura

necessario,

il tempo

l analisi

1g n .

per

sequenza

di tutte

alleggerire

i ranghi

immediatamente.

per

è Om

22.6

cammini

insiemi

i

aggregati

un

Assegneremo

I prezzi

dato W

n/2

adesso

eseguita

dei

sugli

volta

p . j.

Supponiamo

n

S

, un

n nodi

n/a

contraddizione.

nodi.

al più

segue

l operazione

sia

operazioni

Legna

O nr

1a sequenza

in una

ogni

nodi

esisterebbero

di tempo

i parametri

mostra

sequenza

m

O m 1g

che

convertita

al operazione

r, allora a una

nodo

tempo

si invochi

che,

ogni

di

metodo

che

tempo

nella

che

il rango

I lptj.

il corollario

limite

che

Dato

operazioni.

essere

può

1 Verifica

437

proprio

assegnato

il rango Dimostrazione.

disgiunri

2 .7

e compressione

Prima un

Udrai

3m . di

di m operazioni

Dimostra ione. ogni il rango

stata

di in

sequenza

Ma,aiE-Sw.

cambi

antenato

viene

Una

no Corollario

limite

lemma

Teorema

vengono

il nodor

di ogni

radice

volta

almeno

porta

ogni

Quindi

la prima

di

il

poi

rango

un etichetra

contiene

in effetti,

o,

con

nodi

22.3 che

a una

un

anacchiamo

il lemma

etichettato. per

assegniamo

quando

Liv ,

dell albero

radice

etichettati,

di

Per

radice

nuova

di rango

assegnato

x.

è assegnato

n nodi

che 5 òi

sol o quando

albero

fossero

da

chela

radice

al più

ci

etichettati

rango

m

assumeremo

sia

r.

linea

radice

etichettiamo

nuovo alla

Se

o nella

come

il rango

che

esistere

possono

nodo

che

I. Dato

quando

ha

di rango

di r. Supponiamo

Supponiamo

in questo

volta,

un

Dimostreremo

sequenza

nodi

valore

che

2 nodi.

r

certo

n/2

2 di MAve-SE

ci assicura

è almeno

al più

un

linea

nell albero

almeno

il lemma

dato

x nella

nodo

etichettati

di x

0, esistono

Sia

nodo

operazione

m

paragrafo

e Fiso-SEv

utilizzeremo

22.4 intero

ogni che

5 implica

seguito

Sa ,

e Fio-Sv .

ogni

che

in S, abbiamo

la sequenza

Nel prank v

Per

insiemi

per

I

grank

Lemma

dati

e

size y

size x

di

con

Cálllll11II10

che,

su

n

ni

Assc,.ncre,no l tl

r..tdicv.

Cllh

o

rii

i

ui

iccesio

ione

r ni hi

iu ,

ti,

l

cui

li

o

nobel

438

dati

di

Strutture

439

disgiunti

insiemi

per

22

Capitolo

I l

Big-

Bigi-i

I

n volta

Una di

che

a un

non

blocco,

osservi

che

nodo

volta

ogni

diverso

verrà

gli

mai che

dalla

radice

assegnata

più

o da

una

un

unità

suo

viene

figlio

di cammino.

assegnata

Per

ga ,-i

unità

una

capire

rV

si

la ragione.

I

n

avviene

lacompressionedi

un cammino,

il rangodi

un nodo

per

c x, rimane

p v,

maggiore

di

funzione

accade

che

diversi, Dato

che

FIND-SET,

visitati

durante

le operazioni

ogni

delle

che

e dato

di blocco

per

assegnate

al più

Limitare

ogni

x è assegnata

una

e quindi

verrà

a.v come

vecchio. x

un

il cui

padre unità nel

unità

da

Fwo-SEv. unità

ogni

che

e quindi

rango

è in un

al più per

del

una

le

unità

al più

1g n

nodo

per

di x

assegnata

che

sia

nel

ut a

numero

di x

blocco

unità

il suo

può

della

compressione rango

un

il rango

nel

di un nodo

non

verrà

di nodi

rango

massimizzato

dei

il cui

essere

è nel

suoi

rango

blocco

di

n-I

assume

intero

dato

appartiene

al più

assegnato

che

1-

l rvn 8

quali

consiste 0

j

ti

lio

al blocco

j

si

di un

nel ricordi

che.

altro

nodo .

il lemma

per

limitare

22.4

il numero per

il lemma

Indichiamo

1g n

dato

as egna

di unità

che una

dalle

aggiunte

n,

t. Poiché

unith.

i1 tempo

totale

n 1gn ,

1

ognuna

e Liiv..

M vE-SEt

operaziani

0n

g n

Et è O m l

Fio-S

openzioni

abbiamo

D

lg n .

è O ni

i

hidelgenere. I

j

totale

il numero

è O n

delle

b isolo

successivamente

B j

Perciò

un una

piii

n.

a

assegnata

ha il rango

nlg

del

quello

di

Una

22. . W j

di ni operazioni

sequenza può

essere

su

eseguita

51Av

E-SET,

U os

una

foresta

di Ig i

Om

in tempo

di cammini

cnmpressione

di nodi

con

22.8

Cnrullnrio

l uniù

SEv.

un

diventa

più

Bi g0

asie znzto

sia

i

nodo

j.

di cantmino

appena

a.v

sex

genitori

assegnate

le u iità j per

nnn

unità

di cammino,

di unità

cammino.

di

essere

mai

Bj

biacco

è fissato

di

l

1

8 .

8J

B,i B

cammino.

del alto

puh che

prima

a.v,

se a un det

più

volte

j. Quante

essere

l, e il rango

possono

limitare

per

il prodotto

i blocchi massimo

totale

il numero

Pn

con

tutti

per

e il numero

blocco

n-I

vengono

che

compressione

ha

di cammino,

dopodiché

di volte

1

vertice

a,im

dato

un

Indicando

blocco.

1 unità Pn

Ftio-SEt

osservando

della

corso

padre

differente

B j

in quel

sommando

ottenute in

rango

con

radice. Ig

operazioni

nodi

Q.

j

di cammino

avremo

di blocco

della

di

interi

gli

le unità

massinio

numero

tutti

per

limitando

Terminiamo

di tutte

reale

il figlio

assegnate

Inizieremo

nel

padre

il nuovo

blocco

esso

successivo

il numero

dei

n/B j

Nj

Dunque

delle

totale

cammino

una

più

tutte

in ognuna

il numero il costo

assegnata

w.v, prima

pr

nuovo

il rango

Questo

difficile.

piii

allora

un

che

sia

po

osservato,

fintantoché

hanno

rango

in blocchi

di blocco.

è un

assegnato

padre,

ne concludiamo

Il passo

appena

fg n .

valori8 j-1 2,8 j-1 3,,8 j .DatocheesistonoB j

cammino

con

rappresenta

1, vengono per

rango

visitato

nodo

è Om

viene

Dunque

sempre

coincide

di accesso,

0 a 1g n

Non

di cammino.

totale

da limitare cammino

variano

di cammino,

avevamo

blocco,

dato

li

$8 -

e

1g*ranl p x

il tempo.

8i

per

totale

tra

con

avranno

unità

assegnate

questo

r0 tl

è una

padre

ll

crescente

unità

Zp

strettamente

del

la differenza

Quindi

questo

che è facile

su un

di cammino

di cammino suo

e quello

volta

sola

Fino-Sa .

di blocco

Supponiamo nuovo

più

un

Ig

le unità

Inoltre,

.r

una

Mostreremo

1

di

diversi,

una

m lg*n

il rango

assegnata

delle

operazione

ha

in blocchi

totale

di blocco

x

mai

il numero

di blocco

di

il rango

le operazioni

i numeri

il tempo.

prezzi

unità

numero

con

fra

rango

padre

monotonicamente

assegnato

Fmo-Szv

Il numero per

verrà

il nuovo

differenza

funzione

hanno

a x, non

abbiamo

operazioni

una

e il padre

x

e quindi

La

crescente

volta

è a sua

mentre

vecchio.

del

quello

stesso,

monotonicamente

Ig rank v

nodi

lo

I

li

p8ig-

il quale

disgiunti

nel

pessimo.

caso

i sono

di cui

e FlvD-S v. insiemi

con

MAKE-

operazioisi

unione

per

e

rango

il hnmediata

Dimostra iodate.

per

e

22.7

Teorema

il

i

22.6.

lemma

avremo

Bijou

Esercizi

i rB j

1

I

Dimostri

22.4-1 Poiché che

h è il numero B0

1, avremo

totale N0

dei 5 n

nodi.

dovrir

u/8 0 .

essere mentre

anche per j

N j I

n. Nel

citai

j

re

22. .

il lemma

0. ricordandO Q

7

bit

Qu,,tsti

Si Cllt.

sono

toi.nisca IC

C lllplVS ill llC

una

ri

necess

a ut

tl

CIBI

Ll ll

C lllllllllll

Jo.,

per

ientplice.

dimnstr ri,.ne

Opèl,l/1011I

no

I t I il

l i I1 ll11plC - I 1 1

sizc

memoria ,tre

u., .mdo Elle

I llslCI11I ldllljlE

il

i.

.

limm,.t

ILlllll

COll

O ll

I Il .

Qu.usti

Ll ll lOllt.

e pl

per

rctnl

.5.

il c r, ilario I ll1 20

., J

t1

l SC

llZB

440

22

Capitolo

22.4-4

di

Supponiamo maniera

tale

accesso

il cui

una

si assegni

gli

non assegnate

una

unità

unità

Qm

del

blocca.

unità

j per

0,

j

di cammino

nodo

di

delle all ultimo

di blocco

al blocco

è l ultimo

una

sull assegnamento

unità

appartiene

e non

cammino,

la regola

si assegni

rango

radice

essere

modificare

che

avviene

non della

se

di prezzo

in

cammino

di

un

è un

nodo

Si descriva

una

fi

lio

unità

ad

il suo

un

dato

rango

nodo

di

caso

Mtiv.

Iniziamo

ogni

chiave

mi rimo

off-line

con in

l, una

l,

2...

ii

è restituita

da ogni

chiavi

in un

extracted 1

dall i-esima

chiamata

eseguire a.

l intera

4,

8. E,

Per

è inserita

del

appartiene

un

a Insti

un

dato

a un

volta.

Più

in particolare,

i

per Il

l, 2,

del

problema

minimo

off-

è rappresentata l, 7, E,

una

anche ine,

problema di alberi

radicati crea

restituisce i

nel

senso

corretti

nell array

algoritmo

rappresentiamo

I,,E,I E,I,,

...,I,E,I,

lwsERv

per

possiamo

ogni

è rappresentata

da un

diversi

E rappresenta

Poi

una

S

eseguiamo

inserite

la seguente

spezziamo

la sequenza

S ii

sotto equenze

L

chiamata

di

di chiamate

di

ExlRAcr-i liiv

fwscRt.

Per

in un

operazioni

e ogni ogni

insieme

I

rappresenta

sottosecjuenza

1 to

fori do

3

K,

che

è vuoto

se I è vuotn.

di ma

idea

da

g

di fondo tale

j tale

if j W m

l

che

i c

b.

Si

6

K, c

b.

return

Si

dimostri

extracrc

che

i

che

nel

e Ge rr

del

di r, anche

se

nel

è es o

ciò

se

Fiso-DEvvv di

il totale una

di

pessimo

che.

dimostri

e realizziamo

pessimo

utilizzando

utilizziamo

la foresta

caso

stesso

un

i nodi

tutti

di

sequenza

5,

di S

pero.

non

euristiche

i

T

all albero

la profondità

per

disgiunti nella

necessaria-

corrisponde

la relazione

esattamente

memorizza

non

di determinare

le

di insiemi

corrisponde

albero

dell insieme

la realizzazione nonostante

caso

di insiemi

foresta Si

è On -.

cammini

all interno

radice.

e restituendo

radice

esecuzinne

dei

i

r

lla

fino di

a una

simile

v è una

se

è di mantenere

che

la somma

i ,,

alla ...,

in o

delle

lungo

pseudodistanze di i in T.

profonditè

,dove

i e iè

v

pseudodistanza

v una

ni nodo

di un

nodo

di ,

che

qualunque

S,

in

è definita del

radice i alla

da

se il cammino

Ovverosia.

laradicedi

v alla

da

il cammino

sua

suo

radice

in T è data

alloralaprotondithdi

z dv . fornisca

una

realizzazione

di

1 ve-TRAE.

Si mostri

come

eseguire

la compressione lunghezza

va

modificata

del

dei cammino

Fio-Scl

per

cammini,

e il suo

di acce o.

le pseuclndistanze

realizzare

Si controlli

in maniera

K

y

La

Flan-Dvm v.

che

ih particolare

deve

realizzazione

lineare

essere

deve

di esecuzione

tempo

tale

realizzazione

corretta.

Si

mostri

come

x nno

nsodificate

le

Usto

pr ic dure

e Lie

u

minimo E,.

dopodiché

pii

arrende diitru

di j ule

.cllC

GeArrh.

perrealizzare

che

l ii siemc

K, eii te

i.

tlcceis trialllellte

,l

r tdice

dell

llbe 171

T,

orriipondeIltc

e K Si

tnrnisca

m

operazioni

im

limite

stretto

sul

tip

di

ecccuzivne

nel

el

l ari

il fig1io

albero.

quello

i

/ il valore

e.

7

da

K d.

e.vrracred j sia

infatti,

S corrisponda

nella

detecniina

then

T

permette

albero.

suo di un

differente

gl i alberi

per e pi

esecuzione

5

del

la radice

albero

in un

1 assegnamento

Flio-Desta

di albero

essere

si assume

i.

nodo

accesso

insieme

F

foresta

procedura

n

5

nel

radice.

il tempo

di

una

mantenere

i all interno

nodo

essere

e la compressione

ogni

a quella

aggiorni 2

DO-

una

I poniamo

c.

1

di esecuzione

in T.

n

OFF-LIAE-IVIIYIXIUl1 n,

di

truttura

La

nuniera

da queste

di realizzare

tempo

è v.

nodo di un

r. che

con

il tempo

rango

. dove

S

v

i.

da

ridurre

mente

5.

problema,

singola

vuota

al fine

operazioni

rappresentazione del

MwvE-TRee.

per

unico

una

una

r.

il cammino

torestaF.

E

essere

è il padre

incontrati

insieme

le chiavi

non

seguendo

l unione

cioè5come

eventualmente

inizialmente

si suppone

GR vr

Possiamo

restituite.

il cui

i. che

di usare

operazioni

esrrncted.

questo

sul

stretto

i ogliamo

profoedità di tre

la profondità

nodo

realizziamo

tali

albero

il nodo

pv

in S èdatoda

sequenza

un

della l esecuzione

fa diventare

Immaginiamo

restituita

che

chiavi

a.

padre-figlio,

omogenee

dove

durante

Ft o-DEmn

disgiunti

quale

inserire

è la chiave

lettera

P di

determinare

delle

un limite

profondità

determina -io re

Make-TREE i

Exm ctdove

vorremmo

sola

ogni

dalla

ed

a EXTRACT-irIIN,

vorremmo

... m, eirrncted i off-line è

problema

di determinare

dinamico

I sERt

e m chiamate

una

dove,

insieme

operazioni

esattamente

ExvR cv-Mi E, E.

di

delle

di Exte cv-Mtiv.

ExvRwcr-Mtx.

9, 2, 6, E,

i valori

realizzare

l esecuzione

S di n chiamate

S prima

ogni

3, E,

Inserite

di

il mantenimento

dopo

.. in

seguente mentre

n

chiamata

sequenza

Nell istanza numero

concerne

...,

sequenza

chiave

array

2,

disgiunti

insiemi

per

e si dia

441

disgiunti

insiemi

per

proposta.

della

della

può

dominio

di dati

struttura efficiente,

Determina-ione

Nel

off-line

del

una

realizzazione

j.

Minimo

dal

della

peggiore

GR rr r.

elementi

usare in maniera

dari

potrebbero

Problemi

Il problema

come

LINE-iAIN1l1UM

se ciò

1, mentre

assegnata

c.

22-2

che

mentre

del

1g n

viene

gli

Dimostrate

di cammino

...,

l,

dunque

blocco,

unità

nodo

T

blocco

22-1

di

Strurture

extra

lr cl restituito

da

Ovr-Lt - - 1islwvivt

corretto.

MxvrTictx.

Ftvt -D ri

ii

vr.

n clel1cq r li

caso

di

peiiimo son i

operai

una inni

cquit z i Xl

xvi--Tt n- .

di

442

Capitolo

22

22-3

L algoritmo

Il minimo antenato comaui non in P.

di entrambi

e ha

abbiamo

off-line

Per

di nodi risolvere

due

nodi

la profondità

all inizio

comuni

T. Nel

probEema

comuni

di LCA root T .

i che

T è il nodo dei

arbitrario

il minimo

antenati

minimi

la chiamata

radicato

insieme

un

determinare

off-line

albero

in

Te

radicato

dei

di T con

asùenati

u e v in un maggiore

un albero

il problema

w ne

i minimi

per di

in T, e vorremmo

un ispezione

colorato

Tarjan

comune

ordinate

esegue

di

antenato

P

antenari

u. v

di coppie

antenato

comune

off-line,

la procedura

di ogni

che

Supponiamo

è un

minimi

su grafi

elementari

Algoritmi

coppia segueme

ogni

nodo

sia

dell esecuzione

LC A u 1

Maxi-Sm u

2

ancestor Fnvo-Sm u

3

for

ogni

4

u v di u in

figlio

do

T

5

Visitare

a cesror Fti D-Set ti

e-

si

Un

un

di

color ic

8

forogni

9

I

st.a,cK v tale

nodo

de

if color ic

che

ir,

v

c

et.wcK è

v

ancesroi Ftio-Sn

oritmo

che

la linea

10 è eseguita

esattamente

volta

una

ogni

per

a.

coppia

i

in b.

Si dimostri per

che

insiemi

viene

quando

disgiunti

invocato

è ugua e

alla

il numero

LCA u ,

di insiemi

nella

struttura

albero

dente

P. di dati

ùi visita BFS

profondith

profondità

Si dimostri coppia

d. .

che u,

S analizzi Si struttura

v

LCA c

correttamente

il minimo

antenato

di ii e v per

comune

nel di esecuzione

di

disgiunti

per insiemi

LCA, data

asswnendo nel

che

usiarno

la realizzazione

di un

di grafi

più

presenta

un semplice

di

grafi

in

profonditè visita

della

reale

di un

la visita

introduce

1a visita

cui

comuni

il corrispon-

creare

23.3

in

Una

seconda

applica-

grafn.

viehe

introdotta

aciclico.

connesse

torwmente

visita

applicazione

prima orientato

grafo

di

cotne

in

sull ordine una

presenta

companenti

delle

e spiega

per come

23.5.

paragrafo

della

22.3

paragrafo

la ricerca

e cioè

zione.

ogni

P.

il tempo di dati

stampa

23.4 topologico

23.2

Il paragrafo

senrch .

input

izzati

giat .

computazionali

in ampiezza.

real

sono

tecniche su

Il paragrafo

standard

risultati

alcuni

l ordinamento

profonditè e.

inglese

dall

i imita

breazlrli-first

le

algoritmi

degli

in

datn

grafn

su grafi

quindi

grafi

di adiacenza.

chiamato

di grafi

di

canlpo

rappresentazioni

matrici

e come

Il pangrafo

i vertici.

esamina

del

due

le

1 discute

e mostra

di u in T.

di visita

algoritmi

la struttura

riguardanti

del

algoritmi

altri

un grafo. da visitarne

in modo

grafo

proprietà visita

una

con

Inoltre.

fondamentale

di adiacenza

liste

come

i

al Si dimostri

23.

Il paragrafo e

thenstampa Ilminimoantenatocomunedi u

a.

il nucleo

costituiscono

molte

scoprire

può

cominciano

del

archi

gli

visitare

e per

rappresentare

per

sistematico

strutturali.

di

elaborazioni

semplici

P

di grafi

algoritmi

molti

informazioni

queste

in modo

di visita

infatti

metodi

diversi

presentati seguire

algoritmo

grafo

ottenere 7

verranno significa

un grafo

i vertici.

V

UNION l ,

6

capitolo

In questo

LCA u

23.1

di grafi

Rappresentazione

l

Note

al capitolo Molti

risultati

importanti

sulle

truttu e

di dati

per

insiemi

disgiunti

sono

dovuti

almeno

dei

cammini,

includ ndo

metodi

a una

pa sata

che

a volte

offrono

sono

di

adiacenza

liste

in f

compressione

Vi

in

di

questo

Tarjan

in tempo ha

mostrato

adiacenza

che

è necessario

un

limite

inferiOlc

Q lllC ltl.

Il

pel

1pc

l l7lolll

di

uno

o come

es a

che

assumono

un

rappresentare di

adiacenz .

fornisce

un

matrice

perché

libro

le

di

coppie

roll

rJppreient ti

Om. 187J

standard

mndi

un

V. si

solito

ii

input

una

co ne

Q

I

preferisce di

compatto

modo

iis

gr tto

G

grztn Di

1iite

usando

liste con

zrah

rappresentare

rappresentato

di

collezione

rappresentazione sparsi.

di

aio

adiacenza.

un t

tratte

eseguite

due

CU

La

i idi

tutti u enti

di

v tali

i vertici n

in

Ci.

Cile

Jsiulllollo

26

C 1pil lo

i lofo

gr lt

eli

illpul

un

xvllOIV

si nlo

adiaierl/ .l. liste

ad

tlel

prc eillati

lll itrici

mg presenta,,ir nee n

puntat ri i vertici

vertic.i

In

di

che i ni

li

adiacen,a

un

eiiila lift i

di

ut

rrc

ioli iccnza

G

grafo

ir,

i

c

i v rtici

1.

l

F

in

c niiite

c inprinili

quintali.tclj il vcogonii

di

iiilito

incinoriri iti

skclj

li lti

Introduzione AlgOl

lfME

SU

gMfl. I grafi

sono

lavorare

strutture

con

essi

reremo

solo

Nel

alcuni

Capitolo

breacltl

orientato

Capitnlo

ogni

arco

grafo

che

ha abbia

esempi

buoni Nei

assumendo

Capitolo

25

sarà

vertici,

altri

Interne

nel Capitolo

rato

descrizione

dCll

ne cnnside-

di

al calcolo

dei

Capitolo

i inostrerè

la

cammini

26

i ce nsidererè

come

calcolare

enerolc

essere

puo

usato

i cammini

minimi

da

per

in cui

i vertici

tutti

del nno

minimi

di

d dei

sorgente

canlmini

minimi

niussimo

di materiale uno

i s mai iera

rii shvre

il

tra

tutte

in una

rete

e pozzo olo arco

sin

ogni

ed un bunn

fornai.

di

a tutti

specitico

attraversare

puo

i vertici

In particolare

to vertice

maturi le.

in diverie

tra

mininsi peso

un

il calcoln

che

un grafo

per

17 .

lunghezzao

nture

prei

visita

della

di copertura

alberi

gli

un flui n

materiale

minimo

una

SOtgil1tC

si puii

e si

itl anlpiezza

e la decomposizione

di collegare

modo

di trovare

a.,vociata

di

quantità

un

il Capitolo

specitic l

una

inassiini

veda

calcolatore

un

coitnesse.

ca1iol ire

il prublcnva

del

illpllt.

ten po

e tl ll

di esecwioi e

algoritnso un i

ct ticiente

varietà

ui1 1 cotlsuoc

ionvel1/ione

C lllt..

I,.l 110 .,l7IOI1C

O

AL

d

il .,imhol ,

E clan u

di un

su di un

algoritmo

lato

r fo

G

V.

E.

1010.

L1110

adott 1t t

,.lSlll OIlC.,l

dcn ta

parte

correlad.

ditllctlsiol e

t

centinaia

applicazioni

due

di copertura

. cioè

per

si

abbia

prnblema

di tlussi

di problemi

Verrò

per

per

sono

la visita

aciclico,

orientato

albero

pe o

algoritmi

arco

avente

QUCSto

il calcnlo

Nella

27

capacith

orientato.

ogni

nel

orientato

prefissate

per

che

un

o

di

su

grato utilizzando

Si vedranno grato

fortemente

trovare

Gli greedy

un

di uri grafo.

di un

si considererb

mentre

di vertici.

visita

componenti con e

minimo.

e 26

in questa

di grafi

algoritmi

gli Vi

campo.

questa

in termini

depth-first .

lunghezza

dedicato

le coppie

un

f

25

un grafo,

gli

sue

di algoritmi

Capitoli

e di conseguenza per

rappresentare

può sulla

topologico

una

peso

si

in profondità

si mostrerà

associata

definiti

basati

nelle

24

importanza

come

algoritmi

l ordinamento

grafo

in informatica,

diffuse

significativi.

vedrò

o la visita

firsr

Nel

i più

si

alcuni

in profonditè.

molto

fondamentale interessanti

tra

23

discuteranno

a

di

computazionali

problemi

di un

di dati sono

O

I.,l llO .l

F. I.

nicol. li m, le l Ill..

8

c s s/l

per ill

qlieiti

s ll lil clli

C llC l,.l

11 ,l,.l/IC llC.

ia Il

n t l/ioile Mllll Oli

l

44á

Pane

Ad

Vl

tempo

esecuzione Un

più

O facili

l algocitmo

V , E da

leggere. verrà

G verranno

indicati

e gli

archi

sono

visti

tempo

richiede convenzione

. Questa

at tra convenzione

di un grafo i vertici

si dirà

esempio,

richiede

senza adottata

rischi nello

attributi

intendendo

le formule

che

dire

che

descrivono

l algoritmo il tempo

di

su grafi

elementari

Algoritmi

di ambiguità. pseudocodice

rispettivamente come

E ,

0 V, rende

di

con

VG

un

grafo.

gl i insiemi ed Ef GJ.

Quindi

dei

vertici nello

e degli

archi

pseudocodice

capitolo

V isitare

un grafo

i vertici. di

Un

un

informazioni

queste

elaborazioni

semplici

23.1

Il paragrafo come

di visita

algoritmo òente in

nel

la ricerca

e cioè

modi

due

di adiacenza cui

per

quelli

in questo

tutte

che

tutti in. un

semplice

in

profondità

Una

seconda

grafo,

viene

in

visita

della

reale

di un

la visita

introduce

la visita

aciclico.

connesse

il corrispon-

creare

applicazione

prima

le coppie

di con

applicaintrodotta

urdinc

club vertici

i ertici

presentati

arhilrarin,

con

d

occone

Ad

esempio.

nel

Capite lo

pun

due 26

essere

assumono

presentati

di adiacenza il grafo

quando

preferita di dire

che

grat,

liste

usaisdo

algoritmi

degli

su

algoritmi

intrudo

essere

con cioè

sparsi,

grafi

ce vi è

rapid.,utienle cammini

per i lorn

grafi

tra

minimi di input

ii ino

di adiacenza.

matrici

adiacenti

dati.

di adiacenza

matrice

o quando

rappresentare

degli

parte

di liste

collezione

la rappresentazione

rappresentato

sia

una

come

E

di

compatto

mag ior

in input

grafo

con

modo

V.

si preferisce

Di solito

La

di AV... un

n AV -

ir ne

rappresenta

i i erti i

che

G

un grafo

un

fornisce

minore

assumono

cnll8,,a

rappresent iti La

perché

è vicino

E

arco

essa

rappresentazione

una

è deitso un

comuni

un

23.3

in cui

orientato

grafo

di adiacenza.

matrice

una

è mntto

E

libro

Tuttavia

più

come

e spiega Il paragrafo

fnrtemente

di rappresentare

stanctard

o come

di adiacenza liste

di grafi presenta

grafi

di grafi

Rappresentazione

sono

di un

componenti

delle

una

presenta

di

23.5.

paragrafo

Vi

23.4 topologico

23.2

sull ordine

standard

risultati

visita

computazionali

se irch .

per come

di

tecniche

Il paragrafo

in ampiezza,

input

realizzati

sono

su grafi.

algoritmi

di adiacenza. vi ita

le

in

dato

grafo

su grafi

quindi

grafi degli

bread h-first

paragrafo

l ordinamento

profondità. zione.

I

di

campo

rappresentazioni

chiannto

alcuni

nostra

i vertici.

due

inglese

dall

e

profondith

esamina

del

matrici

e come di grafi

B FS

albero

le

discute

di adiacenza

liste

visita

di

algoritmi

la struttura

riguardanti

del

algoritmi

altri

un grafo. da visitarne

in modo

grafo

proprietà visita

una

con

Inoltre.

fondamentale

molte

scoprire

puo

cominciano

strutturali.

di

il nucleo

costituiscono

di grafi

algoritmi

del

gli archi

visitare

e per

rappresentare

per

sistematico

in modo

di visita molti

infatti

metodi

diversi

presentati seguire

significa

algoritmo

grafo

ottenere

23.1

verranno

In questo

liete

di

u in Ci. In oceani lift 1 di La

f- uro

di

aeliaceii a

3.1 ,

i

idi iccnza una

un

grafo

i vertici

r,yprcscntazi ,ne

G

V,

E

in

Ull

olitcriisem irizz ni

vcngon di c ,n

consiste

li.,tc

di,. di,.ice, za

del

2

l

D

4

3

l

0

I

0

0

1

1

0

I

1

1

3

3

0

l

0

1

0

4

4

0

1

1

0

j

5

5

1

1

0

1

0

b

23.

velici

1

arcl i.

e sette di

matrice

di

un

orientato.

liste

cor

di

Un

a

di

adiacen a

G.

G

orientato

grafo

figure

23.1 c

e 23.2 c

23.1 a

e del

cinq re

a

di

di

applicazioni 2

3

1

1

0

1

0

2

2

0

0

0

4

5

á

o

n

1

0

0

0

3

0

0

0

j

I

di adiacenza 4

0

l

l

o

6

23.2

Due

r rtonrclii.

im

liste

con

rappresenta..ione

li

I

ù

I

l

Un

a

crdincen .

li

G.

orientato

grafo Ln

c

G

molti i errii.

se/

con

or

rappresenta iwre

i

m ,.

e

non

del

di adiacenza

Se G è un grafo un arco

della

ir,

delle

lunghezze

orientato,

allora

u appare

Le cioè

non

uno

per

che

pmprietà Viste grafi

v è

i quali

le li te

lista

arco

ha

è 2E

con

necessaria

problemi

rappresentazione

con

può

etticiente

quanto

il grafo

renderla

puo non

adiacenza

riguardante

memoria

ogni

per

se

, perché Sia

di adiacenza

liste

per gode

OV

adattate

per

rappresentare dato

normalmente

i

u, un

è un zrafo

della

arco

di u. La

ch adiacenza che

può

es ere

rappl

udattata

CSC111 17lOllC

u molte

CQll

a tre

della

da una fan

una

Data

23.1-I

orient.ito

desiderahile

semplicemente

pesati. grafi ione p sn

23.1-2

Si

dia

una

liste

varianti

di odi di

cenza

è abbastanza

robusta.

per

vertici.

Si

con

V

in

1noltre.

ragionevolmente

piccoli.

per

la rappresentazione

con

matrice

di

intera

parola

di

una

usare

di

usare

ri può.

un

bit.

singolo

un

di

adia enza

orientato.

grafo

vertice

di ogni

modu

23.1-

grati.

arbitrario.

La

rappri .,ontani ,ne

quwntr ci vuole

tempo

Quanto

di

ligule

i

da

7

he p

imo

in

come

di

matrice

con

con

completo

binario

albero

ùn

equivalente

numerati

siano

di

adiacenza

Si

adiacenza.

binario.

nel

2.3. l-4 l...

matrice

una

siano

crescente

rapprecent ariane

una

di i i vertici

che

3

Il

di

traspusto

grafi,

u

li.

V X

c de

il

li

te,llpn

un

l

di

Ci

orientato

grato i.

l

e

E.

quali, l

per .,I,

C i eiecli7ii ilc,le,.li

Ci

c,lenlare

per che

di l t .Il/ i

è

è

E

l. G

quindi

clficicnti

algoritmi

liite

con

,.111..lli7/i

numerati

tanto

almeno di

la semplicitè

ofilllli

rato

il

d,

G

G li

tLttti

con

G,

sia

matrice

cnn

per eli

.. i,

D..ll,.l dLsc i iv

llIl..l J ul

11

Orill110

liilC

,11

I-,.lppreicllt,.lli ,lie di

tcilipA

É

l

l

per

C lleol tre

Si

invertiti. la

rapprc.,eni

aùi.lCClll l.

propoili.

Cli

ili,l li.tcen/..I

dove

E .

l. trchi

memoria.

si nn

se per

anche

matrice.

entranti

rappresentazione

tazioite

vertici

esiste

non

arco

un

Se

asintoticamente

invece

di

liste

il grado

calcolare

i gradi

calcolare

per

con

rappresentazione

ci vuole

tempo

descrivano

i

pesato

grafo

Esercizi

E

che

matrice

con è un

E

Q O .

sia

adiacenza.

di

matrice

la

della

di adiacenza

infatti.

memorizzazione

la

quindi

non

J. iSUI11J

senso

la elemento

sopra

riducendo

memorizzato

come

adiacenza

i grafi

In alcune

AI.

compaiono

V,

posizione

vantaggio

ulteriore

G

di adiacenza.

valore

matrici

quando

preferibile

che

dove

la matrice

arco. A

di

. .

he

. peri

orientatn.

non

E.

E

unpeso

è E

di adiacenza

7

lista

con

vi è un

è pesato.

un

di

liste

la rappresentazione

se

matrice

us re

a

lo stesso

E i iene

e

corrispondente

nella

conveniente

rnppresentaziane

G è un grafo

è O max V.

facilmente

associ tn

Se

di i e viceversa.

di adiacenza

essere

possono

le liste

i in Adj u .

adiacenza

la rappresentazinne

ogni

di tutte

lunghezze

di

è una

23.2 b

wi

valore

i

n.

v della

in colonna

ti ed

essere

la

del arco

adiacenza

A

23.2 a .

ponendo

di memoria

quantità

di adiacenza per

delle

rappresentato

nella

la hgura

di figura

orient ito

grafn

di tutte

orientato

la

Analogamente,

a.

la somma

orientato,

forma

la somma

che

23.1

di figura

v

un

di adiacenza

orientato

liste

in riga

pesati.

grat

per ahi u,

il peso

di

la rappresentazione

anche esempio.

Ad

matrice

meth.

della

quasi

grafo

grafo.

adiacenza,

di

orientato

di un

la matrice

i dati

solo

di ndiscenza.

1iste

memorizzare

Benché

ed

usata

w.

peso

l elemento

si può

se

grafo

funzione

come

c

r rientato.

grafo

l 0

G.

di

a

di

rappresenta-ioni

Una

b

adiace

0

0

b

a Figura

0

può

o

con

soon 6

n

x

V

non

grafo

trasposta

propria

matrice

il grafo

con

come

rappresentano

alla

della

memorizzare

essere

u

e i.

memorizzare inclusa

diagonale per

v

u,

nel

della

principale è definita

a,

è identica

orientato

la rappresentazione

per

A

conveniente

essere

necessaria

memoria

diagonale

orientato

non non

grafo

principale

Come 3

un

può

diagonale

di una

in un grafo

. Poiché

adiacenza

alla matrice

rispetto

La traspasta

del

di archi

numero

dal

indipendentemente

simmetria

23.1 c .

a

G.

I

dimensione

di adiacenza

matrice

La

23.2 a .

di figura

orientato

rispettivamente

di adiacenza

le matrici

sono grafo

8 V- ,

la

osservi

figura

con

rappresenta-ione

La

c

memoria

richiede

con

di

a,

.

altrimenti

di figura

Le

c

i on

grafo

rappresenta ione

Uria

b

adtacen a

di

ioni

rappreseirra

Due

A

matrice

se i,j CE, Jl 0

Si Figura

in una

G consiste

grafo

che

tale

V

un

di

adiacenza

di

màtrice

5

2

a

con

449

grafi

M

Capito

di

su

elementari

Algorirmi -W8

tltl

111lllti ZI .Ilo

l

r l lpriselil t7ion

Ci

--

l.. con

Fl.,i liite

450

23

CapitoEo

Algoritmi

di adiacenza

del

non

grafo

da E sostituendo

archi

multipli

G

tra

vertici

due

con

un

E ,

V,

unico

dove

arco,

E

ed eliminando

tutti

Per

tenere

grigio

c

di un

E-sec

un

arco

tra

rappresentazione Si analizzino

liste

i tempi

è il grafo

i e

un

algoritmi

che

di esecuzione

per

degli

Eche v,w con

con

quella

algoritmi

che c

matrice

a.

due

G - da

ir

E.Quindi

esattamente

calcolare

per

tale

E-

V,

c

cammino

efficienti

di adiacenza

G-

V,sia u,v

u e w se G contiene degli

con

E

V,

vertice

u e w. Si descrivano

G.

G

soloseperunqualche

G- contiene tra

orientato

grafo

G. sia

e poi

in tale

archi

di adiacenza

Se

si usa

Quando degli

una

algoritmi

mostri

che

entrante

su

AV una

con

richiede

grafi

matrice

tempo

i

a vertici

di

bianchi

ma

se un grafo

orientato

l e con

uscente

è sufficiente

grado

matrice

0

adiacenza, vi

la

sono

maggior

alcune

ha un pozzo un

un

tempo

parte

eccezioni.

vertice

O 1/,

con

Si

visita

tale

b

La

grado

se viene

anche

un

v

matrice

visita

in un

se l arco

0

altrinienti cosa

j esce j

i cammini

di copertura

a

dal

entra

vertice

nel

rappresentano

B

viene

modo

con

minimo

scoperto

al

di

vengono

è il padre

1

i,

elementi

gli

della

matrice

esso

albero

nell

dalla

cammino

BFS radice

u.

molti

sorgente

searcl,

algoritmi singola

24.2 .

paragrafo

s for

ogni

vertice

u c

do

color u

E

B 8.

prodono

dove

8

è uno

importanti

ad esempio,

più

su grati.

25

Capitolo

dei

usano

semplici L algoritmo

e l algoritmo idee

algoritmi

simili

di Dijkstra

di Prim a quelle

per

usate

vincita

nella

z ia rolor s

6

ds

7

s

8

Q

9

whilegc8

11

s

WHITE

e-

vu.

aa. v

5

l0

l albero

per

VG

du -

3 4

brendth-first di

0 m

wc

t

do

u for

head gj ogni

v c

Ailj u

in ampiezza. do

12 Dato esplora s.

un grafo

Essa

radice

calcola

con

la

e che

ur

orientati

gli distanza

e produce

cammino che

tutti

nell albero

per

a distanra

8FS

contenente grafi

I

non

I.

uno

specifico

archi

di G per

il minimo cioè .albero BFS

un

comprende

s, il cammino

vertice

V, E

sistematicamente

raggiungibiIi,

cioè

G

i vertici da

rn

di

.BFS

da

giungibili

da

a v corrisponde

i1 minimo orient iti.

vertice s ch ramato sorgente, scoprire ogni vertice che numero

numero

archi

da

breèvdrlr-jirsr

s. Per oghi cammino ad un

di archi.

s

L zl

la visita

in ampiezza

sia

iun ibile

ad

ra ai

ognuno

scarch vertice

oritmo

già

stati

in ampiezza.

tutti

i vertici

adiacenti

alcuni

vertici

adiacenti

vertici

tra

la visitai

sono

appunto

cioè, avere

e vertici

scoperti

minimo funzion i

b

é

colo i

da

s come ihilc

m

GRAY

dtj

14

cl i

15

itfl j -

Il

Efori i

t Q.

cla

l6

a i in Ci.

17

iun da.c

then

13

l

vertici

dei

che i ra

ivtiltc

if color i

ii tpèr

gr iti

Dcgucuv Q C OIOP H

E

BLACK

contiene

all inizio

non

di v nell

i

ha sono

al

s al vertice

sia

BFS.

che Poiché L

predecessore.

relativamente v. allora

della

il vertice,,

albero un

massimo

definite

ch

la radice.

la scansione

albero

all

aggiunti

solo

durante

scoperto

o predecessore

volta,

una

massimo

se n è su un discendente

che v viene

bianco

scoperto.

che

e di discendente

usuale. i è un

u già

si dice

caso

BFS

albero

vertice

i,

vertice

o nero

divenur

durante neri

quelli

proceda

possono

frontiera

di dimensione

b

di B.

inglese

in

e l archetipo minimi

la

quindi

un un

vertice

di un

di antenato

.

la trasposta

ampie grafo

grigi

incontrato

di

di bianco.

possono

che

grigi

1a visita

v è grigio

i vertici

Invece

costruisce s. Quando

in questo

vertice

in ampiezza

visitare per

è una

che

il vertice

allora

scoperti.

in ampiezza

u,

BFS G. se l arco

1

Si descriva

Visita

E

V,

Quindi

viene

che

i vertici

sia

assicurare

per

vertice

ogni

e successivamente

volta

la prima

bianco.

colora

in ampiezza

bianchi.

che

-1

rappresenta

23.2

G

scoperto

sono

rappresentano

grigi

sorgente

relazioni

a di un grafo

viene

u è nero. stati

già

di adiacenza

lista 1 arco

di adiacenza.

di incide

xE

V

sono

è il vertice

v mentre La matrice

i vertici

li distingue

l algoritmo

E ed il vertice

s

neri

tutti

di essere

cessa

i vertici

s nel 23.1-7

vertice

Un

la i isita

in corso.

lavoro

scoperti.

proposti.

di

O V- ,

determinare

per

utilizzata

rappresentazione

del all inizio

esso

ma

a,

la

La 23.1-6

neri.

istante

scoperti,

per

traccia

o di nero

grigi Il quadrato

451

grafi

è ottenuto

i cappi.

23.1-5

su

elementari

equivalente

orientato

w è un

aIla

radi

antenato

i

452

Capitolo

23 Algoritmi

l

S

l

p

ao

g

à

0

I

g

X

S

l

V

e g

Q

.r

baie

v 1

S

t

X

Q

y

vu

1

di dimostrare

semplice

di

l iniziai

izzazione

che

venga

eliminato

eliminazione

dalla

suIla

una t

g ,

g

I

3.

l

I

N

volta

L

inoltre,

ciclo

rc u in

svhile

w .. du.

effetto

dell

BFS

su

La

sore che

delle

algoritsno

linee

E. della

9-18.

dalla

vertici

di uno

di

Le

inizio

di ogni

i isita

in

distan e

sorgente

usa

anche

grigi.

La

specifico BFS

procedura

ampie ,a

esso

linea

venga

7 pone

contiene

vertice

BFS

su

di

or

n in

grafo

orientato.

are

Gli

dei

r. rtici

svino

mostrate

sotto

i i ei

tici

insella

c oela.

cnùa

g.

s al vertice una

figura

funziona

con

mt.,come

nel

Nlt.. La non

line t

appena

predecessore

vertice

Il ciclo

più

colorato

nella

coda

massimo

una

tempo

un

affrontiamo di

grafo

17- I S u

il problema

input

di bianco.

G

una

il test

volta.

più

E.

V.

e quindi

al massimo

volta.

01,

Le

quindi

operazioni

Dopo

nella

linea

e di conseguenza di

il tempo

totale

la lista

di adiacenza

di ogni

vertice

viene

coda,

la lista

di adiacenza

di ogni

venice

viene

la somma

delle

la scansione

lunghezze

totale

è 0V,

conseguenza

visita

con

di tutte

delle

e quindi

la

rappresentazione

liste

le

liste

totale

ampiezza

solo

scandita

operaquando

al massimo

della tempo

il

è OE.

Infine

di esecuzione un

e di

alle

scandita

è OE.

ricltiede

di adiacenza

inserimento

dedicato

di adiacenza

di adiacenza

i1 tempo in

1iste

u calcolata

coda

FIFO

23.3

illustra

Q

dall algoritmo veda

si

I effetto

viene

il paragrafo

il tempo procedura

lineare

nella

di G.

mndo

se

uente.

Le

di

mostrare

che

della

per

gestire

procedura

l-A

s

da

questo

S color t

il vertice

porte a Veli

sorgente

procedura i ior ente. Lu

mnmento

in poi

la linea linea

colorann

tutti

s di grigin,

poiché

Q conterrh

6 inizializza

S inizializza selllpfc

sl s g

for

nelle

linee

1 l- li

es iinina

oceani i rtice

nella

con

l insieme

liàta

di

vertice

dal

G

atfermato

E

V.

s al vertice

lunghezza

8 s,

la visita una

Lemma

23.

I

Sia

V,

E

G

ogni

linee

grafo

la visita

che

raggiungibile

da

un

in wsspiezza

trova1a

vertice

prefissato

distanza

sorgente

s c

L.

do

in ampiezza

importante

i, oppure

e

s a i è chiamato calcnla

proprietà

no l

un

esiste

nessun

casnwino

effettivamente

le distanze

di queste

distanze.

orientato.

e sia

da

camnlino

tninimo

da sul

s e i. L n

5 B 1 . Prima

di

minimo.

cammino

memorizzata

11.1

dell esecuzioi e

abhiamo

paragrafo

di un

cammino

cammino

i vertici

arco w,

un v

orientato

grafo s

o nnn

s c

V un

vertice

i lo è.

In

arbitrario.

Allora

per

E

di 8 s.

u

1 .

i vssu ne con

0 e la

la coda dei

Diau stra -indie.

idi u nne

Se

u è raggiungibile

da

.,

tllnra

anche

quei1o

caso

il cammino

che

vertici s,

alla

linee

Iri

grafo.

scoperto

il soIo

in ampiezza, per

Poiché

per

di

di questo vertice

8 s, di ogni

nelle

minimi

esaminiamo

La distanza

dei

esaminati.

V

L algoritmo

l insieme

al

l inizializzazione

OV

dimensione

coda

poiché speso

per

è

di un del

stati

II

X

233

mai

inserito

richiedono

dalla

massimo

BFS

All Figura

visita

esecuzione

verrà

venga

dalla coda

è OV.

coda

Cammini

1

di

vertice

vertice

è estratto

necessario

I

h

ll

ogni

W

tempo Q

della

proprietà

il tempo

nessun

che

il vertice S

le varie

analizzarne

12 assicura

zioni

V

I

S

di u sono

di nero.

Ij

5

1

di adiacenza

l

1

3

t

lista colorato

E

a

xv 1

.lt

della

Q e viene

AP

l I

l

da

Analisi S

1p

r 1

11

i vertici

rimosso

Prima g

V

453

gr

I4 I

t

tutti

Q. Quando s

Q S

su

II

viene

1

elementari

u

banchi

quindi

in quc.,to

e,. ,

la disu

.u,

li.,una

valiù.. .

di w. .

jlÈCsc

Ill

L Ipll l

li Ill

i lli

i pcwi /

I

,

.

-,. l,

.,

...,.

ti.

i scui

,,t i

arco

In

454

23

Capitolo

vertice

v c

Lemma

Sia

mostrare V. Prima

che

la procedura

mostriamo

che

BFS

d vJ

calcola

è un

correttamente

limite

superiore

ds

D s, v

5 s,

per

per

.

E

un

orientato

grafo

su G a partire

ogni

vertice

da un

v e

o non

dato

orientato,

vertice

V il valore

dv

e si supponga

sorgente

calcolato

s c da

che

V. Allora,

BFS

la procedura

al termine

soddisfa

di

8 s,

Sia

G

coda

L ipotesi

Q.

La

base

linea

Usiamo induttiva

Per

il

della u,

lista

dall

dv

viene

Per

al

inserito

nella

V.

dopo

in qaesto

che

punto,

s viene ds

poiché

in g.

posto 0

un

8 s.

s

nella

bianco

v che

u. Poiché linea

14

viene

l ipotesi

e dal

scoperto

induttiva

lemma

23.1

durante

implica

di grigio

la

che

dn

ci può

e la

g,

e non

vi sarà

clat sola

di d i

then

J non

sari

inserito

nelle mai

mai

linee

13-16

seguito

vie te

cambiato

più

nel

più

perché

eseguita

e l ipotesi

di

l esecuzione

o con

di BFS.

distinti.valori

nelle

e prima

mostrare

Il prossimo

più

lemma

mostra

che

ad

ogni

23.3

opera

v,

v,, i

...,

v.

durante dove

I. 2...r

Pet dopo

La la coda

il p eso a er

v

è la testa

di g

G

e v

d v/

r

il fondo.

Allora

V, E dv

la coda l

istante

Q contenga l e d

i

J

dimostr,.azione

contiene

induttivo,

estratto

solo dobbiamo

un vertice

dallii

è per,nduzione s e quindi

numero

del

di

lemma

nperazioni

è sicuraimente

Se

che latesta

il lemma v, della

coda

vale viene

baia dopo eliminata.

i

si ha d v

da s, uno

dall arco

seguito

cammini

dei v.

z vJ,

durante

v non

dv

relativa

D altra valore

14.

che

Qùindi è

se v non

e di conseguenza

d finito,

stato

si vede

linea

iI

per

essere

puo

induzione nella

assegnato

un valore

con

facile

una

con

parte,

non

al vertice

d viene

s. Poiché

da

raggiungibile

sia

scoperto. i vertici

riguarda

V,

cioè

s

in cui

14.

vertici

per mai

ipotesi

punto

colorata assegnato

cl i

vi iono

i

enici

r

I

sulla

V

c

i

induttiva,

assumiamo

l esecuzione

di BFS

Sia

dimostrazione

per

ogni

Il C

V

che nel

d s.

raggiungibili I . La

D s.

V, l insieme per

procede i

vertice

V,

c

vi

sia

quale

grigio, a dv, viene

a zi

per

inserito

n per

assegnato

coda

un

qualche

Q. al piit

vi è sicurahlente

sopra,

un punta

dell esecùzione

, poiché

la sorgente

soddisfa

che

condizioni. base

è per

0 da

a distanza viene

nella

osservato

abbiamo

inserito

A 0

quindi

di grigio,

djs

vertice

s è l unico viene

a 0 ed

posto

vale.

induttiva

l ipotesi

s

s è colarato

l.ilsizializzvzinne

s. Durante in Q

V

abbiamo

ovviamente

coda.

soddisfatto. ai er infierito la nunva

di

v 4 s, allora

i viene

he test

crescente

è monotona Ora

essere

si

consideri

scoperto

noli

dell al oritmo

I esecuzione

durante

dirnostrarc co la.

sul

l enunciato

s a

la sua

durante

al termine

s, ed

i ws raggiungibile

al cui

dimostrazione

k da

Come

i viene

I.

Dimostra ione. All inizio

un

sarà

della

k.

il caso

linea

vertice solo

non

k viene

coda.

di B FS su di un grafo

da

V raggiungibile

da

V. Allora

s e

BFS

la pmcedura

che

e si supponga sorgente

vertice

variabile

alla

nella

primo

a distanza su

queste l esecuzione

su

distanze

la

9

che

v e

minimo

prima

eseguita

principale

parte

Il caso

Si supponga

le

correttamente

..ulo

induttiva

come

precisamente

ampiezza

vertice

ogni

per

,

v

finito un

esso

vertici

se

i

valore

essere

esattamente

R

As,

in

orientato,

dato

vertice

ogni

V. Inoltre

5 s.

14 viene

la linea

Come Lemma

dv un

assegnato non

si ottiene

soddisfatt l.

che

due

coda

il valore

Quindi

scopre v c

Consideriamo

induzione nella

BFS

un

da

s a v k il cammino

da

23.2

La

inserito

trova

e lemma

vertice

vertice

o non

orientato

G a partire

ogni

Di rrostrazio te.

di un

ampiezza

nella

fs .

consideri

in

de1la.visita

Corrette- a

grafo

su

v per

D s, minimi

immediatamente

eseguito

colorato

essere

Q durante

massimo

viene

dei

quindi

dimostrare

coda

v c

vertice

l

anche

ad

ogni

per

un

raggiungibile

bianchi.

continua

che

.

v viene

vertici

v

è soddisfatta V-

di adiacenza

8 s,u

per

si

di volte

l

8 s,

esso

v c

assegnamento

du

Il vertice

induttiva

perogni

induttivo,

passo

scansione 5 s,

i

numero 5 s.

è la situazione

L ipotesi

8 s,

dv

eseguita

esecuzione

sul

è che

dell induzione

8 di BFS.

dv

un induzione

un

E

V.

v. venga

Dimostrazione.

23.4

Teorema

procedura,

visita

la

che

minimo.

venga

BFS

della

dimostrare

ora

Possiamo cammino

V,

eseguita

455

gr

ogni

23.2

G

per

ora

su

elementari

Algoritmi

Vogliamo

se

il i

j

cl i,

i

per verti .c.

un

ubitrario

m i

viene

icupenu

I-, vi è un

cammino

i,,

ordine

i

c

iilo

V,.

ùopo

i . allora

i,..... e

l.....,

l

con

chi

lutti

disunze

delle

la sequenz

l. I.

La

proprietà

i vertici

in V,,

. e quintali

deve

di

siano

imonotoisicith

stati

inseriti

nel l i coda. Poi he

cnntitsu

l a v ileie

i uando

i vicine

inserito

nella

ctid t.

á s.

i l

Ji

k archi

da

s

eiiitere

un

vertice

s

elementari

Algoritmi

che

il vertice

in

V per

v non /-

j

grigio,

la linea

v nella

coda.

14 pone Poiché la

appena

Alberi

La

un

d

l

u

segue

che

V,,

vertice

zv

V,,

in

c

V,, da

v

che

si può e poi

rc v

se

linea

13 rende

e la linea

i

16 inserisce

3

V, allora

un

da

cammino

l arco

ciò

BFS

23.3

minimo

s

else

if

NL

i

da

v.

rc v .

6

5

albero

BFS

con

dal

soreente

s,

si

durante

campi

la visita

del

rc di ogni

definisce

il sottografo

come

grafo,

vertice.

Più

dei

illustrato

non

then

stampa

else

PRO-P tv G,

StRIBpB

formalmente,

Si

esiste

-a

s

da

cammino

nessun

v

s, rc v

V

u

figura

Zè.2 a

visita

della

esecuzione il vertice

usando

3 come

ampiezza

in

sul

orientato

grafo

sorgente.

come

G

23.2-2 .fan.

zv

dell

il risultato

mostri

della

un

per di

predecessori

23.2-I

nella

dove

V

c

v

un

è rappresentato

E

V, E, ,

V,,

costruisce

1 albero

G

G, V,,

stampa

Esercizi

procedura

grafo

then

che

BFS

figura

ife s

è dimostrata. v c

ottenere

seguendo

l

gr

l

S.

PR1ST-PATH G.

vertice

l assunzione

per La

induttiva

ossnvi

quindi

s a

ira

l ipotesi

si

ad alcun

e perché,

v è adiacente.

15 assegna

teorema,

minimo

è adiacente

a Y,

al quale

k, la linea

del

non

perché

appartenere

in

arbitrario

cammino

prima

potrebbe

dimostrazione

sisto

s a v prendendo

scoperto

scoperto

dv v è un

concludere

abbiamo

stato i nan

vertice

u è il primo

precedente,

Per

essere

può

1 altrimenti

su

il risultato

Si mostri della

s

figura

23.3

C

dell

esecuzione

usando

i1 vertice

della

in ampiezza

visita

w come

sul

non

grafo

orientato

sorgente.

e 23.2-3 E,

C E

v ,v

l

u e

s

è il tempo

Qual

.

tato

da

una

di esecuzione

rappresentazione Il

sottografo

dei

predecessori

raggiungibili

da se

un

minimo

cammino

connesso

e

da

EJ

vc

ogni

per

G,

è un

albero

BFS

V

vi è un

unico

cammino

G.

albero

s a v in 1 si

fV

Un

veùa

se

BFS

il Teorema

V

contiene

tutti

semplice

Gli

archi

G

un in

E.

albero.

sono

Dopo

chiamati

il fatto

Si discuta

che

la procedura.B seguente

u è indipendente

FS è stata mostra

che

eseguita

a partire

il sotto

rafo

dei

da un

vertice

sorgente

è un

predecessori

s su di un

tale

un

che

il sottografo

La

s. Poiché

G

Applic mdo

orientato

grafo

se i è raggiungibile

o noia dei

linea

l5 di

da s ,

e quindi

forma

un

il Teorenu

CQt11llllllO

BFS.

P

5

G

i segnau V

V,,

a gi

cortisone

caio

V.

G,

predecessori

BFS

albero,

23.4

orientato

tutti

contiene

un

induttivamente.

iolo

E,

la procedura

BFS

E,

iiaun

BFS.

se

.

e soli

i vertici

unico

c m mino

si coiiclude

cllC

albero

i

E e se Bs.

e

in V che da

O

siano

s nd o

z

i cioè ra *giuneibili

ni vertice

di questi

llU110

costruisce

Si dia

un

La

il valnre

in ampiezza. vigono

in cui

ii

canuair i

V

i, t

nd ui

vertice

in

ogni

lista

di

ente.

s c

V ed

un

assegnato

cl u

i vertici

memorizzati

23.2-7

Il

richiede

iran tempo

chi m.ito

ricorsiv t

segue es

per

ineare hi

t. rnpa

uita nel come

i vi rtici

di

c ilccil rrc

numero parametr

dei

I s ertiii un

ui

cainnsinu

albero

dei det

c imn ino

ministra catnmini

c nomino piii

i he c rtii

do.r

a

tninimi.

ali

i iute un

i.

aiiumendo

Qu sta t wt p t .

algoritmo

sono

iran

L

i

J ito

ior i e

cammino

V l unico di archi

l insieme

non

E,

indipendentemente

su G.

può dal

di adiacenz s.

lista

u re

vertice

vertice

BFS

procedura

determi

ll .

un

ogni

per

in ogni

per

T

albero

E,

V.

che

in G. e tuttavia

del1a

ordinati

efficii,.nte

di

diametro

se

un

ibiparlito.

orientato

non

gr fo

da

8 ri,

,Si j di i.,- un telllpo

proLLdui i i

v

E l

u.i

chL

poiché

l un

esecuzione

i vertici

G

E tali

minimo

cammino

dall

c

E

i. utl max

che stata

in cui

orieistuto

grafo

dell albero

s a i è un

da

modo

di

di un

esempio

prodotto

Si

llllllllllO.

procedura iia

visita

in una

dall ordine

di archi

essere

232-6

Il

BFS

questa

rato 73

albero

in E ed

Dimos1razione.

da

gestire

archi

23.5

applicata

in modo

che,

è

insieme

Se

per

adiacenza.

il 1emma

Lemma

modificato

input

dell

è anche poiché

dell albero.

G,

viene

è rappresen-

di input

se il grafo

BFS

procedura e l algoritma

i vertici

che

23.2-4

è effettivamente

5.2 .

e soli

d 1 $ B l in

della

di adiacenza

matrice

al ritn o

-

eft,ciemc

Cli eiecliziolle

ckll

Il

, per orilnl

-,. , c,. lcolare

.. il ùiamctrc

-

.

al l ,ero.

i an

c.ahi

il

analizzi

p1 ipoilu.

ni

vertice.

2.3. 2- Y

Il

. ccalcolarc o ni pr vviiti

lli

..

un

ir

Si

dc, .icriv

cliivzi inc. ili

una

r irtdc

...

i,

l

... caniininu

Ci che

,

c iine qit ini ti

.ii ili

...

o

pui

truvarc

nu nilc.

1.

..

i

tliai rsi

ni

.

ire

,

, in

l uscita

f. f,

.s,. lt,. m ntc c. l d

i un

1

un, I thit intii

Dt.l-

I1

in

volt, .ic

ii

i

Algorilmi

458

Capitolo

23

23.3

Visita

in profondità

strategia

il nome profondità

scoperto

archi

scoperto,

a partire

i vertici

del

Come

lista

dei

ripetuta

da

definito

in un G,

E,

modo

V,

vertice

finché

non

tutti dal

gli

vertice

scoperti

i

viene

scoperti

Il sottografo

la visita

un

di i.

albero,

dei

diversi

rispetto

dei

di

la

visita

di una

for

e

zv

g

zn.

.

search

una

di

predecessori

visita

in profondità

composta

di

diversi

alberi

forma

DFS

una

da

è quin

I

COIOI H

2

du

3

for

archi

gli

in

E

sono

stato.

loro

adi icenzz

finisca

a creare

temporali. reso

per DFS

prOCLdura,

vertice

f

nero .

in profonditè

etichette

la prima

Queste

ragionare

sul

riportata

sotto

elfi

etichette

regie .ra

re istra

usate della

neIla

qumdo

ha

tmito

in nsolti visita

variabile

la sua ani

i è stato

icnpert i

variabile ne i iene f fu finita la visita. quando Queste l e 2j V f, ognuno dei VA vertici pniché scopeno può essere tinire una sola volta. Per ogni vertice u, si ha

sola

i

l effetto

DFS

dell esecuzione

5-7

funziona

i loro

campi

tutti

i vertici

controllano

DFS-Visi . la radice

Ogni

di un

nuovo

un

tempo

assegnato

ogni

chiamata

nel

modo

z a wc

della

sequele.

la linea

ivi

nel Il

se

pLI l

tnurcatu

ertice

w

è

sve1c

del

prima

tempo

cljn .

ca

i Y

tra

il

tempo

il ti

cri

il

volta

che

albero

uente

.i.

è

pseUdi codice l1Clll ltO

O

1011

I algoritmo OriCnt tt ,

di I a

h iute v irivbilc

per

la ti r e

visita i

In

ioi o

n

un

11

x tri thilc

loh ile

tornita.

sul

DFS

mostrato

grafo

ne

la

rl u1

il vertice

Le

linee

3-6

uno

viene

foresta

della

DFS. ed

un

tempo

ogni

del

bianco

invocatz DFS di fine

nella

linea

termina. visita

di bianco

ten po.

visitann

lo

bianco.

vertice

i velici

tutti

globale

Qunndo

u è inizialmente

esaminano

1-3 colorano

il contatore

Le

linee

usando

la

7. il vertice ad ogni

u

vertice

f pr .

La

l colora

linea

i adiacente

u di

u u e visitano

arcn

di

tane

te

nelle

uscente

visita

da

in f

u è stato

esplorato.

le linee

r itu uiil i

7-8

colorano

u di nero

e registrano

il tempo

tr .

interi

i alta

tetnpof

protonciitii.

visita

procedura

trovano

ire

DFS-Visrr w

di scoperta

il valore.

e la

u

i

linee

1-3

e á-7

di

DFS

richiedono

i

e

Hl.

ii

i

lltlCC

3-6

YICtlè

cSCgUlhl

ui ti. .

èiiCIC

la sua

Le linee

4 azzera

V, e quando

di

DFS-Visn u .

e memorizzandone

il

2..l i

Ogni

w nero

l

u.

du

Q

Si rende

w.

u

rilette

mostr

inizializzwno

ogni icopertn

eticliette una

r

Inarco

r watte sono

viene

quundn

Si esplora

Ji

in profe ndith.

ci u

23.4

ir è stato

te

la liita

su

c

u è stato

bianco

23.2.

diventa

vertice

inform azioni

oritnti

zl

tt i

finte

r

procedura

l iit

con

f

figura

In

di esaminare

tra 1lli

il

disgiunti.

vertice

Il vertice

eVHITE

aLwcv,

La procedura

scoperto

quando che

siano

ogni

la visita sono

cioè

garantisce

alberi

marca

quando

con portamento

visita,

tecnica

questi

viene

quando

Adj u

colar vJ

colorj i

figur

archi

indicare

per

i e if

c I

DFS-Visn

7

da

DFS

chiamati

la visita

grigio la

Questa che

la visita

v J registra

reso

ne è fihita

quotando

e ùuindi

durante

n. e nella

compre..i visita

OFS.

ha due

la seconda

colorati viene

esaminata.

DFS,

vertice

enerale,

in

di nero

albero

di i e lo ha reso

adiacenza

La

colorato

un

mentre

vengono bianco,

cormpletamente

la foresta

Ogni io ,

ri

i vertici

è inizialmente

e viene

è stata

in esattamente

Oltre

utili,

vertice

Ogni

la visita,

durante di

in ampiezza,

ri ne

then

ed per

ogni do

GRAY

rime

Ji

dell albero. la visita

-

m

5

si pone

DFS

V GJ WHITE

DFS-Visti- u

6

in ampiezza

foresta

u e

if color uj then

La

depor-jiist

Come

do

esiere

puo

dove

v C V

vertice

ogni

4

prodotto

in profondità

visita

i L

DFS-Vtsn u

questo

visita

-

0

tutti

in ampiezza.

predecessori

perché

una

a quello

visita

5

7

la scansione

memorizza

della

alheri.

predecessori

diverso

in profondità

A differenza

il sottografo

di

durante

tinche e-

iN

dei

scoperto

VG IVHITE

non

e la ricerca

vengono

scoperto

n c E

Z ll

4

6

tutti

vertice

qualche

sorgente

v viene

scoperto,

composto

leggermente

Ep,

j, rafo

Il sotto

dall ultimo

vengono

vertice color n

3

uscenti

rimane

vertice

ripetuto

tc v

forma essere

può

sorgenti.

più

u già

predecessore

predecessori

in profondità

un

quando

di un vertice

ogni

in

possibile

Quando

archi

non Se

nuovo

viene

da esso. gli

finché

originario.

come

processo

in ampiezza,

ir al campo

sottografo

infatti

sorgente

selezionato

l intero

di adiacenza

visita

appena

459

gr

suggerisce

il più a partire

uscenti

esplorare

per

come

istante

esplorati

esplorati

continua

processo

search ,

ogni

vengono

indietro

vertice

viene

esso

ricerca

assegnando

il cui una

da

non

torna

Questo dal

di essi

gli archi

ad

grafo.

nella

di una

la visita

scoperto.

uno

degli

depth-firsr

andando archi

profondità,

esplorati,

inglese

in il grafo

ancora

raggiungibili

allora

ripetuta

in profondità

in

abbia

stato

sono

che

evento

visita

stati

v era

quale

visita

for

do

nell esplorare

v che

di v sono

vertici

dalla

consiste Nella

vertice

dal

seguita stesso,

su

D FS G 1

La

elementari

g in

injiii per

l.i

,wj i j

etF ,

ilclj l l

l illlC.

Pù1CI1i

tdlllpo

O 1/,

escluso

il telllpO

lle.CessaflO

pef

460

Capitolo

23 elementari

Algoritmi

su

461

gr

S

V Ib

al

Q

V

s. 41

31

.r

V c

b

l

2

S

RX

3

4

p

XE

5

6

7

i

8

9

W

N

10

ll

12 13

$

Éf

V

V

14

15 16

Il

Il j

l

ai

DZ

m pi

Figura

2è.4

nnno

che

archi

dell albero a

seconda

che

siairo

tenrpo

il costo

di

totale

Proprietà

della

visita

in

forma

visita

effettivamente

fedeltnente e solo

Un altru

che

mn

su

engonn

sono

dell albero

o

asmnri.

in

di

rw

orieinato.

grafo

tnostrati

o in

etichertnri

sotto 1 vertici

A se

grigio

sosto

menai

sono

cm

B,

eticlrettati

a

ire C

cwr

hi

c

o F rita

visita.

linee

3-6

di

DFS-Vtsiv

è OE.

il tempn

Quindi

di

profondità

inolte

una

Foresta

delle

infonaazioni

visita

della

la 4truttura

se

essi

atrra *ersameitro

delle

tornisce

importante

DFS

prvfonditò

E.

in

profondith

piii

eli

di fine

è 8V

in

j. Archi

altrimenti

I esecuzione

DFS

isitei

clnll algorinno

a/l isrdietro,

per

di

proprieù

di

esplorati

scoperta/rer rpo

esecuzione

a ,.

vengono

o tratteggiati

coppia

La

dell algorirmo

L effetto gli

di

in

alberi,

chiomate

se DFS-Vtsir ,.

è stata

sulla è che

prnfondith

la

poiché

ricorsive chian

struttura il iotto

strutturn

DFS-Vtsn.

al,i

dur,.uste

di iafo

degli Più

la visita

un dei

alberi

i ato.

DFS

listi

G,

DFS.

e trrtti,r,li

che

di adiacenza

dellu

proprietà

visita

i l profonditè

i. cile

i tempi

di

Teoremn

scoperta

e di fii e

ogni

coppi,

la

espressione

sta rin

de

ben

li

eventi

formata.

di nel

scoperta ioni i

e che

ti le

fine parentesi

visita

eli sono

tutti

i vertici

corrctumii te

coititui iCC hil nci ite.

Llll I A

l

111tet intervallo

tiiccndcntc I intelx ,tllc

f l/ill

J

-3.5 l .

Il

tCOéClll,l

lllL.

iC llt

Ll llll I,.l

Ill

lllOCIO

f IlL

lOI.I11.,llC

C LI Il,.l

3ll pI.ICl,.l.

srll inclietra

23 G

viiit.l ùi

/ll

allora

lti

aire

erari

mn

I crlto

cl

mt

ite

dis e tdet

sul

un

iairenalei.

delle

Teorema

parentesi

dl o. In

import tute

are

rispecchia si ha

precisamente. della

la

Forse

predecessori

diiccitilcnl

in

un

protondithdi

vertici

n

x ..llll

e,

una

,/ ir . cl cc . di

f i

cl li

ed

un,,ol,, le e

j e

,I ,. .

è contenuto

ti

DFS.

noli lhcro , f

i

I,

f

j

ncll alhcro

i

Ci

rato

cc nlcnutc IDFS.

V.

E

/

,.j

sc t1u

inter imcnte

O

ClllCIlt l1È

se,,uenti

AOll

orientato . i

condizivni

O

pèl

tll

soddi tatta

dls .illllli.

A illpleÈ.,llllelltc ilcll inh rvallo

cl

. f

i

c n

fiat

c

i ut

pj inc inl n n nlc

noli

inti

rvilllo

l tr

f

i

u1

462

Capitolo

23

Algoritmi

Dimostra ione.

Cominciamo

considerare, allora

v era

stato

di u. Inoltre, vengono

Nell altro

implica

che

Il caso

fu

ancora

di v finisce

prima

d J.

du,

e

tutto

du

no.

Nel

djvJ.

che

dv,

che gli

ritorni

j, abbiamo

sottocasi

da

di

uscenti

Si possono

da

esso

1.

du,

la disuguaglianza

23.

vertice

Un

o non

degli

7 Astnidatnesrto

v è un c iscendente

orientato

intervalli di un vertice

proprio se d a

se e solo

dei

cl i

Gli

di ii e v.

DFS

di un grafo

archi

Immediata

Il prossimo un

teorema

discendente

dal

Teorema

fornisce

di un

un

vertice

altro

archi

Gli

in

G orientato

4.

Gli

urehi

stesso

ln una

23.8

foresta

caratterizzazione

nella

foresta

discendente

di un

vertice

v è raggiungibile

da

Dimostrazione

m

di un cammino abbiamo

che

m

importante

di quando

vertice

un

è

DFS.

al

perdita

di

discendente

di u f

ed

w

n

f

e quindi

u. d

è contenuto un

dw,

discendente

sia

un vertice

che

tempo

da,

generalità,

di u .

Sia

u possono

figure

anche

come

e gli

Che

si

assuma

che

d

essere

w j

empiere f

più

importanti

n J. D il Tei

iena

d ir ,

f

ed u lungo

Per

il corollario

se

il

G

alberi

gli

archi

v

archi

quegli un

che

da

prodotta

visita

una

in

tutti

DFS

come non albero

altri

essi

sia

arco

v

u,

un vertice archi

che

non

un

connettono

v

gli

vertice

G

è un

arco

v.

u,

i in un

u.

discendente

un

DFS

l arco

considerati

sono

in

all

sono

u ad un antenato

indietro. archi

dell albero

e che

DFS. connettere

possono

antenato

vertici

dell altro.

oppure

nello possono

distinti.

ii .

Ac

ogni

i erso grafo

DFS

può

è che

un

etichettati

essere arco

ven zono

in essne

pub

viene

il tipo.

in modo DFS,

ridisegnato

modificato

l arco

23.5 a

in un albero

essere

i

u.

indicarne

per

di trgura

il basso

può

quando non

1

wwlTE

2.

cRv

indica

3.

et.gev,

indica

albero

ue allora per

DFS.

che

non

un

diventi

indica

l

23.7 visita

che

mentre

in questo

n odo

da

gli

mostra

gli

archi

dell albero

tutti

gli

archi

all indietro

modo.

sulla solo

2è.5 e

tutti

classificare

classificato esplorato

La figura

che

base archi

gli

archi

del

colore

in

avanti

che

incontra.

del

vertice

i

e gli

archi

di

distinti

l arco

che

esplorato

è un

che

si

arco

è un

ircu

del albero.

all indietro.

tratta

23.7

che

I

i J f

i deve

eien1pio

nel

prosiiino

p ri

refe

attive DFS

del

vertice

di

dalla sempre

un

arco

in

di

av mti

o

di

un

che

un

ttraversamento

tale

il numero

arco

arco

se d u

un

antenztn.

n.

i

c t

i

grafo

non

i

e i.

u,

sopra. u quello oritmo ii

lI1

lK .ll11l

O

orientato

i i pu6

oitn

u

in ettetti

In modo

del

tra

i

ic,

Veda

lll. I11

ilt

un

arco

ved i

l Eierciziu

es ere

qu iiche

tuno e

.

t 1VI. fs lt11Clllt .

in

rc .

equivalevate, w

vertici

Il terxn

è un

l Eictvizlo

ll

di

lo stecio

che

23.3-5 .

Per

di discendenti

scoperto.

e quindi

profondo.

vjJ In un

lineare

recentemente

pii

più

de1I ilgoritmn.

catena

DFS-Vtsn

vertice

grigio

specifica

una

necessariamente

ministrare

essere

x edivn i

è immediato formano

invocazioni

raggiunge

di ii finisca.

l intervallo

il coroll rio

si ha

caso grigi

foresta dal

ii è un discendente

che che

i vertici

Senza

divenga

il corollario

prima

Il primo vertici

attribuito

.sul

sono il grafo

vadano

raggiuiito

u 23.7

di ioli

cammino

il cammino

j er

di n, ma

e quindi

u nell

ovviamente

e qtiindi

236 nJ

lungo

cammino

dopo

vertice

qualunque

un cammino di

vertice

vertice

w un

archi

ioni

archi

produce

bianchi.

perché

inlurnuz

non

profondità

foresta

foresta

u,

vengono

u ad

ridisegnare

l zlto

attraversatnento

ii, il vertice

ll Ill

e

della

della

archi

quegli

purché

e 23.á

in avanti

chiave

dell ul

P

sono

vertice

vertici

verso

presentatu degli

avanzai

DFS.

si può

viene

che

i è un

di u.

Classificazione

in

di

attraversamento.

du.

discendehte

vicino

di i nel

vertice

vertici

di n .

da u attraverso un

scoperto

nell intervallo

scopre

di u, e sia

al tempo

altro

lo steiso

la visita

iv è un discendente

o ni

il vertice

un

esclusivamente

discendente

divenga

che

orientato .

in cui

du

iuggiungibile

w il pred2Ct .SSOI2

i deve f

interamente

un

quindi

r non

sia

visita

in termini

esplorando

di attraversamento

23.4

archi

L idea o non

contertente

è bianco

i sia

ala

anche

Si noti

i

bianco

se al tempo

DFS

e quindi

I cappi

albero

Nelle

vanno

orientato

calnntino

che

di u altrimenti.

un discendente

un

E

b

u se e solo

u con

Si assuma

du

ca imino

G

tra u e v nell olbero

Si supponga

bianchi

del

di un grato

DFS

una

2è.6.

aitra

Teorema

sono

DFS.

un

L algoritmo Teorema

se

archi

gli

scoperto

all indietro albero

connettere Dimostrazione.

di archi

sono

v è stato

se

connettono

foresta

tipi

quattro

dell albero

v in un

u.

f

archi

Gli

D

discendenti

u nella

v

f

e solo

G.

dell albero

23.1

3. Corollario

se

4é3

gr

la visita.

2.

i ruoli

è aciclico

su

23.10 .

definire su

profondità

disgiunti.

scambiando

orientato lemma

v è un discendente

archi

nelI intervallo

che

che un pafo all indietro

u.

f

ad u e ne finisca

contenuto

sono

i

f

simile,

due poiché

implica

l algoritmo

dv

sono

di n, tutti

è interamente u

Vi

sottocaso,

primo

e questo

grigio,

che f

ti

f

cui

recentemente

v

f

vale

è del

du

in

oppure

più

poiché

intervalli dv

caso

scoperto

l intervallo

sottocaso, gli

il

f

u era

stato

e la visita caso

in cui

con dv

quando

v era

esplorati

u .

f

scoperto

poiché

in questo

Quindi

che

a seconda

elementari

che i uno

arco

che caso

av inti

se

clja

sempre altro

l ultimu il

che delle

pila

nella

protondith

procede u

si osservi alla

della

più

r ingiunge gestisce

caso,

corrisponde

L esplorazione

a partire

Vertice

grigio si

po sibilith mentre

è un

pun

arco

di

3.3-4 . uitè

ainhi Se

l ar o icni

gri i

il second

ilio

nella

classificazione

st iio. reo

puh

iniontrato

empiere per

poiinno

classificato primo

c urante

di.- li essere

iecondo

arcbi.

attribuiti

il tipa

l eiecuzione

464

23

Capitolo

Algoritmi

Teorema

ln

dell albero

in

du

visita

Sia

d vj

direzione

arco

u,

v

v è nella

in cui

Vedremo

un

un

arbitrario essere

lista

arco scoperto

di adiacenza

v

u,

viene

l arco

molte

non

grafo

diventa

orientato

G,

ogni

arco

di

G

applicazioni

senza

perdita

e la sua

finire

prima

arco

v

u,

esplorato

di G. e si supponga visita

di u. Se

un

da i ad u, allora

direzione

momento

è un

arco

per

di questi

deve

l arco

dell albero

se

è un arco

all indietro

la prima

volta.

teoremi

nei

viene

v

ir,

di generalità che

esplorato

invece

v

u,

finisca

viene

esplorato

u è ancora

perché

la nella

prima

Figura

nel

grigio

23.6

11 grafo

seguenti.

paragrafi

233-7

Si modifichi

se

Esercizi

Si costruisca

una

GRAY

C BLACK.

colore

i ad

può

3, avente

i. j

di

colore

di un

rafn

una

non

in

j

etichette

se vi può

ogni

per

seconda

di righe essere

un

momento

qualunque

Inoltre

costruisca

Si

come

si indichi

orientato.

grafo

essere.

profonditè

3 per cella

vertice

un di un

profondità tipi

matrice

In ogni

arco

matrice

durai1te

un

vertice

di

una

visita

in

si indichi

possibile

di

da

tipo

questo

23.3-8

iv vrE.

e di colonne arco

di quali visita

la

per

del

2

Si mostri il

ciclo

l effetto for

linee

5-7

delle

alfabetico, i tempi

visita

e che

ogni

di scoperta

lista

della

sul

DFS

procedura

di adiacenza

e di fine

visitadi

sia

236.

consideri

ordinata

23.3-4

lastruttura

Si mostri

che

a parentesi

l arco

i

u,

della

visita

i vertici

in

una

in

un

arco

dell albero

o un

b.

un

arco

all indietro

se e sok

c.

un

arco

di attraversansento

arco

in profondità

mostrata

di ogni

arco.

tigura

3.4

nella

in avanti

se e solo du

se c inlo

se d v

se

d ti

u

f f

di

f

Un

i

Si

is1ostri

che

del1 alt èlO per

O

ill

un

dei

tipi

non

era o

ùll

CO

durante

primo

priorità

in

orientato,

nclln

vincita

un

ScCOll6 1

61

tr i

CJU lle

are i e

u.

i

n.

come

è

profondith.

equivalente

a

i.

viene

n

di

Si

di un

oriil1t.lf I di

u

nell. t

controesempio Ci.

i. il

loreita

all l tl DFS

J

cl

f1

prodotta

ci n j ill

Ull

che

i Vliilil111 d Ill

se pl

Visit l.

vi

li1ll lll I

i

ein

classificarlo

c mmino Il

Ci,. lll i ,I

se

di G.

che

se

DFS

essere

usata tanti

si n ostri

vertice

sia

come

assegnata

connesse

di componenti

u e v sono

che

contiene

precisamente. ad ogni

DFS

in G.

G può

la foresta

Più

A è il numero

e solo

modifiche

in un albero

uscenti

orientato

e che

in modo

I e I , dove

cc v

non

grafo

connesse

archi

che

di G.

in protonditè tra

cc u

orientato

massimo

G

efficiente no.

E

V.

camntino

un

te oppure

nella

stessa

se u

.

di G.

componente

per

è eonsiesso

semplice

siisgnlannente

da

determinare

n a i per

se un grafo

i vertici

tutti orientato

- i in plica n.

i c

è connesso

che

V. Si dia

vi un

singolarmen-

topologico

rafo

lii

l

n i

i ui

in iliaci

come

si

usare

possa

la

visita

Dt

i suoi

vertici

ordiitaniento t.rie

topvlogico che

se

G

di

un

contiene

un

in

se

vertici

lungo

una

il

noi

grafn

liti

lOflZIOlll

è

aciclico.

un

ll2

i il

un ll li

ali

a l Cllll

JII1Cllti

IlLIClt It l

ll ll I

P lflC

Il.

111

Illudi

d g rc

I

secondo

cle

mostra

graplis.

tutti

lassificazione.

ettura

che

algoritmo

para

incontr ito

suoi

23.3-6

grafo

nell ordinamento schem

tale

cc v

ogni

stampi

profvnditè

effettuare

pei

I ordina-

ariu

di in

la visita

intera

di un

finire

possa

entranti

connesse

le componenti

modificare

Ordinamento

acqua

l

ll1 llt lli

li

classificare

in profondiù

che delle

quali.

orientato

archi

tale fare

f v. Quotato

23.3-

sia

se occorre

f ti .

23.4

al n

v

i

u ha

in modo

Si dica

si mostri

u di un grafo

se

visita

sono

etichetta

è al

e

v,

f

caso

tipn.

connessa.

Si mostrino

e la classit cazione

e

di

e 23.5-2.

in profondità

al suo

le componenti

quante

modo

in ta

vertice

che

una

ordine

un

identit care

per

cile

come

Si mostri

23.3-9

è

a.

23.3-2

la visita

per

ed

u. anche

23.3-10 Si mostri

23.3-3

Eserci i

G insieme

solo

in

Si assuma

ulfabeticamente.

vertice,

ogni

di figura

grafo

orientato

contiene

alberi

in profondità

negli

è orientato,

Si spieghi

orietltzto.

di una

usato

lo pseudocodice

grafo

G non

si deve 23.3

orientaro

D

arco

23.3-1

4á5

gr

all indietro.

v deve

da n a v, allora nella

prima

un

Allora

di u, perché

di

profondità

oppure

Dimostra ione. che

su

23.9

visita

una

elementari

G v.

V, i.

tittli

un

lineare

ordinamento

che

è

E allora

gli

archi

orientati

r

lineare

urdin imento compare di

questo

vr lanoda

di

prima tipo

non

iini u

i è

465

23

Capitolo

Algoritmi

l lliá

l li8

Lemma

Un 1215

13IJ 4

467

gr

IO

orientato

grafo

su

G è aciclico

se e solo

se

visita

una

in profondità

di G non

archi

produce

all indietro.

617

a

23.

elementari

Dimostrazione 215

m

antenato all indietro

3/4

di

un

che

teorema

v

u,

arco

all vi

quindi

indietro

è un

i . Allora

u,

cammino

da

il vertice

v ad

u in

i è un e l arco

G,

il ciclo. un

all indietro. in c. Al

cammini

un

DFS

G contenga

arco

lo precede dei

quindi

che

vi sia

che foresta

completa

supponga

G produce

l arco

u nella

v

u,

Si

Si supponga

vertice

del

ciclo

Sia tempo

bianchi

dv

un

mostriamo

allora

vertice

vi è un

il vertice

è necessariamente

c

v il primo

cammino

u diventerà

un

arco

all indietro.

un

ordinamento

che

di c che

visita

una

viene

di vertici

bianchi

discendente

in profondità

scoperto.

di

da

nella

e sia

u,

ad

per

u

foresta

v il e

DFS, 5

b

Figura

23.7

Og,ti I tempi Lo

di

scoperta

di

oidina

significa

e eli fine

visita

di

tuia

tempo

un

I/R

ropologicamenre

visita

Si noti

rurali

c/re

di

sorto

si

Teorema veste.

aciclico

vertice.

ogni da

da

Dimostra -ione. Ej

V, ogni

orientati

eventi.

aciclici

La figura

al mattino

esempio,

calzini

di

ordinato

deve

essere

che

uente

tutti

gli

archi

ic, v

un

ordine

vestirsi.

per

dag

dei

vadano

da

La

di

figura

v.

Quindi

figura

si veste

ordine

23.7 a un

23.7 b

indica

che

chiama

un

qualunque

può

essere

mente e questo

vertici verso

sinistra

una

lungo

linea

ordina

2

appena

la visita

3

return

la lista

calcolare

per

topologicantente

di un

i tempi

vertice

di fine

è finiu.

concatenata

dei

figur t

23.7 b

mnstra

come

i vertici

un

visita

inseriscilo

loro

ten pi

di

v

ic,

diventerà

dimostra

Di

sia

suoi

DFS G .

da

altrimenti

stata

23.10.

un

di

v

f

w

arco

n,

v

f

arco

questo

antenato

e

v

se v è nero. dag

i

non

arco

al-

se v è bianco,

allora

abbiamo

per

consideri

un

o nero

G

che

esplorato,

sarehbe

o bianco

nel

dag

Si

ti .

viene

u,

dato

mostrare

a v, alloraf vj

es ere

f

ogni

per

su di un

È sufficiente

v deiste

Quindi

di u e quindi

conseguenza

eseguita

vertici.

quandn

i sarebbe

discendente

uj.

f

dei

V. se vi è unarcodau

il lemma

un

f

u, i c

DFS

visita

fine

esplorato

perché

contraddicendo

che

la procedura

di

distinti

arco grigio,

si ha che

ugual-

v

f

n.

f

il teorema.

f i in te ta

Si mostri hgurà

vertice

ogni

per nd

lista

una

v

Vi

sono

app tiuno

in

ordine

inolti

tutti

un

cliversi di

indatto ordinamenti G tale

che

viene

uno

degli

rappresentaziuni

con

di

un

liste

sul

orientato

grafo

dag

visita

della

visita

essere

possonu

di

indipendentemente

dalla

anche

di i diacenza

che

esiste

che

sono che

in profnndità.

di

G non

struttuu un,.rafo lo stesso

producono

modo e.,sere

può

delle per

è

Si mostri

in quesito

prodotti

topologici

G

I ordinamento

produce

ordinamenti

G. Si mostri

per

vertici

di fine

topologici

che

data

dei

se eseguito

produce 23.3-2.

TovocnaicAe-Sozt

tempi

dai

visita.

distinte

G.

Torocor ic c-SnRv.

prodottcrda

inverso

gli

grato

Tovocoaicwc-Sonar

dell Esercizio

ordinamenti

di quello

non

che

le assunzioni

topologici

I inverso

cnncatenzta

vertici

dei

con

ordinamenti

che

topologicamente

l ordine 23.8,

adiacenza ai

che

i tempi

destra. dag.

vertici

ordin ti

supponga

vertici

esiste La

orientato

grafo

in

23.4-2

DFS G

un

il dag,

orizzontale,

2.3.4-I algoritmo

di

ordinamento mostra

ToPOLOGICAL-SORT G 1

coppiadi

allora

ad

Si determinare

per

l indietro,

i calzini

esempio,

ad

in qualunque

topologico

Esercizi

ordinamento

orientati

nel

dell indumento

prima un

indossati

tra

precedenza

Bumstead

di altri

prima

essere

una

il professor

quando

indumet ti

possono

indicare

per

si applica

orientato

indossato

come

semplice

arco

fornisce

applicazioni

alcuni

indumenti Un

dag

questo

che

indossare altri

topologicamente. tale

Il se

mentre e pantaloni .

u

topolo ico

in molte

usati

un esempio

deve

scarpe ,

l indumento

modo

mostra

il professore

delle

prima

23.7

sono

produce

G.

a

sieisrra

destrosi.

I grafi

H

b

sisristra

anno

23.

TovotootcAc-SoRv G

inchvnentn,

posti

i orienrari

arco

gli

dell

a fianco i ertici

1 suoi

3/4

quando

prima

inostra/i

sono

topologico.

ù5

indumenri

indossato

essere

in profondità

decrescente.

617

i propri

u deve

ordiiie nrento

i isira

di fine

9110

l imlunrei,to

che

vecoirdo

mosnato

grafo

13I14

Bun stead t,

u,

iit rdine

verso

Professor

orie tato

sresso

destra

Il

a

arco

l D l5

I l/I 6

17/IS

liste

il quale

di duè

ordinamentn

topolngico. richiede tempo

tempo

8V

E

e

l inicrimcnto

eli

u

nuno

lei

j

V I vertici

in

tcil

i alla

list

t richi ùi

01. 23.4-3

Dll11 1 tl1,ll110 che

carattcrizz i

l, 1 COITCllC//., 1 i grafi

orienuti

dl

C llitl , llgi i 111110 u.iclici.

llSllllClO

LI 1C

LIClllC

ICI11111J

f011CI, ll11i .Ill ll

Si llll

dia

un

algoritmo

C IClO

indipci dcnlcmente

Uf3f U1

che c,

IN , d

determina iL L F

tl

j.

ll Itlll

Llll Cl l O plElp . il l

Il

V.

G lOVI

Itlè

E

ll011

l ichicdcrc

Ol ldlll

ll 1 lei11f 1

COllllc

lli l .

su

elementari

Algoritmi

4á8

469

grafi

23

Capitolo

b

O

a

R

e

d

Un flag per

2è.8

Figura

topologico.

l ordiname tto

b

cicli,

Toro .oatcwt.-So cattivi di archi

allora

il numero

23. 4-5

modo

altro

Un

G

aciclico 0. nel

consente

struttura

questa

verri

che

G in

Il

dove

nuitro

dal

n .. lli, ill

COlllpOIlèllll

di . i.

e,-

à,i,o

G

. L,

fOl.lCllli..Ill .

che

i

in

w

che E

r,ggiu,1 ibili li,,ur,

Cosa

tra

un

uno

essere

i

fortemente

cnmponente Cll VCl tici - u,

r

U

V tale

i vertici

cioè

u

che i

e

di

connessa o ni

per

cono

ra

un

3. h CAlllll . SC

c imponenti

definito

orientato l ertici

C 1

t

1

chiama

DFS G

2

calcola

GA

3

chiama

quindi

E

contieni

l uno

dsll ltro

n ,ilr,

i1,,r

lli,

11,

23.1.3

Esercizio li

in tlit

archi

G

lrlipoito,li

se

ùi

G

con

la

se

sono

e solo quello

un

il

conte

in

G

gtato

grafi

G

E

rnsesci

direzione

rag,.iun,sibili fi Lira

su

la

OV

in tempo

precisione G

orientato

B

calcola

le

visite

in

due

usando

Q

V.

,

G

3. i..i .

componente

ciclo

nel

come

principale nella

calcolati

di ogni

i vertici

di fine

i tempi

calcolare

ma

di f fu

in output

diversa

E

V. V.

dai

per

DFS G .

decrescente

dall altro.

l uno

di

i onnei e

forteinente n ll

una

rafo

STRONGLY-COlùNECTED-COMPONENTS G

4 le

è

vertice.

si,tgr,lo

in,m

G

connesse

di

giungibili

G ed

per

un

eomponeisti .

grafo

coppia

su

una

profondith

di

connesse

fortemente

componenti

fortemente delle

il grafo

di

co,tnessa

fortemente

lineare

in tempo

algoritmo

Il seguente

spaio

possono

le componenti

su

operano

componente

ogni

per

sottoproblemi

chiamato

grafo

che approccio

questo

rompw,e ,re

ogni

collassand,

c,ttenut,

G.

come

mostra

algoritmi

tipo

dei

soluzioni

di

la scomposizione

esempio.

trovare G.

E.

OV

paragrafo

Molti

questo

sottoproblemi,

connessioni con

un.i

i

che un

per

i

ri.

-

.

mostra

traspoctn

E

conne,,e

u

sse

algoritmo

ralo

il

delle

111álSSll11Qlc

insieme sia

23.9

figiira

uia

ut

abbiamo

U

La

è

uscenti.

archi

23.5-4.

5

Capitolo

di

le

rappresentata

nell Eserciiio

dal E

V.

può

delinito

ricordi

Si

la struttura essere

c

entrante

grado

tempo

Questo

in profonditè.

originale

Successivamente,

seguendo

combinate

i suoi

in profondità

connesse.

scomposizione

il,problema

connessa.

fortemente

visite

due

una

visita

della

fortemente

usando

dividere

di

a tutti

richieda

orientato

grafo

con

cicli

applicazione

con

cominciano

orientati

un

di

connesse

componenti

sue

che

prodotto.

vertice

insieme

grafo

in modo

se G ha

algoritmo

classica

nelle

dal idea

questa

su un

ripetutamente

8

f

minimizza

che

l ordinamento

topologico

ordinamento trovare

vertici

dei

con

incompatibili

rimunverlo

e nel

decomposizione

questa

grafi

una

ora

orientato

un nel

fortemente

Considererenso

fare

eseguire consiste

a questo

Componenti

un grafo

di

sono

G contiene

orientato

grafo

un ordinamento

produce

che

realizzare

come

succede

G

E

in output

dario

Si spieghi

23.5

V,

se un

affermazione

la seguente

o confutare

Dimostrare

23.4-4

fortemente

albero

veli

visito

f

di

DFS.

linea

r

u

vertice

ogni

i

cnnsidera

vertici

in

algol-ittiolo

Questo

1pparel1temetite

foresta

DFS

scn1bra

noli

prodotta

dal

passo

seillplii .

.3. l2

E. nona

lO. di

visi

pui

.Ihlxuiùon ire

Ii

conqionciitc

una

3 conte

ci nne i t

I uno l,.

ordine

I

. iu.

ci

per

lurlciu nl

cormi ii l.

lvere

nillla

a

che

f re

con

le

470

Capitolo

23

Dimoshazione.

Siano

definizione

vi sono -

che

u e,,

v quindi

da

nella

u a v e da

iv è raggiungibile

u è raggiungibile

componente

vertici

due

cammini

da

i

fortemente

con

i ad

da

componente

u. Sia

v un

u. Inoltre.

il cammino

connessa

stessa

w i

poiché

era

stato

un

teorema

Il primo

nella

arbitrario,

In

è

un

grafo

visita

In una

visita

qualunque

connessa

sono

in profondità, nello

posti

tutti

stesso

i vertici

albero

della

stessa

componente

vertici

dei

fortemente

al

avo

un

chiamato

disuguaglianza

DFS.

du

se

un

di u.

vero.

allora

nero

è grigio

non

è bianco.

Se

una

la è

il teorema

di ir, ed

antenato

è un

contraddice

che

il

fu,

esso

i colori

w u, si considerino

cr

ff u

allora

u

V in

u e

vertice

qualunque di u.

è ovviamente è

gu

se invece

23.2

di

n

antenato

di G è un

il teorema

,

gu

tempo

l avo

E,

V,

in profondità

Se

Di nostra ione.

13

G

orientato

qualunque

23.

viene

gu

23.14

Teorema

stessa

il lemma

dimostrato.

Teorema

che

il fatto

giustifica

- ir. si ha

v

e is sono

in modo

per

471

gr

cammino

qualche

cammino

u. Quindi

scelto

connessa.

su di un

esiste

poiche v w-

-

fortemente

vertice

su

elemenrari

Algoritmi

dimostrato. Dimostrazione. scoperto

Sia poiché

bianchi

al

dei

r è il primo,

gli

n omento

componente

della

fortemente

fortemente

del

di una

altri

vertici

scoperta.

Vi

bianco,

nella

fortemente

componente

sono

connessa

vertice

da

cammini

tutti

fortemente

cammini

questi

23.12 , ogni

di r nell albero

compunente

non

i vertici

nella

r ad

connessa

ogni

vertici

lasciano

su di essi

componente

mai

sono

fortemente

1.

della

teorema

Quindi,

connessa

Nel

resto

2.

diventa

Se

DFS.

non

dalla

Analogamente.

d uj

visita

prima

ef

fanno

u

riferimento

ai tempi

la notazione

dimostrare

di avo

di un

gu

che

ad

f

gu

diventa

degli

colori

iI

u per

di

discendente

un

la disuguaglianza

contraddicendo

f p.

u

da

t a i u,

e quindi che f

rj

di un

grafo

nrientato

stessa

coinponente

implica da

f

da

vertice

un

vi è un

cammino

di t per

il teorema

del

di 5 u .

la scelta

contraddicendo

u .

sul cam-

bianco arco

allora

Ma

discendente

è un

un

vi è mai

non

di t è bianco.

i

non

vertice

t l ultimo

perché

grigio,

il successore

ed

questo

cammino

sia

è bianco,

essere

t deve

bianco,

vertice

un

bianco

vi è un in G.

allora

non

intermedio Allora

bianchi

mino

STROYGLY-CONNECTED-COMPONE VTS

vertice

visita

se la sua

di cam-

poiché

u a t.

e

n, denotato

è finita

quel

vertice

che

gu

ultima

per

w talq

r.

con

che

vertice

un

durante u

è

la visita

w e f

corretta,

w è l avo

introduciamo

di u se

in profondità

è raggiungibile

della

linea

noti s

f

Si

da

u. e

u e

1. In altre

visita

In ogni

vertici

u. v c

ic

poiché

che

da

se

stesso,

e quindi

è un

iosre.

f

pv

ip zi

con

gu

u

f

il seguente

ragionamento.

Per

coppia

ogni

disugua lianza

f

da

istante

sono

uenza

in realtà

fine

u. Ia formula

segue

23.

e di conse

u ,

stesso

della della

nella

compnnente

proprietà.

o

ni

componente

compnnente

compnnente

nell,.i,.i.,it,

per

u e

vertice

ogni

V i vertici

connessa.

u

si

per

u perché

e gu

di avo,

la definizione

tr

che

f

pii

visitamassimotratutti

u

f

n.

lo stesso

implica

23.3

perché

che

u . due

n

f

un

stessa

fortemente

connessa.

forteniente

in profonditè

cnitncs a di Ci

. ecu

conne a empiere

pun Nella ad

visita

casere

i. l,.i r..t licc

V,

risultato

un

considerato

in profondi scoperto.

ali un

ha

ulhcr ,

vertice come

un

di

profondità

vertici

due

E.

e la sua DFS.

visita

ogni

O

Dimoslrercnu,

che

Si assume da

r iggiungibile tra

le direzioni Si assuma

che

qvi,l

nella

teina

componente

pn

v.

Per

fortemente

nella

u c i riami iun

u è ra

n e v, quindi

vertice a finire

ora

avo

lo stesso

hanno

stessa

alla

V appartengono

v c

u.

in una

visita

in

G.

m

ni vertice

entrambe

è l ultima

e componenti

avi

visita

la cui

è il primo

tra

relazione

sulla

se essi

se e solo

connessa

fortemente

componente

che è avo di rappresentante

th di G, esso

forte

più

vertice.

fon mente questuavo

G

orientato

grafo

abbiamo

Qtiindi vertici

In

un

23.16

Teorema

i vertici

fornisce

connesse.

Dimostra ione vedremo.

vertice

che

Abbiamo

seguente

Il teorema

di

23.3 avohailtempodi

è raggiungibile

u

clelia

J, -ic ,cl

w .u-

c

Poiché

nello

Come

E,

di u.

antenato

fortemente

oj u

f

che

--w

V

J inoltrai

finisce

V,

parole.

V,

raggiungibili. gr

alla

appartengono

rt

G fortemente

23 mostrare

v implica

-

a è raggiungibile

perché

in profondità

è massimo.

iv

gu anche

può

u è possibile

IS

23.

la nozione

Dinrostra Si

f

vertice u a /u.

da

Corollario

u

due

dei

a seconda

casi,

sono

in GA.

Per

f

ma

bianco

di scoperta

in profondità nella linea 1 di RRowat.v-Co Ecteo- i indica u l e istenza di un cammino

allora

è bianco.

intermedio

cammino

qualche

mino

le notazioni

paragrafo

calcolati

CoMPOtE TS.

del

vertici

di questo

visita

Vi

n a pn .

da

cammino

sul

23. - .

per

nero

e di fine

vertice

ogni

Se

la componente

bianchi.

gu

intermedi

sono

vertice

altro

che

dimostrare

viene

che

eventuali

e pniché

il lemma

per

cammino

discendente

sua

da

Rimane

vertici

connessa,

connessa

il teorema un

r il primo

per

ibile

stessa

de

la de fini ione

il corollario

connessa.

23.15

di zvu tr è nella

connessa.

fortemente

componente

e viceversa,

poiché si conclude steisv

vi sono che

comp t1Clltt .

in

cammini /n lOl

i ttlllClltC

.

472

29

Capitolo

Con

il Teorema

Coumie ws

di vertici

Eiws

nella

sua

Per

durante è sia

tempo

quindi

me r

in

Dopo

la visita

i vertici

tutti il suo

che

alto

non

fortemente

3 continua,

connessa

la visita

Quindi alla

volta

Vtsn

con

Vism

colorano

trova

a DFS, il vertice

vertice

a pa ire nella

di un

altra

seguente

foimalizza

questo

un

avo.

m

ha

grafo

Dal

Poiché

tempo

possono

ni

paiio

di

fine

i vertici

r c

nero

i vertici

tutti che

la

r prodotto

radice

r come

u viene

segue

e

la visita

durante

di GA.

in profondith

avo

di

vertice segue

T. ne

se

in T se e solo

posto

ogni

che

r è la radice vertice

ogni i due

r viene

che

casi

in

che

tale

che

ogni

u c

finisce

Cr

iv

f

Cr.

di

o f

r

f

Cr

vj

vertice i

la f

fortemente dei

uguale

chef

- r. quindi

pr

Quindi

vertici

w tale

formula

dalla

T contiene

viene

non

solo

u per

cui

r,

ir

connessa

fortemente

r

che

proprietà

r

istante

D altra

radice.

parte

questo

implicherebbe

seguirebbe

che

in T, perché

posto

nell

T. perché come

trovati.

ir

f

f r.

oiw

vertici

quei

ip iv

avente

posto

alberi

degli

nell albero

posto

svenire

può e dallu

23.3 f

componente

alla

non

r

essere

può

nell albero

posto

f

contraddicendo

r.

f

stato

/w

non

rj

f

w è già

DFS.

in T.

tmisce

f jr

numero

sul

albero

stesso

nello

elemento

induzione

Per

separatamenté.

w

f

scoperto

che

. Quindi

visita

che

ic tale

vertice

composte re

in G

componente

di

il più

identifrcare

Cr.

T è esattamente

e di conseguenza comp eta

Qtiesto

dimostrazione

la

con

fortemente non

è già

a marmi he

r deve di fine

connessa

di r .

nero

deve

Esercizi

visita un

Con

essere

23.5-l

nella

in pmfondità

componente

tra

essere

un tempo

la visita nella

visita

di fine

di r. Il vertice

vertice

i vertici

la componente

tempo

grande

le componenti linea

ricorsi

una

all a giunta

di

un

un

di

connesse

tortemente

di compnnenti

in

grafo

arco.

nuovo

della

connesse

Si

ntostri

come

della

tigur

linea

I e la foresta

opera

23.6.

di G

chi. mata

a DFS-

interno

di DFS-

ve all

il numero

cambiare

può

se uito

i vertici

consideri

Più

la

i mostrino

precisamente. imita

prodotta in ordine

sul

STRO ùGLY-CONSECTED-Cowvo ei s

prOCCCtLllJ

linea

3. Si aisum e che

alfabetico.

le

visita

di fine

i ten pi oche

il ciclo

liste

di

nelle

linee

di DFS

5-7

nrdinate

siano

adiacenza

grafo nella

calcai iti

alfabeticamente.

i vertici

i isita

da

Come

fortemente

fortemente

7 di DFS

Le chiamate della

colorata

ed

ed

Mostriamo

in cui

qualunque

connessa

tutti

nella

tutti

Cr

in G

facilmente .

i- e che

componente,

di nero tra quelli

il processn

ed che

e quando

estratta. non

sano

A questo stati

DFS-Visrr DFS

punto

reii

neri

23.5-3

questo

Il professor

Denver

so tiene

che

I il

ori mo

fnrteiiiente

le componenti

trovare

per

contimia. ito

punto.

calcola di

un

0111Clltù

de1l r G

è

l induzione

per

precedentemente.

seconda

nell

.rescente.

visitai

ha

i vertici

e scandendo

in prof n diti

ll professore

in ordine

di tempo

di tn e

i inc

ra

23.17

connesse

di

base

prodoni

visita

rato

orient ite

correttamente

le

componenti

23.5-4

forte-

Si

T

i

una

Jetmisc,

e

llLIllC

lll lunivc

del .

ali

cr,nipotresrti

G

E

V.

con i

dim istra Forteincnlc

che

un

cnnt essa.

albero

lorinato aisumeiido

diinnte che

i lutti

viiit i li

alh l

ii

l-

contiene

lOI 3CI11Cllt

i,,

I arco

.,e

COI l lsp ll 3c11lC

C llllCli l

vi

i

uiq,rco

il

G

grafo

i

l.

Li

orientato

da

flgllt .l

3. C

.,ICICllCL . t,lt .lll 1lO.

compoyenle

il grafe

V

6.

l proicinditè

alberi

. vertice

2è.13

in T, considerando

che

nella

un

che

Teorema

G.

O

La

connesse.

vi sono

fortemente che

di tutti

quelli

dire

o una

altro

argomento.

di fine

compnnente,

nel

quelli

raggiungere

terminato

3 estrae

è stata

tempo

un

23.5-2

STRO4 èLY-CONNECTED-Coiitvowrst s G

mente

T con

aventi

r

/v

ora

visita Teorema

DFS

vertici

dei

V

c

u

Dimostriamo

r.

come

no

abbia

r può

r con

a mano

di

linea

l altro

dallas

essere

componente cioè

tra

componente

quindi,

è identificata

massi

3 ha

raggiungere

componente dopo

che

aitrettanto

nessun

della

componente

un albero

ora

fortemente non

prodotto

vera.

è ovviamente

l insieme

Cr

calcolato

vertice

altro

nelIa

i vertici

vertice

nella

da

visita r deve

possiamo

fortemente

e colora

uno

Cr

albero

473

gr

induttiva.

linea

può

di r

identifica

l intera

Sia

il primo

per

Si consideri ultimu

per

Smoxct.Y-Cot sEcrEo-

di fine

semplicemente

che

insieme

componente

è l avo

Il teorema

che

nodo

ertici

raggiungere incluso

di nero

finisce

m

tutti

col

stato

3 di

avo,

in ampiezza

componente

in profondità

con

i,

visita

vertice

vertici re ome

equivalente,

ogni

l avo

visita

e nessun

r contiene

identifica

della

può

visitando G

quindi

l ipotesi

ogni

e soli

una

connessa

essa

di r ,

ritorna

ogni

di

tutto

continua

non

parentesi

poiché

componenti

siano

prodotti

banale,

STRosou -CosvEcrEo-

il vertice

di r è il massimo

questo

nella

sarebbe simile,

componente

una

sono

poiché

altrimenti

ragionamento

linea

di e. essa

avo

proprio

3

nero

in profondità

connessa

delle

sono

ogni

visita

n,rri

aItri

nessun

connessa

identificare

potrebbe che

gli hanno

del

1inea tempo

se stesso

che

di fme

linea di

1 di

precedentemente

connesse

il teorema

la cui

di avo,

sono

modo

nella

nella

Quali

di r contiene

r e li colora

raggiungibili

fortemente

In

linea

il massimo

vertici

fortemente r.

ed

il vertice

la dehnizione

raggiungere

il tempo

profondità di

quei

r con

raggiungere

può

possono

ala

che

fortemente

23.14

nella

in profondi

Per

alto.

più

non

comressa

connessa

esso

sono

raggiungere

visita

linea

visita Essi

r.

1a visita

avo

il Teorema

per

Smovete-Cow EcrEo-

componenti

su

connessa.

I.

componente

possono

scoperto

nella

di

forre nente

vertice

il vertice

di f la

profondità

si consideri

r ma

maggiore

in

su G ,

di

raggiungere

visita

il primo

dell algoritmo Le

inoltre,

fortemente

proprio

struttura

avo

perché

è il suo

connessa

la

facilmente.

più

si esegue

in profonditè

perché

la

componente

capire

visita

a disposizione, compresa

Io stesso

un avo

Coiieo Ems

più

con

23.6 .

Teorema Cowvoi

un

23.16 essere

puo

insiemi

elementari

Algoritmi

St

illllll 111-1

CllL.

Li

t

illl,,l,ll l

L l.lillt,llO

vertice

un

lli

I110lll ,l

nell,

Ull

elementari

Algoritmi

474

23.5-5

Si dia

un algoritmo

grafo

orientato

23.5-6

stesso un

ha

G

a

delle

grafo

G

E,

un

come

un

altro

G

grafo

di G,

connesse piccolo

prodotto

di vertici.

coppia

creare

è il più

E

c

calcolare

ogni

fortemente

e

di G,

tra

componenti

l. ha

G

b

In

Si descriva

possibile.

G.

23.10

Figura

in

archi

23.5

7

Un

grafo

orientato

G

u m-

v oppure

V, si ha che se

G è semiconnesso

se

ne

v

che

oppure

il tempo

analizzi

è semicorrftesso

E

V,

u. Si dia

che

l algoritmo

u. v c

di vertici

coppia

efficiente

un algoritmo

Si dimostri

no.

ogni

se per

ne/

CO11 una

è corretto

b.

vertice

v un

Sia

c.

foresta

in avanti

ed

gli

archi

a.

Si dimostri

degli

visita

con

archi archi

di un

DFS

classifica

archi

di attraversamento.

Anche

dalla

della

raggiungibili

gli

sorgente visita

in una

che

in archi albero

un visita

in ampiezza

di un

BFS

essere

usato



archi

all indietro

2.

Per

o ni

arco

dell albero

3.

Per

ogni

arco

di attraversamento

ci,



non

le seguenti

valgono

orientato

d.

v,

in avanti.

archi

si ha

che

dv

dn

l. f.

i,

u,

si ha

che

dv

du

Si

l.

dimostri

in

che

una

visita

in

ampiezza

di

un

le

valgono

orientato

grafo

Sia I

j

la

vi sono

h.

in avanti.

Per

ogni

arco

3.

Per

ogni

arco

di attraversamento

4.

Per

ogni

arco

all indietro

Punti G cui

V,

E

eli un

rimozione

biconnessn gi,cciono

uianùu

Si

dimoitti

ti

li

in

che G

w.

noti

Ci.

si ha

un uno

G t.

che

v è un

all

indietro

di

di articolazione

punto

da s o da un qualunque

di v.

proprio

min

Si

mostri

come

calcolare

Si mnstri

conce

calcolare

cal

è un

arco

lr ir i

J per

tutti

tutti

i punti

u,w

dw.

indietro

un

per

w di i .

discendente

qualche

Si diinostri di

G.

Si

mostri

un

che

come

di G è un ponte

arco

Si dimostri

che

contenente

gli

di G che

di G in tempo non

se esso

Si dia

di tempo

itn algoritmo che

tale

OE

per se

bcc e

l ce e

OE. ciclo

su nessun

giace

semplice

OE.

G in tempn

una

di G costituiscono

bonn

non

OE.

se e solo

biconnes e

le componenti archi

V in tempo

i s

di articolazione

di

i ponti

tutti

calcolare

i vertici

dell insieme

partizione

ponti. etichetti re e

nlo

se

ogni

arco

e ed

e

e di G con sono

numero

un

stessa

nella

positivo

componente

di

stesso

è un

puntn

di

du

I.

23-3

du.

di

C

n

arlicolazian

rimozione

archi

semplice.

ta c

La

l

l

r

di

articola ,ioire

I i cui

che

figura

un eli

albero G

ic

G

è un

due

archi

ciclo

rio

di

di

DFS e so1o

ic

hl

Si

di Enlerr

di un

mostri

che.Cr

in-degne i

grafo

h.i

uneiclo

out-cle

nrientato

vnlta,

una

G esattamente

anche di

Fulcro

G

e connesse se

può ia

e

visitare solo

V,

se

per

E

è Ltn ciclo

vertice

un

ogni

più vertice

Ci. lll11CIl

,.rimeno qu

di i

che

attraversa

una

volta.

c

V vale

ree v .

Li

qu ilunc ue

illu.,tr.,

23.10

vitti . G.

disconnette

di Eulero

Cieli

Un

a.

di

paletto arco

mv imale ciclo

Si i

profundis.

dv

bironnesse Un

G

l.

di

0

e coi potrentE

itiiieme

un

du

si ha

che

e connesso.

in di

dv

v,

ir,

U n ponte

G di

i i ita radice

i,

orientato te ci

una

si ha che

ponti

su

lt

i,

ii,

articr la inne,

grafo

nell insien,c

biconnes c

albero

diicoisnet

che arco

vi è alcun

non

biconnessa.

2.

componente

a.

j

archi dell

23-2

low vJ

bcc e

Non

antenato

di s a un

Si dimostri

radice.

che

s tale

seguenti

proprietà. 1.

dalla

figlio

che

oppure

g. da

dv

sono

classificare

per

e. vi sono

Non

che

gsigie.

Si definisca

categorie.

quattro

proprietà I.

sono

archi

all indietro.

archi

può

stesse

grafo

i po rti

.

dell albero,

nelle

regi mi

e

orienfatcr

scuro,

bcc.

diverso

in G

se v ha un

in ampiezza

grafo

noia

grafo

grigio

nelle

archi

gli

un

in

e

di esecuzione.

Problemi

ione

ione

i vertici

sosto

se no

b/connesse

compoirerrri

di

biconnesse

compone vi ione

articvla

di

determinare

per

proposto

discendente

Classifica

le

e

I p mri

23-2.

nulrlerO

e le

i ponti

articola ione,

Problema

scorro

grigio

esicherrare

G se e solo

23-1

di

1 pu ti usaro

connesso.

b.

475

grafi

di un

componenti

delle

delle

grafo

arco

si spieghi

componenti

componenti per

nel

che

al massimo

V,

il grafo

calcolare

per

assicuri

le stesse

efficiente

algoritmo

Si

vi sia

orientato

grafo che

tale

E

OV

E.

V

proposto

un

Dato E

di tempo G

dall algoritmo

Una

su

23

Capitolo

uno.

Sn...,c,,erie, ,,sto

i

f ,dine,

in,,i me

dei

cicli

tatti

di

.,irchi

die.

iunti .

ogni

47á

Note

Capitolo

23

Due

eccellenti

riferimenti

La visita in

labirinti.

algoritmi

per

in ampiezza

è stata

Indipendentemente di

problemi Hopcroft

rispetto

riconoscere

di fili 102

hanno

a quella

con

l importanza

ampiamente

usata

sin

ha

134

elettrici sostenuto

tardi

anni

sono

Even

150 ,

nel

scoperto

lo

schede

su

di

adiacenza visita

della

cinquanta,

e Tarjan

65 contesto

188 .

della

stesso

ricerca

algoritmo

di cammini

nel

contesto

di

con

liste

di

i primi

a

di circuiti.

la superiorità

matrice

algoritmica dai

grafi

da Moore

Lee

instradamento e Tarjan

adiacenza

su

scope a

per

della

rappresentazione

grafi

sparsi,

in profondità. speciaImente

La

e sono

visita

stati

in profondità

in programmi

di

è stata

intelligenza

Nella

L algoritmo stato Knuth

ha dato

1SS per

adattato 121

trovare

da Aho. è stato

un

algoritmo

lineare

le componenti Hopcroft

il primo

fortemente

e Ullman a dare

per

un

5

che

algoritmo

trovare

le componenti

connesse lo attribuiscono lineare

per

proposto a S.R. l ordinamento

fortemente nel

connesse. 23.5

paragrafo

Kosaraju

e M. topologico.

è

tutti

Sharir.

questi

sistemi,

può

modellare

Si

connesso tra

usare

si può

n morsetti

quello

E.

di morsetti

coppie

quantità

di tilo

aciclico

T c. E che

wT

ognuno

arcn

ogni

i

u.

i vertici

interconnettere

dei

quali

un

l insieme

delle

possibili

peso

venga

che

e tale

v

w ti,

di filo

che

si vuole

elettrico. e

interconnessioni il costo

specifica

la

un sottoinsieme

trovare

minimizzato

di tra

orientato

non

grafo

diverse

insieme

morsetti

due

minima

con

u e v. Allora

di un

collega

elettrici

un

E si ha

e

connettere

per

tutti



Per

a quantità

usa

che

collegamenti

dei morsetti.

necessaria

connetta

usi u.

g

problema

e per

elettrico

1 fili elettrici.

di

V è l insieme

dove

tra

è di sol ito quello

preferibile

questo

V.

G

di n

un sistema

loro.

collegandoli

i morsetti

rendere

necessario

è spesso

equivalenti,

elettricamente

componenti

elettronici

circuiti

di

progettazione

artificiale. Tarjan

minimi

di copertura

Alberi

al capitolo

i peso

totale

che

viene

v

u.r ET

Poiché

T è aciclico

albero

di coperhera,

viene esempio In

di

un

tacilmente

binari

ungendo

in modo

art

da

con

connesso

uno

in

tempo

richiedere

li

crll er

copertwrù

c rm

3

pi sr

I

Il pel.

TlE ILlll I

3.

/.

per

e quello

tempo

richiedere

Vlg V ,il

OE

E.

.ll Ill. ,lll,ll11Cllll,l

da

modo

di Fibonacci.

heap

minimo.

risolvere

di Kruskal

l algoritmo che

costituisce

T un

mostra

24.1

figura

chiamato l albero

di determimsre La

ntiitimo.

di copertura

albern algoritmi

albero

Il problema

copertura

due

algoritmo

un

tormare G.

il grafo

il suo

esamineremo

realizzati

deve

esso

di

dell albero

e precisamente1

invece

di

piccolo

n rrn ri

grafo

minimo.

essere

più

poiché

capitolo

questo

copertura

esso

il problema

chiamato

i vertici, ricopre

tutti

e collega

OE

di Prim un

di Prim. lgV può

Entrambi

usando essere

miglioramento

di

dell albero

il problema

reso

possono

ordinari

heap

più

efficiente

se

VA è molto

Iw

478

24

Capiralo

algoritmi

I due

vaiie

illustrano

in italiano .

golosa

possibilith,

problema,

che

alcune

strategie

Le strategie

greedy

fa

crescere

24.2

Kruskal,

è simile

due

a Prim,

è simile

una

di

per

all algoritmo

di peso

minimo. essere

puo

sono

qui

per

dimostrare

capitolo

presentati

l albero

una

di copertura

aggiungendo

un

classica

del

minimo

minimo

arco

alla

il prino,

generico

connesse

il cammino

per

si può

se questo

l algoritmo

le componeisti

ottima

globale

di copertura

tra

capitolo.

copertura

realizzare

una

al momento.

minimo

anche

per di

soluzione

22.1

paragrafo di Dijkstra

che

volta.

Il

dovuto

a

ts

51

l

V-S

S

y

8

il secondo.

10

25.2 .

paragrafo

S

24.1

Costruzione

albero

di copertura

assuma

w

E

di R.

avere e di

consideriamo modo

un

trovare

in questo

in cui

strategia

Questa

sempre

un

un

invariante.

nel

arco senso

tale

Un

distruggere

arco

l invari

v

che

che

A u

V,

minimo

approccio

arco

alla

E

can

una

per

G.

I due

al problema,

greedy

generico

v

ma

funzinne

24.

che

ditferiscono

nel

un arco

sicuro

ad

un per

un

minimo. A

Ad

senza

sottoinsieme A, perché

puo

ui

essere

A che

vertice

questa albero

di

while

G

orientato arco

V,

V-5

i

u,

ad A senza

5

forma

do

trova

un

A e-

A u

return

un

albero arco

di

copertura

v

u,

che

sia

noti

A

per

La

re

sottoinsieme

m i ni mn.

archi

coh

certa

proprieù

albero

u.

i

è

di

la

un

albero

copertura per

empiere

se il suo

24.

l di

l ii sien e aperti ra

che

snddisfu

minimo.

natura

Ttale

A

Imenei

A

g

T,

Il

it

e

e

banalmente

i e

vi

ciclo

l trovare

maun

arco

l iisvariante.

nelle

linee

un

urcr

ii,

i

2-4

sicurn

c

Tt ile

cioè

mantiene

nella

che

i

ellO

detrnita

Ull

l invari tnt .

linea

n.

3.

e

AlnlC

A.

V. 9

G

arclli

gli

archi

arco

un

che

archi

degli

i pesi

tra

sicuri

in

che

un

è un arco che

taglio, leggero

soddistano

teorenlz.

segllente

dal

è sta

iu

E. Sia

A un

ite S.

per

G.

legassero

che

attraversa

non

V S.

S V

un S.

in un

di E contenuto

laureo

Allor

che

t elio

qualunque

funzione

una

con

e connesso

orientato

sottoinsieme

i

u.

peso albero

qualche

A. e sia

rispetta è sicuro

il.

per

11 A

a1lor i

A.

sicuri

arco

I

un grafn

minimn

.,ll-CE I.l

gli

si dice

è minimo

peso

t.,l, l

trovare

più

degli

at traversa

che

leggero

di arco

Un archi

il taglio. i pesi

tn

i. minimo

peso

in generale.

Più

uguale.

il suo

miido

clti ienti .

C

111COII

J

.

I11E15ll,ll1ClO

j1ltl1Cll

C lC

il.

l.



Ull

i1CUl-O

A. p I.

che è in

è in S e l altro

estremi

di A attraversa

arco

se nessun

non

grafo Si dice

nozione.

questa

suoi

dei

di un

S

V

5.

u,

complicata

parte

sicuro

lineu

vi puo

che

peso

riconoscere

per

Teorema

dopb di

La

ola

A

che

1,.ertiei

a

proprietà.

quella sicuro

una

snddisfa

Sia Si

24.1.

figura

taglio

illustra

se uno

5

se

taglio

un

Un 24.2

figura

V

S.

A di archi

insieme

si noti

taglio

quel vi siano

caso

il taglio

attraversa

che

leggero

di V. La

partizione

un

rispetta

un taglio arco

è una

Q

E attraversa

c

attraversano

tV

A non

detla

grafi,

definizioni.

di alcune

bisogno

abbiamo

copertura un

aggiunto

di tutto

Prima

proprietà

che

3

lei

a clestra.

Am8

2

5

è

nel

un

m

di,.edere

viene

passo

è un

I

ino,li

c n

a sinistra

fa crescere

insieme ogni

violare di

che

ante.

GENERIC-klST G,

Due

V

S.

taglio

peso

algoritmi

segue,

gestisce

copertura

aggiunto

è ancora

che

L algoritmo

di

essere

può ic,

volta.

albero

qualche

è chiamatn

cnpertura

dall algoritmo

di un

u,

G

un

applicato.

è catturata

un

di

un

viene

di

e connesso

albero

usano

minimo

sottoinsieme

determinato

minino.

capitolo

golosa

di copertura

orièntato

un

approccio

questo

l albero

non

grafo

voler

h

minimo Fioura C

Si

1 -5

a

di un

479

minimi

copertura

greedy

scegliere

conveniente

17

generico

albern

è più

un albero

greedy

in quel

strategia

occorre

di copertura

Capitolo

introdotte

modi

all algoritmo

trovare

i metodi

algoritmo un

fornisce

nel 17,

teoriche un

che

effettivamente

Capitolo

introduce

la scelta

dell albero

a lungo

progressivamente

paragrafo

dovuto

nozioni

24.1

di

generale

producono discusse dal

delle

Il paragrafo

in

chiamata

di un algoritmo

di fare

il problema

per

greedy sono

di ottimizzazione

l esecuzione

prescrive

garantisce ma

indipendentemente

applicazione

un euristica

durante

strategia

non

qualunque

letto

anche

Quando

questa

strategia

Questa

di

Alberi

ii a valori

reali

di copertura ti.

i

u

ario

480

Capitolo

24

di

Alberi

1 due

P

su

V, E

G E.

una

il seguente

usano

24.2

paragrafo

corollario

del

funzione

peso

24.1.

Teorema

24.2

Corollario Sia

nel

algoritmi

481

minimi

copertura

Sia

Dimostrazione.

in un

di E contenuto

connessa

Il

taglio

v

un

V-

C,

C

V, A .

A

rispetta

v

n,

minimo

Se

e sia

C

che

leggero

A.

per

sicuro

arco

è un

v

definita G.

per

è un arco

v

u,

è sicuro

u,

quindi

reali

ir a valori

di copertura

G

alIora

in G ,

componente

una albero

foresta

nella

albero

un

altra

C a qualche

con

e connesso

orientato

sottoinsieme

componente

connette

non

un grafo

A un

questo

per

taglio.

Figura

24.3

copertura

La

dimostra ione

minimo

T.

del

Gli

archi

in

Teorema

A

Esercizi

24.1.

sono

f

e

grigi,

ertici

v

u,

in

è un

S sono

aico

neri,

ed

leggero

i vertici

clte

in

V

attraversa

il

S swur

taglir

5.

24. I-l

Sia ad

che

conter ga

v

u,

essere

puo

rimuovendo

foi naro

l arco

.r,

ed

y

ag glror

u,

gendo

i

u.

figura

24 .

p che

ad A, perché y

u e

il taglio

un

Mostriamo

ora

che S



poiché

albero

A c

w x,

poiché

un

x,

di questi

T di coperura

w tc,

v

Poiché

taglio,

questo

da

cr,

di copertura

non

w T ,

vamente

un arco

G, sia

per

appartiene

di G.

A c

cmhe Te

v,

e

minimo,

su di un

i

u.

y

tr,

fornisce

i

le componenti

1

che

è un inverso

con

una

A un

V

5,

una

grafo

il che

A

è effetti

A u

quindi

v

è sicuro

G

t.

per

A.

V.

E.

comprensione

connesso

è un a con

e Ia foresta

per A coatte

brolo

appartiene

u,

del

t.

v

leggero

arco

un

fornendo

è sbagliata

professore

ii a valori

un

v

i

è un w x,

arco

Si mnstri

24.1-3

leggero

allora

v.

se un arco

che

è un

esso

arco

un

attraversa

che

leggero

del

taglio

sicuro

arco

Si

il taglio.

per

controesempio.

minimo,

di copertura

albero

in un qualche

v è contenuto

u,

che

Sia reali

minimo

di copertura

albero

è un

24.1.

Teorema

peso

A, e sia

rispetti

w. v

l arco

Allora

S.

nel

grafo.

Quindi Si dia

un

di un

esempio

semplice

un

attraversano

qualche

che

tale

grafo del

taglio

di tutti

l insieme

grafo

un

formi

non

leggeri

archi

gli

di

albero

copertura

minimo. e quindi

anche

T deve

essere

un

v

c

sicuro

T . Di

24. per

A. Infatti

abbiamo

l-5

traddi

coisseguenzz.

di G

V,

E-

del

A mano

In ogni

contictle

f V j t L eri,

cot1lponentidistinte

di G,,

albero

l al oritmo

di G

V,

che

Si dimostri

g.

vi è un albero minimo

di copertura

un albero

è anche

che

e

T è un

poiché

di

G.

5

migliore

zio se.

minimo

di ropertura

in un ci lo

massimo

di peso

e un arco

Sia

che

funzionamento a magno

dell algnritmo 24.1-6

che

l algoritmo

Si mostri

procede.

istante

de l l al

rufo

un

che

vi è un è vero

non del l esecuzione

ha un

albero

unico

che

leggero

unico

arco

tornendo

un

uno poiché

per

o ni A u

vertice . w. i

Inoltre deve

minimo.ie

di copertura

lio.

il ta

attr iversu

per mostri

Si

ogni che

del

taglio il contrario

conlroeiempio.

oritmo

ogni

Si

arco

liberi. Cli. I

tutti

archi

di un

C LfC

essereacicliio.

se

che

mostri

sottoinsieme

24. ut

di G che

taglio

funzione

in un

di E contenuto

sottoinsieme

un qualunque

S

la congettura

che

, lllllllèl10llO

contiene

del

con ettura, e connesso

attraversi

dimostri

24.1-7 3 è i uoto u,

che

orientato

I

sicuro

Si dimostri

minimo.

un ciclo,

comincia

G.

grafo

fa la seguente non

grafo

S,

A che

per

u a i in T, eliminando

grafo conterrebbe

un

su E. Si

definita

24. l-4

vT

in un

minimo

in T nel

v

minimo,

minimo

.

u,

w u,

s

Sabztier E

K

nella

un arco

v,

si ricollegano u

minimo.

attraversa

y

v

v

x,

L arco

cammino u,

T

mostrato

vi è almeno

archi.

è sull unico

y

u a i in T. come

V-5 ,

5,

G

che

albero

24.1

GENERIC-LXIST

uno

x, y

p da

taglio

Aggiungendo

albero x,

cammino

del

di peso

di copertura

Il professor

.

di copertura

Il Teorema

sia Poiché

y

da dimostrare

T,

albero

un

sul

opposti

di copertura

e anche

di copertura

Rimane

A.

archi

gli

componenti.



vs T wT

Ma

su lati

rispetta

albero

V

5.

wT

con

sono

il taglio

T in due

nuovo

attraversa

ciclo

attraversa

si spezza

formare

un

Poiché

cammino

v,

forma

arco

albero

i .

24.1-2 L arco

u, un

i pesi che

11011 pChl

un

dia

Si

degli

di

archi tutti

connette esempio

per

ronfo

un i ed

i vertii

ha

bonn un che

mostrare

quesito

ogni

allora

positivi.

peso

deve

mininso

totale non

se

vale

i

pCl ltlVl.

1-8 T

tqrminii. liit

L

i

itcltc

I

lift i

or in t

alci

peci

d

li

tr hi

eli

7.

J

G

1

di

Alberi 482

Capitolo

24.1-9

Tun

Sia di

albero

V. Sia

T

Si mostri

di copertura

minimo

il sottngnfo

che

se

di un grafo

di T indotto

T è connesso,

da

allora

G

V , e sia T è un

E,

V,

V un

e sia

il sottografo

G

albero

di G indotto

di copertura

L

sottoinsieme da

minimo

A con

l.insieme

l,

vengono

di G ,

algoritmi

Gli

di Kruskal

linea 1 due

algoritmi

elaborazioni nare

un

una

arco

sicuro

sicuro

che

vertice

un

linea

sicum

distinte.

di essi

3 di GEYERIC-MST.

di

ad A è sempre

appartiene

usa

una

specifica

realizzazione

della

determi-

per

di Krushal

della

arco

di peso

l insieme

minimo

l insieme

A forma

che

A è

un

connette

singalo

albero

e

veloce

più

necessario

un arco

di peso

minimo

che

connette

l albero

di

L

di Kruskal

algoritmo

presentato

nel

scegliendo

un

della

all albero. di esecuzione

Algoritmo

di

è basato 24.1.

paragrafo v

u,

Siano

C

direttamente Esso

di peso

su ll algoritmo

individua

mininso

e C, due

alberi

un

tra

tutti

connessi

arco

gli

archi

dall arco

l albero

per

di copertura

alla

C . L algoritmo

per foresta

La

un

nostra

disgiunti di

un

dell

albero

della che

albero

effettuata

algoritmo

peso

possibile.

dell algoritmo

f oresta

sicuro

da

che

connettono

w, v

u

greedy

aggiuneere

alla

i

siccome u.

distinti

disgiunti

dev essere

un

se FIN D-SET H

una

struttura

Ogni

Fi o-sv ir

determinare

i uguale

Prim

insieme

restituisce

se due

vertici

per

per

contiene un

le

calcolare

di dati

insiemi i vertici

rappresentante

u e v appartengono

viene

veda

v.

La

fusione

di due

alberi

for

8 vertice

v s

VG

5

ordina for

ogni

6

e

,

if Fiso-Sex u A f U io u,

retore.4

sulla

V

c E.

E.

O lg

non

peso

E,

in ordine

di peso

c Ftwo-Sex i , w.

A u i

decrescente

v

non

arco

leggero

che

viene

archi

un

ed

24.

un

vertice

che

sono

ogni

passo,

minimo. un

passo in V -A,

A. e quindi

per

quando strategia

Questa

arco

un

ogni

vertice

in A nd un sicuri

da

parte

in V. Ad

i vertici

in un insieme

nell

l albero

24.5.

figura

algoritmo

minimi

gli archi

che

tutti

I. L

i cammini

trovare

di copertura

albero

scegliendo,

esteso

copre

collega solo

aggiunge

in A formano

archi

nella

non

dell algoritmo

speciale

caso

tra

minimo

di peso

possibili.

di

scelta

un

arco

nuovo

i vertici

tutti

su di un

l al *oritmo.

canapo

che

di

questo

Per

G e la radice

ingresso

all algoritmo.

v, I-cg i

vertice

per il

ri i

ii dica

iX1ST

è mantenuto

in

archi

dagli

convenzione,

con

coda tra

key i

j

i pesi se

di v nell albero.

predecessore

Nello

l esecuziane

Durante

h il minimo

A.

di copertura

r dell albero

in una

risiedono

nell albero

dell ulbero

A di GEYERIC

l inFieme

ogni

vertice 11 campo

tipn.

in son i

non

k.

chiave

ad un qualunque

collegano arco

forniti

vengono

costruire

il grafo

avanti,

più

presentato da

connesso

facile

è di rendere

di Prim

formato

all albero

aggiungere

da

l algoritmo

efficientemente

realizzare

nel

fondamentale

Il punto

che

di E per

then

S

ten po

la funzione



dove

nel paragrafo per

illustrato

Come

è un

la pmprietà

di Primha

l albero

regola

l albero

perché

nessun

archi arco

do

7

9

gli

un

gli

di Dijkstra

finché

viene

basata

dO MAKE-SET V 4

V ,

il

ed

operazione

allo

dell algoritmo

ogni

r e cresce

questa

termina

l algoritmo

minitao

2

24.2

presentato

L algoritmo albero.

singolo

all albero

aggiunto

è greedy

2á.2 .

radice

di Prim

minimo

all algoritmu

simile

un

sempre vertice

pseudocodice

w

modo

il paragrafo

il corollario

Per

quelli a Fimo-Se

in

opera si

A formano

Ulviox.

procedura

MST-KRLJSKAL G, A

OE

Ig E .

è OE

l algoritmo

di copertura

un albero

trovare

per

generico

grafo

aggiunge

passo

all algoritmo

usa

di elementi.

L nperazione si può

quindi

è simile I . Esso

22.

ad ogni

perché

anche

di Kruskal.

l algoritmo

alberi

la

l

asintoticamente

Poiché

22.4.

paragrafo

Kruskal

la

Prim

foresta Come

due

arbitrario

Kruskal

paragrafo

insiemi

corrente.

co ntjene

di

nel

diversi

verificando

dalla

è un

il minimo

presentato

mantenere

per

di Kruskal

avente

connesse

insieme

stesso

arco

realizzazione

componenti

di

dell algoritmo

totale

le euristiche

minimo

di sicuro

nel

definita

di Ackennann

funzione

della

il tempo

con

OV.

sono a E.

OE

tempo

richiedono

in totale

che

disgiunti,

che

22.3,

tempo Ci

si usi

qui

è la realizzazione

1g E .

dalla

dipende

E

V,

paragrafo

richiede

4 è OE

linea

nella

G

Assumiamo

che

visto

insieme.

unico

grafo

nel

presentata

dei cammini,

archi

gli

un

per

disgiunti.

ad A nella

aggiunto

viene

è.

scartato.

Kruskal

arco

foresta.

Kruska insiemi

i

u.

in un

fusi

L inizializzazione

conosciute.

quelle

di insiemi

foresta

di gli

disgiunti

e di compressione

ordinare

per

inversa

Algoritmo

tra

per

di insiemi

foresta

rango

per

due

dati

di

struttura

e l arco

diversi

5-8

se cosi

viene

e quindi

E

in

linee

nelle

albero

stesso

allo un ciclo

archi

gli

for

4. Il ciclo

creare

senza

vengono

alberi

dell algoritmo

esecuzione

di

realizzazione

due

dei

per linea

nella

vertice.,

ogni

u e i appartengono

ad alberi

appartengono

8 i vertici

sono

paragrafo

regola

vertici

linea

nella

7

V

foresta

alla

aggiunto

uno

1-3 inizializzano

Le linee

24.4.

figura

nella alberi.

decrescente

non

se le estremitè

v

u,

essere

può

i due

di unione un

invece

Prim

in questo

descritti

Nell algoritmo

ad A è sempre

aggiunto

non

minimo

Ognuno

aggiunto

non

Il tempo

di copertura

Nell algoritmo

viene

che

albero

generico.

nella

e l arco

componenti

ad

un

dell algoritmo

foresta

l arco

trovare

per

v

Altrimenti

e di Prim

arco

ogni

per u,

e creano

di peso

in ordine

ordinati

l arco

vuoto

l.insieme

mostrato

come

funziona

di Kruskal

algoritmo

controlla

24.2

483

minimi

coperrura

24

Q

priorità degli

archi

t1on esiste Durante

conie

inlplicitatnente

decrescente. .-1

a,

.I

v c

G

è

t,z s

f

la

quindi v

C

l

Q

r

tirmina.

l al,,oritmo

Qu.mdo per

nt

rj

cuùa

. con

prioriù

Q

è

vuoi

l albern

di

copi..rtura

minin o

A

484

Capirofo

24 485

minimi

copertura

di

Alberi

8

a

b 10 I

8,

p

4 c

d k io

n

m.

Fi aura

24.4

coi tinua

di

L algoritmo

a

la coda

con

come

con

tutti

i vertici.

eccezione

r, nel

cui

vertici alberi

vengono

in

fi si

trno.

ma

1

Q c

2

for

3

non

l ey rJ

5

zr

6

svhile

7

VG

g.

ogni

ve

m

0

2E.

Q

8

do

u for

e siccome

in tutto

eseguito

wc

di

volte,

OE del

All intern

realizzato

ogni

le chiamate

tutte

per

collega

v a qualche

veda

si

viene

come

da

binario

l-4

Il ciclo

è O VlgV .

la somma

un

rtenenzn

l opp

per

m mtenendn

lunghezze

delle

il controllo

bit

in

ogni

per

vertice,

con

Il O lg

a Q

linee

nelle le liste di dice

priorità

la procedura

OV.

for

che

dell albero.

usare

tempo

di tutte

a u key vj

che

1a coda

tempo

g dei

V-

v adiacente

vertice

si può

nella

iterazione.

invarianti

richiede

EXTRACT-IVhiv

Exzaxcr-Mie

7.

su

A incidente

vertice

realizzata

il Capitolo

linee

delle

operazione

poiché for,

ciclo cnstai te

in ten po

dipende

heap

un

l inizializzazione

eseguire

per V j volte.

totale

come

realizzata

preserva che

leggero

arco

di Prim

dell algoritmo

Q viene

eseguito

è un

a mt..

Q contiene

V

all insieme

le proprietà

ad

vertice, r

u e

prima

ogni

di

l epe

i campi

I aggiornamento

albero.,

della

Q 1n si aggiunge

u dall insieme

di ogni

vertice

un

eccezione

gd

Q. Q

l aggiornano

8-1

tc v

i,

V-

eliminando

linee all

e che

Beit.o-Hv.xv Q

viene

ciclo V,

il tempo viene

8-ll

di adiacenza 9 può

linea

se il vertice

e if

s1elj w

i c

i in Q

then

J

e u u. j

J c l l

di

I es t

plx posl 1

u c

Prim

Il tl.

è pc

ElglQ

O Vli V l al oritllni

di

he

g EI 3 . Ki Uil

i

. cintoticanlente

ueln le

realizzazione

all t

al.

l .,Ll1I1l,,llll

J

llllll//lll1CIV,,llll1

l IC,l/l

Cl

Fll1l ll.,lCCl,

ACl

C

llj3ll IO

Z

l

lll lÈI ,IlO

CI1C

iC

AV

è

essere

Exvi nc -Mi Q ogni dn

lO

Se

4

Le

appartenente tt vj

il taglio

1-4

key

l insieme

l algoritmo.

7 identifica

linea

La

costruendo.

inizializzano

linee

á inizializza

linea



0.

posto tutto

Durante

Le

24.5.

figura

nell attributo

viene

le

attributo

attraversa

nella

e pongono

predecessore. si sta

la linea

L efficienza

dolci u

4

8

v, r

r per dell albero.

n v, MST-PRw G,

che

leggero

u

quale

ha

che

del aibero

di un arco

e i due

r non

la radice

i vertici

fnresta

vertice

del

poiché

g

priorità

mostrato

funziona

Prim

h

CICl11Llltt

di

Alberi

486

487

minimi

coperrura

24

Capito

Esercizi 9 24.2-1

a

archi

gli

2

aventi

di G vi è un

24.2-2 d

che

Si supponga una

Si dia

di ordinare

G

il grafo

T

minimo che

garantisce

di adiacenza.

O V-

in rempo

di Prim

dell algoritmo

matrice

una

con

rappresentato

sia

E

V,

che

T.

proprio

realizzazione

semplice

ordinati

di copertura

di Kruskal

stesso

lo

per vengono

albero

ogni

per

nell algoritmo

archi

gli sia

dell algoritmo

che

Si mostri

uguale.

peso

copertura

di ordinamento,

fase

nella

di come,

di

alberi

differenti

restituire

può

a seconda

modo

il risultato

c

Kruskal G.

di input

grafo 10

di

algoritmo

L

b

questo

per

caso.

24.2-3

più cui

veloce E

essere e più

24.2-4

della

e V

E

efficiente

a AV . Quanto

g

può

essere

una

qualche

puii

essere

in

devono

sia asintoticamente

l a 1V per

da

nell intervallo

interi

efficiente

E quanto

di Krushal

1

da

nell intervallo

interi

siano

grafo

sono

archi

degli

E.

V,

relazione

di Fibonacci

heap

l algoritmo

reso

i pesi

se invece

reso

di un

archi

degli

i pesi

tutti

che

Si supponga

In quale

8 V-

G

sparso

grafo

binario

heap

con

realizzazione

un

per

E uno

con

la realizzazione

affinché

della

veloce

è asintoticamente

he ap di F ibonacci

binario

in cui

denso.

un grafo

E per

8V

heap

con

realizzazione

uno

con

di Prim

algoritmo

dell

La realizzazione

D

costante

il

24.2-5

a V . Quanto essere

24.2-á

gr gi e

4.

5

appartèirgnno

e ll

e,lgoritmo,

re g re aftrnt

e. esecn ioide

L

el-sa11o

i,vertici

arco il

alberv nell

,,,

algorititt ,li

dell

c

.

cile

iene

-

s.. sl

osrrritu,

deier r,incrao

al/,ero

rg g pure

Prim

i arco

e

d,lle

graf fo

a f,, figura

24.I. ..

. ra liceI

La L

24.2-7 da

pti

essere

h

,ll

perché

enlrarnbi

sr,no

an.hi

le g ri

24.2-8

Si

suppong t

ùgglUlll0,1 Ofg,llllZZ,.ltl

lli

UBO

tempoamnsortizzatoO lz tempo

a ssmortizzato

tlC,.lp Ve

01.

Q

Cll

F140l

acci,

si

eseguire

pui -

u .,

.

da

nell intervalln

interi

l

da

eft sciente

può

l a W per

una

piii

un

dato

uno

G, tra

orientato

non

grafo

tra

il massimo

in cui

i pesi

tutti

gli che

archi

degli

mininto.

degli 0.

archi 1.

di Quale

un

si uso

graffo

tra

algoritmi

gli

distribuiti

uniiorntemente di

Ktuskal

e di

Prim

puo

efficiente

C

taglio.

Quanto SOflO

E quanto

.

,

albero, Ib

reso

di Prim .

intervallo

nell

interi

siano

pafo

sono

che.

efficiente

semiaperto

nell intervallo

v,

rchi

i pesi

che

supponga

degli

di G ne determini iia

ar lti

tm

a. c.,

Si

i pe i

algoritmo

di copertura

lo compongono

Fie

puo

re sn l algoritmo

3V

un

Si descriva alberi

invece

costante

qualche

degli essere

efficiente se

reso

di un

archi

i pe i

tutti

che

Si supponga

-

una

operazione -

.- -

in

Extv.sc-r-ani -i

ines

stare

a c

i t con

di

aver

gi5 si

velocemente Ci tlll

llllOYO

calcol ito pub, g iorn re Xt.l llCC COll

un

alberai

l 1ClùtlVI

mini no

di copertura

l ulbero hfClll

di

copertura

lllCl li l1ll.

di nsinimo

ut

grato se

G. viene

488

Capitolo

di

Alberi

24-

v

orig u,

-

orig x,

489

minimi

copertura

y

Problemi w u.

Albero

Sia

G

E

V.

supponga

di copertura

che

un

piis

non

grafo

dopo

piccolo

Sia

T un

z,

e connesso,

con

una

funzione

n. E -

peso

R.

di copertura

T tali

minimo

di

Sia

che

T-

minimo s

u,

di G.

u

lt fll,

c.

massimo

OV-

che,

Si dia

un

minimo

Per

T,

calcoli

algoritmo

T v,

Si dimostri è un

y

che

albero

esistono

di

due

copertura

archi

più

v

ii,

c

Te

dopo

piccolo

grafo

connesso dell algoritino

avente

lo

v

scopo

di

ivju,

tra v

verticiu,

u e v in ogni

per

u,

calcolare

per

v

V,

E

di

Pria

diminuire

T

v c

un

23

vc

Si descriva

Vsia nax u. un

v un

return

algoritmo

il

di

di

vertici

numero

come

prende

di G dopo

il peso

in tempo

forogni

vc

albero

di

copertura

più

dopo

piccolo

ogni

aver

aggiunto per

migliorare

Fibonacci

alcuni

ogni

arco

con

prima

che

un

rafo

archi v

u,

u c

6

C

K E-S

ET

il tempo una

Si mostri

c.

Si mostri

come

si usino

strutture

pesato

all albero c

E assumiamo

di G

fase

di

scegli

di copertura che

orig u.

e.

9

i

sul

T

Adj u

tale

ori, ii.

v

che

w u,

Tu

il tempo Per

delle

ultima

complessivo

sia

che

il tempo

che

il tempo

tale

di / proposta

la scelta

che

di Prim

l algoritmo

/,. in modo

scegliere

come

1g ig V . Si deduca

OE

minimizza

complessivo.

asintotico

di esecuzione

si esegua

di iVIST-Reduce.

/- fasi

Si mostri

fase.

gli

da una

prodotto

in T. Si mostri

archi

è O/E.

/ fasi

eseguito

aver

dall

il grafo

usando

eli MST-RzDucE.

e accumulando

successiva.

valori

quali

di

efficiente

più

di

funzione

in

E

di

Prim

di

l al oritmo

AV

dell algoritmo

senza

Prim

con

è

pre-elaborazione

pre-elabnrazione

al capitolo

i

sia

minimo

c

viri- i

C

v,y

ve

Fiivt -St t- .v

14

v

Finn-Sr r v

15

if w.

E

Graham

ed

Hell

hanno

92

e fornisce

minimo una

scritta

del

storia

minimo.

di copertura

Boruvka

di Krug il

l al oritmo

come

comunemente

a Krushol

è dovuto

di Prim

l algoritmo

ma

era

anche

stata

inventato

precedentemente

13

è stato da

è else

l insieme

ctelle

foreste

di un

rafn

torma

E Ci j OE EG/

I

nel

19S6.

Illc lltl C 1 Ql oritmo inventato

effettivamente V.

3arnil

un matroide

l 7 A.

n c

then

di copertura

dell albero

problema tema.

nel

1930.

grwt rcn

si

da Prim

V GJ

E Gl

i

dell albero

sul

avanzato

TRAE

c e

materiale

sul

rassegna

una

presenta

conosciuto 163 .

Fio-srr v

188

problema

di O.

I

16

dopo

g eeimenro.

Sig

v

/nari i

do

che restituito

grato

/ fasi

eseguite

fase

complessivo

di esecuzione

ci.

ininitni

13

OE

semplici .

vengano della

che

in modo

M ST-Reseca

di dati

input

Si supponga

Lll11

minimo

realizzare

che

come

delI eccellente

v c

T-

forogni

tempo

è un

V 12.

VG

di esecuzione

G

venga

Prim

e restituiSCC

che

Si supponga

di esecuzione

pre-elaborazione

l algoritmo

FALSE

8

12

richieda

T

e

x,y

FALSE

Uwo ir,

VG

i

v

7

EG

orig v,

G.

VG l11QI k l

then

10

di

minimo

di copertura

l albero

T Tu

che

Si dimostri

procedura.

minimo

e sia

MST-REoucE,

dell arco.

mark v

if

dalla

di copertura

da

restituiti

di archi

b.

d.

input

grafo

Tarjan do

I l

G

per

il

Note

I

Adj

adiacenza

di

Vjg

MA

for

liste

G restituito

asintoticamente

do

5

y

T

insieme

albero

T

3 4

le

Ge

Tl

del

f. 1VIS1-REoUCE G, 1

.v. l

V.

si può

heap

Sia

arco

sparsi

grafi sparso,

con

Inizialmente.

sia

per

molto

procedura

di costruzione.

e che

cammino

sniiiimo

G

La seguente contratta

in fase

perognicoppiadi

max u,

di copertura

VlgV

versione

G,e

efficiente

OE

eseguito.

orig lie X,

M

il

G.

Atbero un

sull unico

dato

per

24-2

l

G.

Tunalberodicoperturadi

di peso

c

e ii

a. b.

v

orig u,

V.

E

albero

e

y

v

v u.

y

then

si costruiscano a.

y

il minimo 1Q

orientato

w x,

if

else

24-1

vfx,

v

EGJ

u

n.

i

I p .dove

p

p E,

V

min i

I

V

E11 .

veda

il p ra

rato

Cammini

Un

minixni

automobilista

una

carta

Un

vuole

stradale

adiacenti,

con

trovare

si può modo

possibile

consiste

lungo

ognuna

che,

se non

ammettiamo

maggior da

Roma

Trieste

che

In questo

E,

capitolo

una

e nel

Il peso

di

min

Trieste

Capitolo

l

l g l

Un

canmrino w

Nell

un

dato

incrncio

ccumula

C

incroci

di

a Torino,

nel

son mare vedere

corta.

Tuttavia

è facile

vi sono

milioni

di possibili .

considerare.

chiaramente

Ad

una

come viene

scelta

associa

la somma

ere

risoh

fornito

un grafo

nd ogni

arco

dei

g

minimo

mp

da

u

v è definito

a

. v

se esiste

l

peio

da

mostreremo

Pi che

a disposizione coppia

felice.

poco

la

la . trada

esempio.

perché

strada.

minimi

E m

cicli.

inutili

fuori

ogni

da Roma

la più

contengono

sarebbe

26

le strade

sceagliere

completamente

Avendo

tra

pesi

degli

efficientemente orientato

un

a valore

peso

archi

questo

che

G

e pesato nei

reali.

lo costituiiiuno

r

cammino

f

che

peso p

i

g

strade

di cammini

fin .io re

di un caiamino

P

e nello

a Torino.

distanza

corta

più

tutte

strade

per

Roma la

strada

di chilometri

In un problema con

Il peso

passa

centinaio

da

è segnata

nell enuinerare

sono

singola

corta

più

quale questa

delle

quali

a Torino è qualche

problema. V,

delle

parte

sulla

determinare

le distanze anche

la strada

dell Italia

come

sorgente

conce

un

cammino

da

u a v,

altrimenti mincio 6 u,

eienspio

incrocino di Torinn

in modo

dal

vertice

u al vertice

v è definito

come

un qualunque

t con

cammino

. Roma-Turino.

precedente

Roma ud

od

esempio

esempio

lino rc

e che

tra

Ccirso

si suoli

mndellare

poisi asso

tra

Via Giulio

Fori

dei

Ce are

Illlllttl117/ llC.

Imperiali

la

carta

e Via

e Corso v ra .

stradale

Cavour

COlllc

ad un

llll

dato

4K

a

b

glllfOVariantl C

ci concentreremo

pp Qfo ,

z

g

pp

venice

per

il problema

v c con

rr

un

q

un

altri

sorgente

minimi

v ad

pgftice

gg/

trovare

V. Molti

di cammini

genia

p

si vuole

E,

V,

ogni

su lprob1ema

dato

cammino

con

come

ad

destinazione

da

un

singola

c

p

singola

vertice

sorgente

dato

utilizzando

le segueriti

trovare

e

sorgente

risolti

esempio

t. Invertendo

p o l ma

con

essere

possono

destinazione

l

mininri

minimo

problemi

singola,

vertice

pmbl

di cammini

un

V

un

varianti.

cammino

la direzione

minimo

di ogni

Figura

arco.

s go a.

25.1 di

peso

Archi

di

cammino u e v sono

i vertici

fig q e

sorgente

q es o

problema

algoritmo problema r

u, si risolve che

sia,

nel

per di

cammini

minimi di

in modo

coppia

si risolve

trovare

il problema

questo

caso

un con

Non

problema.

cammino

minimo

sorgente

singola

da

u a i

rispetto

al

nessun

più

efficiente

algoritmo del

le coppie

u e v. Questo

singola

una

efficiente

più

tutte

volta

il problema

problema ogni

per

e la sua

trovare

cammino

essere

può

vertice

struttura

un

peso

di

j non

sono

raggiungibili

ciclo

di

tuttavia.

esso

è interessante

di cammini

minimi

di

tra

tutte

può

da

In alcune archi

i cui

pesi

negativi

istanze

del

negativo,

tuttavia

un

essere

Alcuni

risolto

Il Capitolo

degli

26

nel

ben

dalla

raggiungibile

può ciclo 5 s, La solo

.

figura

A.1

il grafo

un

per

valore

essere

non

un cammino

seguendo

singola,

contiene

se vi è un

sono

ben

più

ciclo

un

negativo

avente

negativo i

cammii o

su di un cammino

car mino

da

illustra da

da s ab,

0, il e t smino

pica li

I effetto

dei

s ad a

il camiminn

quindi

5 s,

t11inimo

b

s,

D s,

a ,

ti s, a

da s n c è s.

c quittùi

negativi

pesi

se

e

c

D s, v a.

con

.

b

peso

l

di cammino

pesi

a

v s,

3 -4

8

inoculo

3

a -.

s,

c

aualu

minimo.

La

alberi

,

thhiunui

c

il

di

g è raggiungibile .

nrisiimo

è

il suo negativo

peso da

minimo

s e quindi

sono

come

un

Veridici

anche

se

vertice

come

giacciono

cammini

di

s.

con

h,

i e

su

di

h

nel

negativo

peso

l algoritmo

un ciclo

8 s,

Dijkstra,

negativi

arbitrariamente

pesi

anch essi

nel l csempio

pesi

cicli tipo

á

di

quello

negativi,

ammenono vi

calcolare

nel

i

assumono

che

della

stradale.

carta di input

grafo

raggiungibili

ne puo

rilevare

di peso .

8 s, j tutti

i pesi Altri,

e producono dalla

e segnalare

sorgente. la presenza.

minimi

che

da

che

i pesi

usiamo

23.2.

Dato

è un altro

capitolo un

solo

che

v

in questo parte

non

paragrafo

V un predecessore

sori

vi è

vi è solo cammini

i I camt li

che

come

non

di questo

rappresentazione

BFS

presentati

Poiché

intiniti

5. Analo imcnte.

h mostrato

ciclo

v segua,

un

minimo,

i cammini G

grafo

vertice.

utihzzano

vertice

di cammino per

l attributo

E,

V, lc.

oppure

Gli

z in modo

in direzione

ma

minimi

inversa,

a quella

manteniamo

per

che

ogni

la catena

cammino

tali per

vertice

v

minimo

dei

minimo

su usata

di cammino

algoritmi tale

un

i vertici

anche

è simile

da

predecess a v.

i det unisce

analogamente. Vi sono

e poiché ca ninino

caminiiro

i da

minimo. siano

non

dei

l esecuzione

necessariamente

sui

raggiungibi

di Bellman-Ford,

si vogliono

minore

percorrendo

da s a i.

sono

di input

corretta

cammini. gli

di pesn

e quindi

Spesso

rimane ni .gativo

peso

di

peso

vertice un

essere

peso

Nessun

proposto

di peso

di

minimo8 s,

definiti.

poiché

vi possono

cicli

di cammino

minimo, minimo

i catnmina

Se vi è un ciclo

non

V il peso

Tuttavia,

minimo

sorgente

E

V, v e

negativo.

di cammino può

G

ogni

con

non

se vi è un ciclo

Durante

cammino

arbitrari in i. i te

Se s, allora

trovato

negativo.

v

un cammino

3

essere

di peio

un

se ha

da s, i pesi nel ciclo

vertice

sempre

negativi.

sorgente

anche

definito

s ad un

sono

pesi

raggiungibili

minimi

loro

di

peso

ogni

f formano

da f. possiamo trovare cammini -. I vertici h, i e j formano g

8 s,

di cammino

grafo

l algoritmo risposta

anche

essi

algoritmi

archi

come

le coppie.

G è raggiungibile

poiché

Rappresentazione di cammini

problema

il

mininro ha

di

e ed .

esso

anclt

s e quindi

All intento

i vertici

cammino

,

è

Poiché

s.

di

peso

da

da s a g e quindi

piccoli

u a

una

con

hamw irtinimo

orientaro.

grafo

negativo.

peso

Tipicamente Archi

essi

cammino

un

sorgente

per

eseguendo

sé.

per

in

dalla

migliore

minimo

risolto

s,

il cui

un

si conosce

asintoticamente

peggiore,

tra

vertici

in dettaglio

considererà

una

negativi

mii imo da

inoItre,

sorgente

per

Se

anche

singola.

coppia

Qjg Qritmo

tra

dati.

sorgente

igni

eli solito

minimo

a pesi

camminato

raggiungibile

ggma

d

g

ci ,

/l

al sottografo

definianso

l insieme

no

.

wL,

piit

algoritmo

i cammini

interessati

da j

di un

dei dei

di canamino

minimo,

minimi.

Come

nel

caso

predecessori

G,

V,

E

indntto

dei

vertici

vertici

V,come

l insieme

tuttavia.

della

visita dai

i valori in

valori

ri non

ampiezza, rc. Ancora

di G con

predecessore

indicano saremo una

volta

diverso

la sorgeote,v.

V,, ve

t z v gwi u sf

L insieme

di

archi

. orientati

E

è

l insieme

di

archi

indotto

dai

valori

di

n

per

i vertici

in

V,

494

Capitolo

M

minimi

Cammini

risolvere

per La

S

nostra

X

a

b

caso

analisi

in mite.

quantità

.Y

un

Inoltre.

affinché

che

ogni

per

richiede

alcune

le dimostrazioni reale

ogni

per valgano

effettuare

per numero

495

singola

operazioni

di cicli - a

a -

.

a

a

negativo.

di peso -.

con

aritmetiche

valga

a w- ,

reale

in presenza

valga

ac

sorgente

lineare .

convenzioni

che

Assumeremo

numero

-programmazione

di

particolare

con

assumeremo

c

25.2 Figura

di

Un

a

arcfri

grigi

camn iiri

minimi

orientato

grafo mt

formano

albero

co t

e pesato

di canuniiti stessa

la

con

i pesi

mi fimi

di

avente

canvnino

come

iniiiinu

radice



dalla

sorgenre

sorgente

s.

s.

C,n

c

b

altro

Gli

25.1

Cammini

minimi

radice.

Per

capire

c E

zfi ,v Dimostreremo

termine con da

radice

che

cammini

E

sorgente

s c

2.

G

forma

un

per

ogni

i s

ai

inG. minimi

esempio,

con

essere

G non

i cammini

dei

con

sono

G

raggiungibili radice

da

archi

usata

atbero

c

che

V ed

contiene

c

E.

tale

finché

camhsino

mostra

stesso.

In

questo

Per

una

che

è un

comprendere

sfruttar.o.

è il rilassamento,

al reale

peso

di cammino al peso

diventa

proprio

uguale

come

funziona

il

Ie

La

tecnica

un metodo

cioè

di ogni

minimo di cammino

rilassamento

minimo

e dimostreremo

soddisfa.

essn

paragrafo.

può

enunciati

e

eli

capitolo

essi

essere

conveniente

saltare

le dimostrazioni algoritmi

direttamente.agli

passare

quindi

1

ntinimi

risultato

chiave

la comprensione

per

degli

algoritmi

di cammino

minimo

di questo

che

s in G,

i sottograti

concentrandosi

semplice

dosa

unici

un grafo

orientato



t in G

invece

lo sono

e pesato

Sottostruttura è un

cammino

alberi

gli e due

miniano

dei

predecessori

sui

lemmi

e gli

alberi che

precedenti

di cammini

minimi

riguardano

25.8

lemmi

di cammino

i pesi

e 25.9 ,

minimo.

di cammini

alberi

di cammini

ottima

di

cammino

un

minimo

d .s

minimi.

Gli

algoritmi

tra

due

di cammino

vertici

contiene

mininlo l suo

normalnlente

Che un cammino

1 1 proprietà

sfruttano

inoltri cammini

inten o

minimi.

Questa

nlinimn

di sottostruttura

proprietà

minimi

del

alga ritmi

di

p nprietà egli

minimo

con

dei

generali

sorgente

cammini

algoritmi

basati

sul

presentato

nel

paragrafo

singolo

preient

minimi

rilaiiarnento.

e L al

1ti in questo

quindi

mostra

oiitmo

di

capitolo

alcune

Dijkstra.

sono

trova

è un

di Dijkstra

i cammini

al oritma

tutte

minimi

tra

di

sottostruttura

mentre

greedy,

di vertici

le coppie

per

c,Ic ,lare

i c,m,t,,ini

enunciano

in

mndo

più

la

preciso

proprietà

cammini

dei

ottima

tutti

Lemma

inlportanti che

risolve

23.2.

Il par grato

25.3

intniduie

l al

oritmo

is inimi

d,.i un,

or,,ei,tc,.in al,

in

r,l-i

25.l

di

Svttocaitisttisii

caiiunini

ministri

soirn

cadorini

minimi

ii IlltlllllO

Cilll1111ltlO

di

l. n inimo

lineare

I algoritmo

che

minimi.

Llll

viene

Infatti.

Floyd-XVarshall,

capitolo

di CQmmino

importanti

l7 .

Capitolo

greedy

seguenti

ten n ,

solo

che

radice.

Struttura

neg tiii.

che

di questo

leeeendo

l algoritmo

propricil

lettura

prima

teoremi

non

è utile

singola,

minimi

superiore

mostreremo

proprietà

sorgente

cammini in questo

limite

superiore

paragrafo

con

dei

presentati un

limite

diverse

dei

metodn

Gli

algoritmi

questo

minimo

proprietà

vertice

di eammiei

E

cammino

e le

ripetutamente

vertice.

al

funzione

iàl

dagli

diminuisce

formalmente

rispetto

con

raggiungibil

Ut V

dove

invece

ma

di

usano

al

raggiungibile

23.2.

e pesato,

negativo

che.

un albero

vertice

orientato

definiti.

tali

essi

s,

necessariamente

25.2

E ,

ogni

paragrafo

degli

di peso

ben

V.

del

un grafo

cicli siano

s ad

BFS

sono

informalmente,

che

riguardano

vertici

V , l unico

ura

minimi

sorgente

E

capitolo

questo cioè,

ai pesi

V,

G

contenga

orientato

albero

non

la ti

la stessa

che

una albero

rispetto

sia

di

minimi ,

da un

minimi

precisi,

sottografo

l insieme

I cammini Per

Per

V. cosicché

s è un



1.

minimo è come

sono

algoritmi

di cammini

minimi che

R. e si assuma

radice

è.

archi.

che

principale dagli

camntino

di cammini sorgente

degli ii

u

.

fs z prodotti aIbero un



contiene

dalla

numero

con

i valori

dell algoritmo,

s. L n albero

peso

v C V,

che

algoritmi

gli

tecniche E,

e rilassamento

alberr

i sta

3ùl

... i

il u

VCI1ICC

sottocamminn

VCftlCC

l,,ll

eli p

dal

V.

PCl

Oglll

vertice

al

/ C

/

tQll

CC

vertice

. Alloray

camn iito

ntininui

l

I

J

è un

cammin

i .

uri,. ,t.,li

minori.

eli

iilp .

il

che

coi traiklicc

l ipoteii

he

baia

un

da

i,

t

i,.

si

minimi

Cammini

Durante

lo

lemma

studio

23.1

coro

una

lario

del

visita

della

semplice

lemma

in

ampiezza delle

proprietà

25.1

minime

la proprietà

generalizza

23.2 ,

paragrafo

distanze

abbiamo

in grafi

al caso

dimostrato

non

di grafi

nel

v t

u, v,

REt..m Corollario

Sia

25.2

G

un

per 5

8

orientato

p da una vertice

quaIche

1

S,

un grafo

minimo

ll

S,

e pesato

sorgente

u e cammino

ll U,

con

s ad

un

funzione

vertice

Allora

p.

w . E -

peso

v possa il peso

essere di

R.

Si supponga

decomposto

un

cammino

che

minimo

un

u -

in s da

l .

Ret.wxl

g b

A Figura la

25

stima

v. v

u,

V

g

Q

Q-

v

s a v è

v

V

Q

E

V,

cammino

497

singola

Q

Qs

pesati.

sorgen1e

V

Il

V

g

Il seguente

pesati.

con

3

di

Rilassamenro

cammino

decresce.

b

di

un

minimo.

Qui

arco

del

prima

u,

v

con

rilassnmenro

iv tt,

peso

dv

Poiché

a

du abbiaino

che

consiste

nel

2. All

v v

sv u.

iitten o

d

di

i ertice

ogiri

rilassamento.

del

prona

i ,

v u.

du

è

rrosrrata

il valore

di

dv

con

dv

quindi

iene

modificato.

Dimostrazione.

Per

s al vertice

il lemma

25.1,

il sottocamminop è

un

cammino

minimo

dalla

sorgente

u. Quindi Il processo

8 s,

v

wp

minimo

wp

w u,

8 s,

u

v

w u,

v

.

di rilassare

dv

e zf v .

di

e può

Un

successivo

fornisce

una

semplice

ma

utile

dei

proprietà

pesi

di cammino

E

V,

Allora

un

ogni

per

maggiore

u,

v

del

c

e pesato E vale

cammino

8 s,

minimo altro

qualunque

maggiore

dall arco

u,

Un di un

orientato

grafo

arco

Dimostrazione.

cammino

funzione

i

5 s,

dalla

p

cammino

formato

con

peso

v

ii u,

v.

u

sorgente

s al

da s a v. In particolare, da

un

can mino

minimo

E m

R e vertice

sorgente

sull arco

caso,

della

di cammino

stima che

Il codice

il cammino nell aggiornare minimo

effettua

segue

un

passo

v.

vertice

i non

il cammino dalla

può p non

sorgente

avere

peso

può

avere

s al vertice

La

25.3

figura

u e

per

il numero

algoritmi

V. si mantiene sorgente

minimo

in questo

presentati un s a v

attributo

chiamere no

e i predecessori

2

vertice

ogni do

3

usano è un

una

stima

inizializzzti

la tecnica

limite

del

rilassame ito.

superiore

al peso

di cammino

ninimn.

dalla

seguente

Per

di un

oceani vertice

cammino

Le stille

minimo

ogni

arco

arco

viene

viene

La

t/G

parlotti

i,.s

V.cl vJ

Op r,. s,c l ,

capitolo

inoltre.

viene

esattamente

Gli

e per

volta,

menu

la

quale

stima

di

stima.

IVITIALIZE-SWGLE-SouRc , è l unico

con

mezzo

quindi cui

capitolo

in questo

algoritmi

rilassato

nel

uno

alcuna

inVOCBI10

di cammino una

arco,

alterata

il rilassamento

camhiano. arco

un

di

viene

l ordine

in cui

minimo

per

gli

orientati

archi.

aciclici,

di Bellman-Ford

e nell algoritmo

di

differiscono

si rilassano

erafi

le stime

ogni

volte.

più

pc r,.

V-

rilassamento

del

correttezza

sugli

AIL

ii

ogni

non

e nell alzoritmo

rilassato

rilassato

importanti questi

nf,

in questo archi

in cui

Dijkstra

rilassamento

in ciii

i predecessori

di volte

degli del

lemma archi

di un

s.

virtcnlii

i

rilaii ih .

al oritmi

ril, ssanlento descrive

0

t-inizializzazione.

ed

di

Proprietà

procedura.

djv E

gli

di

uno

di cammino

S i e

7 l ds

che d

vengono

INITL LI2E-SINGLE-SOURCE G, for

capitolo dv

esempi ed

presentati

minimo

Nell algoritmo

v e

due

ripetutamente

i

Ll

decresce

algoritmi

gli

w ,

di E

mostra

minimo

Tutti

i

cl i Z1

cammino

v.

Gli

iv ii,

then 3

Rilassamento

Dopo

il valore

di v, z v .

migliorare

se si può u e, in questo

per

diminuire

pu6 predecessore

u,

dh

s.

cammino

4

il campo

veriticare

passando

v. ii

rilassano

1

di rilassamento

passo

if d v

l

G

dalla

momento

minimo. REI.w . ii.

peso

i

u,

a quel

5.3

L.emma

Sia

fino

aggiornare

di rilassamento Il lemma

un arco

v trovato

per

grafo

presentati elle

il risultato nrientato

sotlo

in ri,l,sunte

questo nei

dell e ecuzione e pe ata.

inizializzato

capitolo

dipende

da

alcune

pro,sillli

lemma.

La

m.,lggior

di una con

sequenza

di passi

di

lxts

t,xuzc-Si c t.r -SouaCF..

proprietà phrte

rilassamento

di

a

Cammini

Dimostra--ione. Ad

eccezione

del

lemma

di rilassamento,

passi

25.9,

e non

risultati

questi

solo

a quelli

si applicano

che

ad

una

valori

producono

sequenza

qualunque

di

cammino

per

G

E

V,

un

orientato

grafo

immediatamente

Allori,

ahi u,

du

dv

dopo

e pesato

con

il rilassamento

funzione

w

peso

dell arco

v

u,

E m

tramite

R,

e sia

REI.m u,

v

u,

v, w ,

c

dopo

subito

Lemma

subito

si ha d j i

cambiano,

du

di rilassare

prima du

w u,

v.

dv

quindi

l arco

Se

du

invece w u,

v

u,

si aveva

si aveva

v

dv

continua

d vj

du

du

J

i u,

ahi u,

v,

si ha

che

5

i

s,

dv

necessariamente,

quindi,

è cruciale più

che

il rilassamento

la correttezza

dimostrare

per

in questo

avanti

capitolo

faccia

esso

convergere

degli

fornisce

le

stime

algoritmi

di

cammino

condizioni

delle

sufficienti

minimo

di cammino

ai pesi

di

minimo.

25.7

C V,

E

v,

allora

allora

inizializzato

né d i

G una

a valere.

un

e sia

u m

di passi

istante

qualunque

e pesato

v un

con

cammino

funzione

minimo

Iwvi uza-StxovE-Sot Rce G,

sequenza

W

orientato

grafo

s con

la chiamata

di rilassamento della

prima

varrà

s

dv

che

e che.

quindi,

du

R,

i, v c

con

comprende

vale

chiamata

E-

pesos

in G,

venga

u,

allora

V un

s e

eseguita

vertice

che sugli

G sia

archi

v, n .

REcAx u.

la chiamata

5 s,

sia

V. Si supponga

istante

in un qualunque

di

Se ad un dopo

v.

8 s,

25.é

Lemma

G

Sia

V,

E

un

e si

sorgente

6

che i,

s,

sequenza

qualunque

e pesato il grafo

ogni

per di

il limite

raggiunge

orientato

grafo

supponga

dv

Allora

v c

di

passi

inferinre

con

sia

funzione

con

V, e questa

rilassamento

D s,

v.

non

E

R.

Sia

s c

V un

invariante

archi

di

G.

viene

Inoltre,

mantenuta

una

volta

Dimostrazione.

vertice

INITIALIZE-StwGLE-SOl RCE G.

proprietà sugli

esso

iv

peso

inizializzato

che

Per

s.

dell

arco

da

aver

rilassato

di

l arco

Dimostrazioiie.

La proprietà

ds

poiché

0

0 altrimenti , assurdo

á

che

s

s,

mentre

in variante si

l invariante

viene

Sia

v il primo

vertice

per

cui

rilassato

l arco

u,

v,

ni u,

e

che

8

implica

aver du

noti

d vj

di

6 s,

mantenuto

v è sicuramente

5 s, da una

un passo

se v

un

ciclo

v s

V

du

w u,v

causa

Dimostreremo

di passi

dv

i3 s,

negativo.

peso

v.

u

w u,

istante

in qualche a valere

nel

Per per

il lemma

dv

25.5, v

8 s,

á

per

il

lemma

v

s,

e questa

Allora,

subito

per

il

corollario

è un

limite

inferiore

viene

uguaglianza

25. Z ,

per

mantenuta

cui

li,

da

nel

seguito.

du

5 s,

s,

v

volta

i valori

u.

Ma

Alberi

che

che d i dell

attributo

vera

subito

vertice

per

v e non

il lemma

del

il quale

dv

tutti

muta

di

cammini

abbiamo

può

dv

aumentare

una v

ir,

rilassamento

i i c

allorche*

inferiore.

25.3 ,

dell arco

prima

per non

limite

per

il rilassamento

poiché

di d v

iI suo B s,

v

mantenuto

il valore

j

ia u,

essere

essere

raggiunto

mostrato

u

il primo

deve

vedere

Per

s,

doveva

di v come 8

minimi

mostrato

che

non

5 s,

non

modifica

del l arco, i.

Di

du

il che

conseguenza.

sottografo

sia

nessun

di rilassamento

la dei

per

G.

Iniziamo

sempre

l invariante

un

il rilassamento

in un

ct i

5 s,

può

i passi

perché

v,

decrescere

è sufficiente

notare

abbiamo

perché

di rilassamento

non

che. appena

aume st uso W

su

li

grafo che

archi

orientato colle,

di g.

e pesato hi

un

vertice

G

di

fa

le

decrescere

di cammino

rilassamenti

G,

il lemma

la cui

pesi

indotto

è a

calcolato

calori

dai

seguente

radice

ha

che

i reali

risultanti

mostra

che

stinse

di

Vogliamo

minimo.

pesi è un

cammino

anche di

cammino

albero

che, il

minimo,

di cammini

dei

il sottografo

minimo

mostrare

minimi forma

predecessori

sorgente.

V.

d.

camniino

effettivi

sequenza

con

albero

Lentezza

25.8

Sia

G

V,

E un

grafo

s c

V e si assuma

che

che

il

grafo

V, sorgente

E

con ., c

tunzione V ud

un

pe iO

l

dato

vertice,

E m

orientato G non

e pesato

stato

inizializzato

G,

forma

un albero

sugli

archi

con cicli

coi tenga

è

di rilassamento

che

gli

predecessori

j, questa

contraddice

25.6

Si supponga

verso

valta che

predecessori Corollario

W

d ft

disuguaglianza

dv

che

concludere

possiamo

dopo

si ha

monotonamente

la scelta

dopo

di rilassamento.

Finora

implica

rilassamento

In particolare,

25.4

d, s,v

che

del

prima

seguito.

u

8 s,v

l i sizializzazione. di

s.

sequenza

qualunque

di rilassamento

dapo

s è in

ogni

per

vera

u

6 s, continua

abbiamo

più.

vale

s

s,

dv

v,

r,

se d n

25.5,

uguaglianza

questa

j dv

cambia

il 1emma

i . allora

u.

8 s,

vi

499

E.

v.

Se

25.5,

appaiono

garantire

sorgente

una

singola

si ha che

Sia Dimostra-ioide.

il lemma

lemma

che

cammino



sorgente

con

i.

8 s,

Il prossimo

minimo.

25.4

Lemma

Per

dsJ

di

minimo

Sia

minimi

25

Capisolo

cnn radicatn

di G mantiene

f rnzinne di peso

peso

w

neizativo

E

COlllC

questa

l lldice

snrgente dopo

da s. Allora, s,

lwai,si.ize-Si c,u,--Souzca G. ai entC i

vertice

R e con

raggiungibili

e qualunque

il

sotto ,rifa

dei di passi

sequenza

invariante.

proprieù

R llOB Di,nostra ime,.

c

All

inizio,

I unico

vertice

in

Ci.

è

il

vertice

sorgente.

L surdo

che

un

c cnilchc

paleso

rii

rii rii imenio

crei

un

iiclo

nel

nr tfo

il

quindi

l.

G,.

e

che

lemma

il

ciclu

è

baia

implica

e Questo

che

e mostriamo cicli che

c è un

di peso

ciclo

del

predecessore

I e, senza

v,,

v,

ciclo

c sono

diverso

da

da

di generalità.

perdita

a creare

il ciclo

raggiungibili

dalla

iwtt. e quindi

ad

in G,

sorgente

s

vertice

ogni

in c

s.

z v,

viene

negativo,

1, 2,

modificato

sorgente.

l,

dv

2,,

m

diminuito.

che

della

prima

i

v,,

l ipotesi

Subito per

l assegnamento essere

di Ra.m v...

d v,, subito

dalla

1t

s,

1, 2...

chiamata,

k-

subito

1, l ultimo

vi siano

iv v,

v,,

essere

della

s m-

prima

l.

1

25. vale

prima

anche

la

w i

Sommando stime

questa

u i

con

il cicio

k

lungo

le k-1

disuguaglianze

si ottiene

25.1 ,

sorgente

j w v,

g d v,

rl

la somma

x

p,

e p,

da s ad

s

u

m-

x

w-

v, con

w-

v, dando

ora

x w y

luogo

ad

semplice

è stato

Lemma

2é.9

Sia

V,

G

G,

E

che

è un

un grafo

assuma

che li n

procedura

se,

gw v

Ma

vertice

c

l

d v,

g

il

nel

ciclo

e compare

esattamente

una

volta

in

ogni

il

la somma

dei

lungo

pesi

i vertici

albero da

pritna in

V

incluzinne

per

dimostratn

quindi

cammino

Per

completare

C

ll mJSSlmO

Per

G,.

con

con s a

allora

e

una

x e rc

concludere

un

albero

minimo

in y, e ciò

che

con

di passi

sequenza

può

decomposto

f.

si pun

che

p,,

essere

può

forma

G,

di cammino

funzione

esiste

radice

un

s.

di rilassamento,

reale,

e quindi

allora

il sottografo

v

á s,

minimi

R e vertice

raggiungibili

si esegua

dv

cammini

im E

peso

negativo

peso

produc

di

il ciclo

c è negativa

e questo

fornisce

la

radice

v in

c ia.

che

G

s. si

occnrre

non quelli

ved i

Cùminino

ridiverio cnme

a i

e aciclico

che

ntostrue

per vertice

ogni

per

i c

che vi

V

esso

è un

lemma, kiel

ar f i

esiste

wt.,

esercizio

cammino s.

più al

dobbiamn G,.

v ,

can

una

v e

ogni

per

sorgente

da

s.

V. Allora,

V,

s c

invochi

Si

sequenza

qualunque

ndice

la

di passi

il sottografo

s.

Si

da

s

d

v

ni

vertice

dintostrazione

Questa

lettore

i,

s e v

v.

lQng n

da

cui

il canlmitlo

ll 1

25.1-6 .

in

V,

si

pun

che, a che

ciii

. l,

d Ni . t .ire

A

8 ,s,w,

g 8 s.n, per nim

o

ni baia

vertice vero,

i c ciOi

l .

b s. i

..

il1C

8 s,i ,

.

che

s

v c in

i. Per poisiumo

in G o ni

s

sono lemma

prnprietè . .-,.

sono

V

V

i

che

di V

minimo

assegnato

viene esattamente

cammim

di tutti

è finito

s sano

se e

esattamente

valore

un

quelli

minimi

è l insieme B s,

da

raggiungibili

finito

per

raggiungibili

da

s.

25.S.

degli

alberi

è un

can mino

1, 2,,

concludere

p Ott niamt

alberi

di cammino

peso

dal

l ultima

irnic i

Esercizio

n ostr re suppon

con

i pe i

i vertici

degli mostrare

proprietà occorre

un

vertice

un

nnplice

tre

i vertici

direttamente

dimostrare

w v,.

1li f un

da

...,

ad

quindi

segue

cammino

d v,

definizione.

l

5.5-3 . che

del di

grafo rdimostrare

l Esercizio

l isci ti

orientato

,,

Ma

le

proprietà,

s, quindi

c vie,

de

quindi

V, l unico

So,l,mando

un

fl iciente

valore

inno

la dimostrazione LIFT

è

dimostr .re con

i dettagli

è su

G,

s. Per

d finito.

proprietà

che

la prima

da

i

se

seconda

v ,.

p

contraddizione

dimostrare

mostrare da

valore

se e solo

cl v

un

di s

di G che

v è raggiungibile

Rimane

.

cercata.

Come

se

quelli

, c

forma

p, .z

rc -

minimi.

con

cicli

albero

Dobbiamo

raggiungibili

di

,c

Abbiamo

archi

i vertici

La

Quindi.

Ma

Quindi, che

peso

e pesato

contenga

è un

per

soln

implica

w v,

cammini

avrebbe

v, precisamente

che

25.4 .

as er eseguita

di cammini

orientato non

G,

valgono

k

0

dopo

albero

sugli

predecessori

Disnos1raziotre.

sommatoria,

i1

e questo

G

Q

k

g

dei

.

che

k

due

si

il

ogni

poiché

abbiamo

la figura

il proprio

wuze-Siwat.E-SouRcr G,

di rilassamento

I

allora

vertice

v e p,

contraddizione.

A

gd v,

vi fossero

Se

eon.zcy.

qualche

w-

s a v e quindi

da

assegnato

un .

veda

si

una

in G,

mostrare

vertice

,u,

v,

v è utopico. v,

delle

c.

il

I

vertice zw

semplici

k

gd v,J

s al y

contraddi. ione.

-

y

predecessori

e si

Vl

G dalla

e p, sm-u

in

cammino

dei

minimo

in

cammini

Possiamo

i,

disuguaglianza

di cammino

è una

due

ad ogni

J f -i

w-v

decomposto

unico

disuguaglianza

stretta

i

cammino

il elce

implica i

gli

Un -.mm

chiamata,

k

Quindi,

G non

25.4

-a

s

che

tutti

per

chiamata quindi

1. Quindi,

solo

può

si ha

t,vi ,

/

con

allora,

della

contraddicendo dalla

...,

effettuato

w

,

su c prima

raggiungibili

da i

cu v,

minimo

peso

i

è stato

di REi x i ,, i

di

per

è cambiato

d v,

Poiché

...,

dell arco

è raggiungibile

negativo

di d v,

chiamata

un

1,2,

peri

i vertici

di cammino

v,

se d v,

d v,

tutti

esso

le stime

rc i,

aggiornamento inoltre.

v,,

Figura

ora

Consideriamo

contenga

che

che

nv

iI rilassamento

in c hanno

i vertici

abbiamo

stato

sia

convincersi

p g giqile tti

v,. Allora

che

presumere

f g

v,

dove

v,

...,

di cammini minimo

l , abbiamo che

i v,,

sia i

minimi

per

da

in

s a,.

d v, 8 s,

s, i,

l s,

tutti G.

Sia

v . sia v, .

i

25.2 La

terza

da

i3 s,

limite e quindi

linea

segue

v,

8 s,

inferiore

dalla s

0. Quindi, iI peso

per

p è un

telescopica

somma

s a v

da

linea,

che

cammino

qualunque

minimo

seconda

mostrato

abbiamo

di un

cammino

nella

mentre

wp da

v, .

á s,

s a v,,

ne

linea

la quarta Poiché che

segue

v,

8 s, wp

è un

B s,

di Dijkstra

Algoritmo di

L algoritmo

,

orientato

grafo

v,,

In questo

Esercizi

8

da

due

alberi

di cammini

minimi

il grafo

per

orientato

25.2,

di figura

dalla

mostrati.

quelli

v.

s,

risolve G

si mantiene

chiave

i rispettivi

una

tutti

a priorità

d

la realizzazione

che

assume

e

vale

dv di

stima

che

realizzazione

V-S,

in

G sia

il grafo

di cammino S,

minima

la

un

negativi.

E.

peso

da u. Nella i vertici

tutti

contiene

Q che

coda

valori

non

v c

s con

uscenti

archi

gli

V

u e

il vertice

v

il cui

i vertici

tutti

per

su

singola

siano

u,

i vertici

contiene

cioè,

archi arco

ogni

0 per

determinato,

u in S, e rilassa

inserisce

segue,

i

sorgente

con degli

i pesi

tutti

s che

insieme

ripetunmente

seleziona

minimo.

v u,

che

un

stato

s è già

in cui

caso

quindi

mantiene

sorgente

L algoritmo

nel

Ej

minimi

di cammini

il problema V,

assumiamo

di Dijkstra

cammino

diversi

Dijkstra e pesato

paragrafo

minimo

Si diano

503

singola

sorgente

segue

L algoritmo

25.1-1

con

minimi

Cammini

come

usando con

rappresentato

liste

di adiacenza. 25.1-2

Si

dia

v

E

u,

un

v

25.1-3

Si

R

di

un

e sorgente

E vi è un

c

altro

esempio

-

albero

albero

migliori

la

cammino

che

minimi

minimi

del

siano

la

soddisfi

con

dimostrazione

minimo

G

di cammini

di cammini

e pesato

orientato

grafo

s tale

G

con

radice

lemma

25.3

s che

non

per

funzione

proprietà

radice

s che

con

E

V,

seguente

contiene

contiene

peso arco

ogni

per

l

IYIZlALIZE-Sl

2

Sc

3

g

4

while

cr, v .

i casi

gestire

cui

in

i pesi

di

I

Sia sia

G

un

ciclo

Sia

G

E

V,

e pesato

Iwtzi t.tzE-Stwct.E-SouRce G. assegna

un

VG Q c 8

e pesato

orientato

grafo

G. ed un

2/.8,

un valore

s e si a suma

Si dimostri

diverso

che

da wc,

che

do

un

tale

G contiene

zv

senza

in modo

usuale

se v c

assegnamento

V-

dei

assegnamento

archi av

G V,E

di peso con

Sia

di

da

s a i

G,

in

sorgente S.

e che

di passi

sequenza

qualunque

for

vuoto.

in G,

un ciclo una

da

prodotto

di

e si supponga

Si dimostri

questa

w

peso

che

che

G sia

sequenza

nell insierne

inserito

di

V

t

rilassano

t

il cammino

arco

G

E

V,

vertice

un

sorgente

SOURCE G,

s.

grafo e

si

orientuto

Si dimostri B s.

prnduconod i

e pesato

i

che

che

vi è una

per

u ni

v e

senza

G

sia

sequenza

cicli

di

di

negativo.

peso con 1 passi

g

Sia

s e V il

Iwizwt.tzv-Si c .c-

in

Sia

G

un

rafo

arbitrario

orientato

modifica

infinita una

di ititaw 6i

rilassamenti cammino

de li

svhile

delle

linee

Quindi,

la stirr,a

dv

ed

il predecessore

per viene

ottimali.

m 1 come

Dijhstra

calcola

effettivamente u viene

vertice

un

quando

usa

esso

una

più

in V-S

ma

inserito

le strategie

ag volte. più

o

vicina

greedy

letto non

capitolo

quel

S si ha

d ir

8 s.

per sempre

prvducono

algoritmo nel

consiste

chiave

il puntn

sono

greedy

Cd il siroeorollario.

teorenla

minimi

nell insien e

aver

è necessario

non

il frequente

i cammini

golosa

greedy

In generale.

mostrano

in S

inserito

Le strategie

con

pesato

un

ciclo

di

pesn

nei iti

Se

si

25.

irchi

di

G

tale

che

ogni

rilaisamc ito

vertice

non

peso t

lO

1 algoritmo

ese ue

e

V.

negati

dell

Cnrre1te-,a di vu

in

Dijl-stra e sor

ente

di

algoritmo un s.

gnfo ullora

al

Dijkvtra e

pes ito

termine

vale

cl w

G 6.,

V. n

B per

di che

mostrare

n.

orientato

se

vertice

ta s ente

leggero

7-8

z j

nessun

Q ed

esat

ripetuto

t ha

le linee

.

strategia

17,

Capitolo

che

da

estratto

viene

4-8

il vertice

sempre

sceglie

V -5.

u. Si osservi

e viene

Il vertice

V.

e

minimo.

vertice

di Dijkstra.

l al oritmo

l unzione sequenza

nel

dettaglio

risultati

che

di rilassamento

che

in 5, diremo

inserire

Tenre ,a

25.1-

ogni

s.

u

V-S

in

passando

3 e che

V. Ogni

V-8 da Q

si ha

il ciclo,

da

invariante

da

inizializzato

quindi, di Dijkstra

l algoritmo

rilassamento.

suppong i

u, aggiornando

il ciclo

estratto

l insieme

s con

i vertici

tutti

tra

migliorato

linea

in V-S

u viene

l esegue

linea

La

l insieme

i vertici

eseguito

vi c Ufl

presentate Sia

volta

una

da

tutti

25.5.

figura

2 inizializza

un vertice

viene

che minima

essere

la

dopo

Q

volta

esce

v pub

per

in

inserito

che

Q con 4-S,

linee

nella

mostrato la linea

a priorità

delle

prima

come

d e tt,

di cammino v

u,

minimo

esattamente

la

stima

ogni

Poiché mantenuta

5

la minima

viene

inizializzato i c

while

il ciclo

1V

archi

gli

la coda

3 inizializza

linea si esegue

che

Adj u l.

valori

dei

Per

Resenzacicli

vertice

ogt i

per viene

proprietà

E

rilassa

di Dijkstra

La

volta

v e

RELAX 11,

inizializzazione

comprendere 25.1-7

ci vertice

ogni do

Ié normale

i su di

Si diaunesempio

produca

funzione

V il vertice

s s

Ir izlALIZE-Sii CLE-SOURCE G,

cammino

7

quindi

ungrafoorientatoepesatocon

negativo.

S m5u

L algoritmo

V

s c

Sia

è il predecessore

che essere

può

negativo.

wcaltrimenti.

s,

valori

non

di peso

di rilassamento .

passi

Ex a c -Mi Q

u-

6

sequen-

se una

allora

G

8

e si definisca

grafo

sorgente

s.

a zs

camminominimodasav,

tale

vertice

con

negativo.

radice

il lemma

Sia

con

di rilassamento

il vertice

di un

orientato

grafo

di peso

unqualche

25.1-6

un

inizializzato

za di passi

25.1-5

E

V,

s

YGLE-SOURCE G.

8

5 25.1-4

s

un

.

o

is,

DuwvRw G, i , ed

u.

con ogni

504

Capitolo

25

l 10 6

S

e

2

2

X

y

a

s

y

b

c

ll

Figura

lr

1

ih s

10

25.6

u tenga

v

La

- ,x

S

x

Figura

25

esecu-ione

5

sono

coda

.sono

coine valori

è grigie ,

4-8.

Il

i ertice dopo

vertice

V

S

in

grigio

La

ertici

zfvJ

ogni

u nella

stra.

dei

allora Q

ione

situa

Dijl

all interno

a priorità

linee la

I -f

è scelto

f

pane

v

u,

delle

5.

di

i tdicare

arnr

nella

while

linea fase

5 s,

y

8 s,

u

La

a

ha

è il vertice

archi

u, l vertici

di

s a del

d ed

Le

Ma

i venici

inserito

Si supponga,

da

s

ad

Naturalmente,

u

ehile

valere

vertice

25.6,

s c

V-

in S, cioè S, e siam

P s -,.r

u.-

P

Mostriamo è scelto

in quel

c

-

il che

momento

un

che

d e srmostrari

un in

e quindi.

l

r è.

d ll lemma

toto

in

da

cammino

da

u

d fv

nella

u

Di

viene

un

inserito

u

p da

8 s,

u.

Il cammino

il verrice

che

prima essere

u può

è in S e x c

non

che

x o y

subito

decomposto

immediatamente

S precede

rientrare

eventualmente

p,può

5 s,

essere

p puo

inserito e

in S. Ma iie che

esso

che

l arco

rl fy

è stato

v,y 6 s.

y

á

rilassato w viene

qumdo

u.

contraddice

il che in cui

e. per

il lemma

un

la

scelta

iniziale

vertice

qualunque

25.5,

di Dijkstra

w e sorgente con

Di nostra ione.

u c

deve

uguaglianza

questa

di

u. Possiamo

V viene

quindi in S, deve

inserito

a valere

continuare

nel

su un grafo

s, allora

al ternline

orientato

e pesato

il sattografo

V, E

G

dei

con G,

predecessori

funzione è un

peso

albero

Immediata

il Teorema

per

2S.10

e per

il lemnu

25.9.

Analisi

è veloce con

l algoritmo V

Q

priorità

di Dijhstra S come

lineare.

è O V- .

Opali

Per

in cui

il caso

dapprima

Si consideri

un u,, ay

realizzazione,

questa

si mantenga ogni

u

. ed i deve

totale

richiesto

da

EXTR xcw-Mi

vertice

i E

V i iene

inserito

nell

insieme

prop i i infierito algoritmo

ora

ottenere

la

contruddizionc

che

dimostn

il

teorema.

In itti.

poiché

y comp

for.

iri

O

è OV in

j

particolarec ttelli

sul

camnlinop .

thbi

lilla

CllC

6 S.

1

6 s.

n

la

operazione

in 5. Pos iamo

di

s.

radice

che

come

in 5,

delle

un

r t..ile

poiché.i inserito

5, si ha

linea in effetti

sono

25.2

n

u

decomposto

Infatti, vietare

8 s,

a

minimi

Quanto

in S.

inserito quando

nella

scelto

in

du.

momento

l algoritmo

negativa

coda

u

stato

in quel

25.6. ir viene

quindi

u era

disuguaglianze

le due

25.11

cammini

p colle,.a

lungo

nel

8 s,

Corollnrio

ri .

s.

vi è almeno

Il cammino

du

Se si esegue

du

in V-5quando

seguito.

non

prima

dy.

u

d fii che

cantmino

in s, ed

vertice

l

esso

6

di

6 s.

conseguenza

all inizio

subito

siccome

s u.

seguito.

d ir

s w 8

in

quando

situazinne

y il pri,no

il cammino

nel

esaminando

che

w 5 s,

al momento

c á s,

s a u, altrimenti

sia

u

momento

che

minimo

S, cioè

ed

anche

du

j w b s.

257

du

quel

vertice

cammino

quando cui

mantenuta

in S,

che

di y. Allora,

per

quando

V

viene

sulla

inserito

l assunzione

in figura

d s,

vertice

5 s,.s

un

esistere

8 s,

il quale

per

è il primo

esistere

du

l attenzione

u w s, abbiamo

poiché

mostrato dy

vertice

contraddizione

vertice

V, si ha

uguaglianza

u viene

quale

5 il predecessore

il primo

d i

il primo

violerebbe

deve

s, ad

ir, come

ora

come che

0 deve

u e

questa

s, perché.s

s

da s a u, allora

un

nel

w

B s.

vertice

Focalizzeremo

la

in S. Inoltre.

il corollario

u sia

S.

deriveremo

ds

inserito

avere

cl1e

ciclo

deve vaIe

cammino

assurdo,

del

ogni

per

S, e che

nell insieme

dell iterazione

per

che,

nell insieme

per

inserito

venga

venice

2á.5

u e y erano

i vertici che

fi ali.

Mostreremo

u viene

momento

cammino s

ruoto

s al

u in

grigio

valere Dimostrazione.

minimo

avere

S è non

sorgente

uguaglianze

verrice

co ne

entrambi

poiché

il 1emma

per

necessariamente

irera ioide

l ertice

Il

stime camgro

me t e

è scelto

I valori

del

prima

inabile.

itera-ione.

prossima

5.

della

ciclo

isrra.

i i a1ori

insieme

prinm

mininto

successi

5 della

nell

sono se biro

il valore

a sin

piir

implicano

grigi

neri

sin a -ione

itera -copre

linea

sorgente e gli

concludere

viene

si può

L insieine dalla

25.2

d ahi J

dell sono

sei

ciclo

ma

p

srel

il primo,.errice

distinti,

IO

25.

mininto

S.

algorirmo

Urr mirrimo

predecessore.

nella

Teorema

caimnino

0

cammino

bia tchi.

sono

del

Un

X

y

d

cui

ione

esso.

u, do,.e è

x e

dy r

ogni

--,

y.

1 ertici

nell insieme

6

s

del

in

10 i.

di

dimostra

iitseritr

e quinùi

J

llllllù E

de l le 0

u lli richiede V- .

leiiipo

I . Quindi.

il tempo

tc t le

di esecuzione

dell

S

50á

Capitolo

25 vrinimi

Cammini

Se però

il grafo

binario

è sparso,

l algoritmo

operazione

EXTRACT-MIA

operazioni.

Il tempo

d uj

w u,

che

v

richiede

in

sono

si può

uno

solo

un

molte

di ridurre

01. che

E

21 .

ed ognuna

delle E

Storicamente,

di ogni

E

diventa

lo sviluppo

degli

e che, DEc

la coda

heap

Resse-KEv

un

affidabile

Sia

G

25.

2-5

I,

V , senza

i

come

canale

e si assuma

messaggio efficiente

un algoritmo

un

di che

la probabilità che

trovare

per

queste

il cammino

minimi

un

da

funzione

con

e pesato

negativo.

non

Si

vertice

dato

w

peso

E m di

l algaritmo

modifichi

s in tempo

sorgente

1, ....

0,

Dijkstra

per E.

O WV

è stato

metodo

di calcolo

i u,

E è associato

e di

dati.

orientato

grafo

i cammini

un

v

u,

l affidabilità

v. Si interpreti

Si dia

arco

ad ogni

quale

rappresenta

correttamente

vertici

due

un

25.2-á

Si modifichi

l*algoritmo

proposto

capace di esecuzione

a o lg

nd un tempo

portato

u al vertice

vertice

1V intero

con

calcolare

vi possono

asintoticamente

Sriggerimento

in V

essere

che

abbia

di cammino

stime

quante

un

5 nd

in modo

25.2-5

l Esercizio

per

1g l .

E

O V

aumentare distinte

avrebbe

E

V,

W

richiede

tra

nel

che

1,

0.

indipendenti.

siano

più

c

u a v trasmetta

da

V. E

G

i

rjn, dal

se tutti

delle

orientato

grafo reale

probabilità

potenzialmente

ogni

quindi,

valore

il canale

.

a priorità

di Fibonacci

vi sono

dato

un

queste

di ognuna

a DECREASE KEv

modificato

a ExtzAcl-Mn

Ig V

OE

ammortizzato

chiamate

n u. di

E

Sia

comunicazione

di

massimo

realizzando

Il costo

di Dijkstra

operazione

di ExvRwcT-M x,

che

25.2-4

ni

di queste

v, d u al

507

singola

heap O

L assegnamento

sono

1gV

1g V

OV

il Capitolo

che

ammortizzato

ammortizzato

e vi

uno

V

vi sono

prima,

è OV.

Q con modificato.

DEcRewse-Mv Q,

è O V

nell algoritmo

a DecRewse-Kzv

stra

Dijl

sorgene

tempo minimo

istante

qualunque

efficiente.

più

L algoritmo

di Dijkstra

23.2

che

Esso

è simile

vertici di

V

binario

7.5-4 ,

di esecuzione

veda

è O lg

ammortizzato

il tempo

il tempo

di esecuzione sorgente.

si

osservazione

chiamate

più

totale

a priorità

di come

chiamata

l Esercizio

un tempo

ExvR cr-Mn

dall

dalla

veda

O lgV

lo heap

dalla

di Fibonacci

tempo

motivato

ottenere

heap

operazioni

ag

il tempo

costruire

la coda

algoritmo

tempo

effettuato si

realizzare

talvolta

allora per

viene

O lgV

raggiungibili

In effetti, Q con

richiede

RELAX

Quindi

i vertici

conveniente

è chiamato

necessario

tempo

operazioni.

essere

puo

risultante

con

con

neri

alla

visita visita

minimo, BFS

gli

algoritmi

ad

un

usano

dato

dei

analogie

in ampiezza.

cosi

nel

i vertici

neri

insieme

coda

rimanenti

in

per

inseriscono

vertici

che

una

che

non

di

Dijkstra,

nell

appartengono

hanno

al

di Prim che

e l albero

insieme

25.3

che

e modificano

termine

non

di Bellman-Ford

L algoritmo le

caso

loro

più G

pesato

entrambi

restituisce

un

costruito

i loro

all insieme.

dalla

se invece

25.2-2

l algoritmo s e poi

i valori

d e ri ed

Si dia quale ne

del

un

di Dijkstra

il vertice

y come

i vertici

semplice

25.10

puo

orientato

grafo un

prnduce

non

Nello S dopo

di un

di Dijkstra

Teorema

orientato

grafo

nel insieme

esempio

l algoritnao

sul

sorgente.

essere

risultato applicata

di figura

stile ogni

della

25.2 figura

iterazione

con

del

archi

Perché

iono

zmmeisi

primu

il

l algoritmo

4

svhile

Questo è

di

Q cambio

cansbiare

la

li eu

4

dell algoritmo

di

Dijkstra

ne

stivo

con

la

ss

niente

s ad

eseguire

il ciclo

V

1 volte

invece

di

l/.

L

un

ciclo che

indica

l algoritmo l algoritmo

allora

v e

vertice

ogni

dalla

l algoritmo

anche

una

progressivamente

restituisce

Bellman-Ford

di

peso

non

e

negativo alcuna

esiste

i cuntmini

produce

nel

ed

minimi

vkez

di stima

V fino

a raggiungere

se e brolo

e il grato

d vj

del

peso

il reale non

usa

Bellmun-Ford

contiene

la

peso

èli cammino di peso

un ciclo

del

tecnica

di un cammino

minimo minimo negativo

sorgente.

ic, s

per

il

i

1wzi.iuzc-Striai.e-Souacc G.

z

ror

i

s

I to dn

3

vG

for

ogni

I vertice

w.

do

Rviwx u.

i.

algoritmo

i

c

C Ci

pei i 4 ft r

6

o

ni arco dnif

7

I fa

esiste,

di

l algoritmo no

oppure

orientato

grafo

la dimostrazioarchi

con

non

Dijkstra.

di

Bru.wn,i-Foro G,

t

supponga

ciclo

tale

diminuendo

sorgente

5 Si

esiste

Ill CQSO BtTermativo.

singola

un

pesi.

raggiungibile

ivhile.

negativo

25.2-3

peso e

indica

R,

E

sorgente

si mostrino

ciclo

di peso

scolaretto. se

usando 25.5.

che

w

con Dato

negativi.

essere

possono

s e funzione

sorgente

un

archi

minimi

di cammini

il problema

degli

sorgente.

i . L algoritmo

8 s.

i pesi

booleano

dalla

soluzione

adeguatamente

con

valnre

raggiungibile

Esercizi

Si esegua

E

V.

rilassamento,

vertice

in cui

generale

Come

25.2-1

risolve

peso

appartenca

viene

di Bellman-Ford

dei

il loro

perché

Algoritmo

24.2 .

all insieme

leggero

più

il paragrafo

paragrafo

al termine

all algoritmo

il vertice

vertice

questo

in 5 hanno

in ampiezza

è simile

veda

si minimi

S corrisponde

i vertici

visita

trovare

in ampiezza

di copertura

l insieme

come

S nell algoritmo

l insieme

di Prim ,

senso

di Dijkstra

a priorità

la visita

con

gli alberi

proprio

L algoritmo una

sia

calcolare

per

in ampiezza

corrette.

nell algoritmo i pesi

di Prim

in una

cammino

distanze

ha delle

l algoritmo

return

EG u.

du th n

8

c

ii, li

w

return

i

r .st-

mut .

prop ,

corretto L,.l

f

lll.l

5.7

I11OSll-,.l

I

CSCCLI/ltlllt.

C1Cll

lli,

Ol-1llllO

ll

BCIII11.lli-l Clllf

iU

Ull, I ,ltO

cOI1

5

u

5

v

IC

M

5

Per

6

la base

il lemma 7

Z

7

Per

7

b

u

5

c

G

V,

per

ogni

vertice

eseguito

E

su

un

d

G,

mostrati ogni

x.

z,

La

a

dell algorimro

dei

rilassa

passata

ogni

esecu ione

all inrenio

u,

,

Un

vertici

Bellman-Ford,

in

in

situa-ione

archi

ordine

subito

successiva

passata

e gli

archi

gli

sugli

termina

della

l i alori

La

indicano u,

prima

d

restintisce

i valori v,

ir,

x,

u,

e

parte

-.

è il fenice tc. Iir

sugli

passata

e rc ir ella

sorgente

v,

y,

n,

arclri. sono

specifico

questo

vj,

x,

r,

La

b-e i ralori

11,

yj.

funzione

1

orirmo

di

del

delle

una

grafo

quattro

di un ciclo come

di peso

funziona

ed

Per che

se

non

minimo

invece

G

per

contiene

lo stato

1 passate,

dell

le linee

baoleano

algoritmo

5-S

delle

sono

delle linee

cicli

l intuizione

5-7

O VE ,

I passnte

AV richiede

appropriato

ognuna

vedremo

tra

dalla

si basa

archi

nelle

linee

in linea

á

2-4

richiede

ogni

tempo

l algoritmo

cominciamn

calcola

sorgente.

La

i pesi

corretti

dimostrazione

di

l algoritnsu.

col

mostrare

di

cainmino

restituisce

v

25.6

ciò se

8 s,

v

8 s,

u

d uJ

e quindi

a quella

del

completa

se

che

Si entesefunzione G noh

FORD,

contiene

w

peso

25.12

8 s,

E m

R.

Allora viene

quando

ed

è lasciata

al lettore

ciclo

di

albero

G

di peso

i vertici di

con

V.

negativo

i c

cammini

negativo

peso

Bel man-Ford

e pesato

cicli

tutti

per

è un

che

nessuno

il grafo

prima

cosa

è garantito

dal

i non

sorgente

s e

raggiungibili

V si

ha

minimi

d J

con

raggiungibile

dei

G nnn

che Ru

25.12

da

cicli

al se

da s,

5

s come

s,

di

l algorit

il lemma

per

25.9

cammini tao

di peso

termine,

allora

i

s,

e il

radice.

Se

l algoritmo

raggiungibili

i vertici

v è raggiungibile ed

il fatto

minimi.

termina.

negativo tutti

per

il vertice

da s. Il lemma albero

quando

e

che,

lemma

è un

G

contenga

mostriamo

è raggiungibile

w u, ui u,

contenga

vale

cl v

cicli B s,

di peso i

per

tte alivc

tutti

iud

r g

i vertici

ra

ibili

pesoii

da

iungibili

s. Allora, da

al termine

di

Dimostra ione.

Sia

v u1

vertice

raggil1llgibile

das,

e sia

p

1p

i.

per

che

di

Resta ogni

,

v c

da i

V vale

da

s, e da

S s,

v

per

dimostrare

che

e Eabbia

no

che

25.3

v,

controlli

nella

linea

6 può

fare

in n,odo

che

Bricco., -Fo

restituisc

lL l r

un g

cammino

,

assuma.

Ut

il

cl

ciclo

per

dimostrare

il

IC1lllll

I.

G contenga

un or

dalla

ci te

ciclo

di peso

ne . tivc

i

.

i,.....

i

.

con

s. A1lora

.

c

ii

che i,.

l vleoritn .

di per

i

l.

.v,

l .

c tticne I,

d ,J

l

assurdo. cl i

I sufficiente

il grafo

rv giun ibile

0

per

minimo Allnra

è

che

c sia

25.3

Si l

ora

e che

I

BELLMAN-

s.

l

supponga

i

EmResiassuma

g

questo

poiché

dv

2á.E2

SiaG VEjungrafoorientatoepesatocon ,or che

per

la dimostrazione.

FALSE. Lemma

0

passata

Bact. wr -FoRo,

lemma

di

orientato

grafo

tRL E, G,

un

v e

lemnu

questo

1 -esima si conclude

s e funzione

se e solo

dell algorit tro

G non

predecessori

s. Come

s,

dv

dalla

Se

OE.

eli Belln an-Ford,

il che

sorgente

s a

è simile

R.

V garantiscono BEvLnww-FoRo restituisce

1

l i 25.7

.

su di un

Si supponga

sorgente

dv

poco

dopo lemma

successivo,

da

Corrette---a

E

contiene

Dimostrazione.

l esistenz

l inizializzazione

poiché

sugli

tempo

negativo,

peso

raggiungibili

su cui

tempo

del l algoritmo

di

i vertici

dopo

controllano

,

s,

v l.sz.

corollario

ognuna

for

tutti

VA

il valore

richiede

la correttezza

vi

mostrano

le

e restituiscono

Bellman-Ford

dimostrare

25.7 b - e Dopo

contrpllo .

8V,

il ciclo

figure archi.

negativo

di

tempo

O EI,

Le

sugli

questo

L algoritmo richiede

volta.

passate

w

dei

restituisce arco

8

25.3-2 .

l algoritmo

sottografo

TRLE.

dv

seguito.

v,

dal

con

cammino

dimostrazione

25.14

peso

allora

J,

dopo

nel

8 s.

istante

dv

Ba.Lsww-FoRo

d srwn esernpin,

situa ione alg L

finali.

Si esegua

I valori

con

Esercizio

Teorema

BelInian-Ford

in grigio lessicografico

prona

archi.

esempio,

questo

di

l inizializzazione

passata,

e pesato

V vi è un

La

esercizio

e

25.7

in orni

orientato

grafo v e

Dintostrazione.

Figura

d v,

nell i-esima ed

passata

che

dopo

mantenuta

25.13

Sia

per

rilassato

che

viene

si assuma

viene

l i-esima

Corollario

v

induttivo, v

v,

dopo

abbiamo

uguaglianza

questa

il passo

l arco v,

dell induzione,

25.5

g

dfv,

g

n t,

Bellnun-Ford .....

/,.

rLltituiliCd Son undii

qucstc

l kL I. .

diiu

u

i lii i re

lun

o

minimi

Cammini

5JO

Capitolo

Come

nella

in ognuna

dimostrazione delle

k

due

del

lemma

25.8,

sommatorie,

prime

Inoltre,

ogni

vertice

di c compare

esattamente

25.4

volta

una

minimi

Rilassando .

gd u,

per

Cammini

il corollario

25.13,

dv

è finito

i

per

1, 2,

...,

/-, quindi

,v ,

pm v

con

archi

gli

ordinamento

di

singola

sorgente

perché,

anche

Bellman-Ford dalla

disuguaglianza

restituisce

sorgente,

Si

25.3 . se il grafo

TRUE

G non

dunque

può

contiene

concludere

che

di peso

negativo

cicli

l algoritmo

di

inizia

raggiungibili

da

altrimenti.

FALSE

seguendo

Si esegua

l algoritmo

il vertice

y come e si

passata dell arco

Si dimostri

di BeIlman-Ford sorgente.

mostrino v

y.

Si

sul

rilassino

i valori

di

nuovo

orientato

gnfo archi

gli

d e z dopo

a 4 e si esegua

il corollario

un

della

in ordine

ogni

passata.

l algoritmo

figura

25.7,

usando

lessicografico si cambi

Quindi, come

con

ad

o

ni

tutte

per

cammino

IXIZIALIZE-SINGLE-SOURCE G.

3

for

da

al numero

che

E

V,

u, v c

si intende

archi .

senza

cicli

V

i minimi

tra

cammino

Si suggerisca

consenta

gli

G

di vertici

u a v qui

degli

di Bellman-Ford

numeri rispetto

semplice in in

modifica

Si modifichi tutti

dalla

l algoritmo vertici

quei

sorgente

di Bel man-Ford v per

i quali

vi sia

in modo un

tale

che

esempio

negativo

in il

sia

da

Sia

algoritmo 6* i

25.3-6

un

min,,

negativo. e si dimostri

O VE

in tempo

è una

al peso

e no t

esaminati

all algoritmo

cicli

23.4

u al vertice

sola

sui

passata

viene

elaborato,

in un

dag

negativo.

di peso

il paragrafo

vertice

una

definiti

una

imporre

per

v allora

u precede

vertici

del

tutti

archi

gli

grafo uscenti

con

funzione

peso

postn

su di un

topologicà

secondo

vertice

ogni

l ordinamento

topologico

Adj ii

e

di

con

E.

ciclo

vertice

si usa

è perciò

8V

23.4.

paragrafo for

delle

01

è lineare

che

come

3-5, gli

a differenza

un tempo

E.

linee

l e dal

linea

uscenti

nella

arco.

vi

di Dijkstra, vengono

vertice

dal

di Dijkstra,

non

Il tempo

di esecuzione

di una

rappresentazione

dimensione

delle essere

può

nell algoritmo

archi

for

ciclo

topologico

dell algoritmo ogni

per

5.8.

a figura

nell dalla

l ordinamento

iterazione

Tuttavia,

solo

è mostrato è determinata

in ogni

volta.

una

quindi

liste

algoritmo nel

Nel

algoritmo

questo

mostrato

o ani

esattamente

a priorità,

cammini

, w

di questo

per

Il seguente

a

cammino

RELAX u,

OV

iterazione

coda

che

un grafo un

e pesato trovare,

per

per

ogni

vertice

i c

ii

E -

R.

Si dia

un

Se

V. il valore

esiste tátale del

di adiacenza. teorema

mostra

che

D a-SwaRtest-Patos

la procedura

correttamente

calcola

i

minimi.

ed

orientato

algoritmo

la correttezza

e pesato

efficiente dell

algoritmo

G per

V,

elencare

Q

abbia i vertici

almeno di uno

un ciclodi di questi

un

tertnine

v .

8 ic,

Si dia

orientato

grafo

in tempo

Si supponga

quando

un vntice

ben

veda

si dal

quindi

sempre esistere

un

da

a v.

V, E

G

il dag

secondo

minimi

S

u preso

Come

Teorema 25.3-5

sono possono

esegue

G in ordine

dell esecuzione

3 a 5.

eseguito

su un

venga

di

di esecuzione

dell algoritnso

dv

di peso

for dO

di archi

1 passate.

ciclo

vertice

ogni

5

negativo,

peso

minimo

una

di terminare

di

i vertici

do

grafo

per

non

E

V,

i cammini

il peon

sorgente.

Un

e pesato

le coppie

minimo

rispetto

Si

G

pesato

v, s

2

4

25.13.

orientato

grafo

massimo

25.3-4

I

rilassati.

si pongano

linee Dato

minimi

negativo,

topologico

1

Il tempo 25.3-3

51

aciclici

orientati

calcolare

se vi è un cammino

topologico.

vengono

dag

possono

topologicamente

vertici

sui

si

I cammini

E. di peso

ordinando

lineare

aciclico

vertici,

8V

DAG-SHORTEST PATHS G,

25.3-2

singo1a

E

Esercizi

25.3-1

in grafi

singola

orientato

suoi

archi

l ordinamento

esso

mafo

in tempo se esistono

un ordinamento

la

sorgente

dei

v nell ordinamento contraddice

un

topologico

L algoritmo

che

sorgente

quindi

k

dv

0

con

25

peso

Di sm tra

cicli

l algoritmo

*r fo

25.15 orientato

della

e pesato

il sottografo

dei

ione.

V,

Se

E

G

è un

non

è

ra

ics, vele alhero

he

dimostri tmo v

sorgente.s

ha vertice

st-Pu

predecessori

Innanzitirtto,

termina.

G

Dwc -Smonta

procedura

di cammini

v,

5 s,

di da.c.

giungihiie

8 s,

di

e nnn

ha cicli,

i

ogni

per

allora.

vertice

al

i e

V

mi imi.

per

allora

li

ordine

topolègico,

tutti 8 s,

i vertici v

i c

V.

quando

corollario

il

per

proposto. v

I

i

s e

0.

i,

I....,

i.

/-.

Poiché

Infine.

i vertici

per

vcngonu

il

lemi u

el tborati

25. .

Ci

in

C

Ltll

ltbcro

di

c 1mmini

gli

minitni.

archi

in

p

vengono

Il

minimi

Cammini

con

sorgenre

singokr

513

Esercizi

25.4-1

Si

esegua

vertice a

DAc-SHORTEST-P vHs r come

Si cambi 3 for

la linea

i primi

Mostrare

25.4-3 c

La

dei

che

Si dia

25.4-4

in un

un

25.5

Vincoli Nel

g

1inee

del 3-5.

In

for

uiti

Se

l arco

ed

i pesi

eseguito

prima che

delle

linee

3-5.

1 mrico

degli

nunvo

nel

del

processo

devono

cammino

massimo

sequenza

ordinata necessario cambiando eseglteodo

di per

il peso tutti ai pesi

un

di

pro

con

ram

ei slualion

richiesti

tempo

il

Si può

mchi

ed

sostituendo nelIa

ai1d

revieiv

technic uc .

limite

c immino

D,ic-SHoRt con

procedura

un

Ret. x.

nella

con

lineare,

l algoritmo

non

agli

il cammino

lineare.

di cammini

di

ottimizzare

In questo

essere

puo

problema di

trovi

in tempo

totale

si vuole

lineari. che

ai vertici, che

di

essere

in un

grafo

la praticabilità.

ridotto

alla

cammini

Bellman-Fard

che

ricerca

minimi risolve

funzione

una

lineare

considereremo

paragrafo

con quindi

un caso

di cammini sorgente

minimi

da

singola

anche

può

iI problema

di

lineare.

Programmazione

u,

deve

una

sequenza

eseguire

inferiore

vincoli di

è un una

al tempo

critico Esl-P

nos.

linea

2 di I wll,.st.l l -

oppure

dati

di

pratica

di prograinmaziosre

problema vettore

n elementi

da

b di lunghezza che

lineare

m ed un

massimizzi

la finzione

vettore

viene

data

c di lunghezza obietti n

g, ,

una

matrice

n. Si vuole c,x,

soggetta

A

di

trovare agli

in

Ar b.

problemi motivo

L algoritmo nella

del

nr x n, un

Molti quesito

lineare

generale

vettore.v

un

essere

critico

caso

dimensione

essere processi.

i

per

Nel

cammini

devono

purticolari

necessario è un

risolto

programmazione

for,ielle

lineare Il risultante

u deve

e se ne commenti

proposto

naturale. i vincoli

minimi

di disuguaglianze

sorgente.

archi

associati

pesati

il numero

l algoritmo

è molto

il processo

in modo vertici

con

non e gli

precedente

dei che

ca ninino

Un

di programmazione

singola

essere

finali.

rappresenta

massimo

eseguendo

ciclr

ione

il processo

dag

trovare

del

speciale una

d seme,,nosrrati

i valori

eseguire

ordine.

I verti i

insieme

che allora

sarebbero

contare

per

Si analizzi

di programmazinne

ad un

indicherebbe

aciclico

e cammini

generale

so getta

i processi

D c-SHon rsl-Pwvs

efficiente

aciclico.

di differenza

problema

v. I pesi

orientato

grafo

precedentemente

itera all sono

processi per

critico

1 vafori

determinaziore

allora

in questo

cammino

i processi. degli

nel1a

particolare al

di un

DAG-SHORTcsT-Paz s. e

parte

ne esce.

cammino in

corrispondente

eseguire

il segno

Sir ct.e-SouecE

i acronimo

dag,

Un

eseguiti

x

g

aciclico.

itera ione

rispetto

rappresentano

i tempi v,

ogni

nero

applicazione

i e l arco

processi

di nella

archi

orientato

grafo

è s.

dopo

colorato

Gli

un

vertice.sorgente

mostrati

rappresentano

x.

Il

in

situa-ione

vertice

PERT- .

v,

essere nel

La

1 valori

vertice

minimi

destra.

un interessante

archi

entra

a

b-g

u nell algvritsno.

trova

i camminati

per

sinislra

di diagranuni

u,

processi

- PERT

algoritmo da

itera. ione, come

nell analisi

ese

tot le

dell

algoritmo

Questo critici

ciclo

ogni

usato

è quelln

esecu -ione topologicamente

itern ione

usando

topologico

data

v

u,

la procedura

algoritmo

orientato

oriehrati

25.8,

in

rappresentassero

l arco

processo

Si modifichi

massimo

e

del

PERT

i vertici

cioè

prima

archi.

so,u

figura

corretta.

rimane

diagrammi

naturale

più

in ordine

presi

la procedura

formulazione

eseguito

L

della

Dwc-SvoRvasv-P vas

procedura

I vertici

V

che

Sarebbe

d

3 della

sequenzializzazione,

25.8

orientato

grafo

b 25.4-2

Figura

sul

sorgente.

essere

possono molto

del

è stato

sirnplesso

tuttavia,

investito risolve

su

particolari

espressi nello

nell ambito itiidio

pro ransmi input.

della

lineari il metodo

per

ceneri li del

zinne

programm

di vlgoritllli

lineare

la progransmuzione molto

simplesso

rapidamente. puo

richiedere

e per lineare. almeno tempo

Capitolo

25 minimi

Cammini

esponenziale.

I programmi dell ellissoide,

l algoritmo Karmarkar

che

algoritmo

polinomiale

in questo

lineare

di programmazione zione

lineare

25.5-4

una

lineare.

il problema non

Altri

determinare

che

non

esiste

alcuna

con

alla

minimo

a causa

diversi

l,

X

5,

Xg

Xi

X4

Xg

4,

-l,

che

esempio,

speciali

come è un come

coppia

vi è un

Xg

Una

soluzione

ma

.v che

Esercizio

si vuole

solo

Ax

b,

soddisfi

Ci concentreremo

25.4

per

questo

problema

ad

correlate

ogni

s

componente

non

è una

2,

0,

5, 4,

-

è un

1

4,

l,

0.

altra

soluzione.

di 5 unità

della

si

come

di una

vi è più

In effetti

è maggiore

di x

3,

5,

disuguaglianza.

ogni

esempio

è x

problema

controllando

x e questa

obiettivo,

.

3

direttamente

speciale

programma-

di nodi

Xg

di

mostrato

caso

-3,

-Xp

Xg

un problema

casi

515

singola

sorgente

della

verificare

pub

soluzione

per

questo sono

soluzioni

due

Queste

di

componente

comspondente

coincidenza.

trovare

su uno

oppure di questi

di aminissibilità.

problemi

X

X

programmazione come

singola

una

Xi

Tuttavia,

implica

formulati

per

vettore

un

ammissibile.

soluzione

per

di

27.1-8 .

funzione

cioè

sono

sorgente essere

possono

Esercizio

ammissibile,

formulato

veloci

più

di cammino

massimo

di

problemi

vi

perché

minimi

problemi

lineare

immediatamente

algoritmi

interessati

soluzione

dei essere

puo

l algoritmo

simplesso.

ed analizzarli.

con

con

polinomiaIe

con

del

comprenderli

polinomiale

che

oppure

il metodo

strutturazione

esistono

in tempo

programmazione

per

Secondo,

il problema di flusso

di

problema

di cammini

si è espressamente

qualunque

la

dato

problema. cui

per

comprendono

ed

A volte

il

il problema

paragrafo,

un

risoIti

pratica, con

generali

di dimensione

per

nella

necessarie

capire che

sapere lineare

programmazione

lento

competitivo

algoritmi

gh

essere

possono

però

matematiche

è importante

perché

di programmazione

è

è spesso

copre

nozioni

motivi,

Primo,

generali

che pratica

non

delle

diversi

lineare.

nella

libro

Questo complessità per

lineari

Lemma

25.E6

Sia

x,,

x

r ,.x

una

costante.

qualunque

di un

soluzione d

Allora

x

ogni

ex,

l

b di vincoli

Az

sistema

8

xe

Cl

e sia

di differenza una

anch essa

C

d

X

d una

soluzione

per

As b. Sistemi

di

vincoli

di

differenza Per

Dimostrazione. In un

sistema

contiene

di

un

Ax

b sono

semplice XE

vincoli

di differen

un

1, mentre

1 ed un

insieme

di n

disuguagIianza

X,

dove

ogni

tutti

gli

vincoli

lineare

riga altri

della elementi

di chieresi -a

della

matrice

di programmaziane

sono

in n incognite,

0.

i vincoli

Quindi, in cui

vincnlo

ogni

lineare

A

dati

da

è una

forma

i, j

n e l

esempio,

I-

m.

si consideri

il problema

x

di

I sistemi

di trovare

il vettore

di 5 elementi

x

x,

che

soddisfi

vincolo

può

stabilire

evento.

Ad

esempio,

durante

la

-1

l 1

0

A

0

D

0

0

I

0

di

di e la

di

una

soddisfaAx

se,v

Quindi,

x, relativa

temporizzazione

lo

Se

scavis

calcestruzzo

b,

tra

gli

eventi

possono

allora

tempo

dopo essere

devono

al

comincia

fondamenta

al

comincia

fondamenta

-x,

che.v,

equivalentemente,

3, oppure,

-1

le

che

essere

espressi

le

esempio,

occorrere

troppo

lavori

delle per

devono

eventi occorrere

può

Ad

applicazioni.

diverse

certi

rappresentare

possono

di x,

non

evento

casa.

colata che

richiedere

certo

eventi

gli

3 giorni,

i vincoli

un

in cui

di tempo

istanti

che

in

compaiono

differenza

essere

costruzione

ragionevole

-x,.

x

D

vincoli

x possono

richiede

d

d-v

si ha x

soddisfa.

él1o

incognite

bg,

l

Ad

a.

anche

ogni

un

altro

eseguiti x,

tempo

e è

tempo.v , 3. Quindi,

come

vincoli

dell

teoria

di

differenza. l

5

4

Grafi

di

vincoli

l

0

0

0

0

-1 0

0

1

-3

1

I

-3

È vantaggioso grati.

Questo

è equivalente

problema

8 vincoli X

XE

XE

Xg

di differenza

siano

a trovare

le incognite.v.

per

i

l, 2.....5,

tali

che

è che

in

un

i sistemi

di vincoli

sistema

As

b di

dal

di differenza vincoli

di

i seguenti

soddis atti

Q, una -l,

interpretare

L idea

delle

n

disu

uaglianze

che

coins

ol onn

due

incognite.

puntn

differenza,

di vista la

matrice

x

dei m

di

5 j/

25

CttpitDIO

Ora

mostriamo

di vincoli che

il ciclo

sul

0

che

ciclo,

.Zi

X

negativo

sia

ha archi

aV Vi,

V. ,

c

contiene

un ciclo

ammissibili.

Senza

1

l

entranti .

lg

Il ciclo

1OVC

di peso

negativo.

perdita

di generalità,

VA

vertice

il

Vg

c corrisponde

allora

v non

essere

può

vincoli

ai seguenti

il sistema si supponga

di differenza.

tU V.,lli ,

-xe

.rq

ha soluzioni

non

Xg-Xp

VA

non

di peso perché

di vincoli

se il grafo

di differenza

w va-i,vc ,

X

Xp

lU Vp

V

V4

Poiché 25.9

Figura

di

ll

i

/ t,

vincoli

in

corrispr ndente

a

vertice

ogni

v

Una

sistema

di

sola-ione

vitrcoli

a mnissibile

ogni

soluzione

di

differen.-a

il

per

11

25.4 .

sistema

è x

5,

Se

3,

è un

vincoli

un

sistema

orientato

grafo

A.v

b di vincoli

e pesato

G

di differenza,

E,

V,

il corrispondente

e quindi

e quindi

si ottiene

soluzione

per

soddisfare

i membri

sinistri.

la somma

delle av e .

0

ognuna

ogni

Ma

siccome

le.i

deve

soddisfare

di

sistemi

di

che

incognita.s sinistre

parti

si ottiene

viene

è 0. La

c è un

ciclo

w c

0

qualunque

sommandole

addizionata dei

membri

di peso

negativo,

tutte

insieme.

volta

e sottratta

destri

è invece

una

somma

il che

0,

k disuguaglianze,

di queste

la disuguaglianza

soddisfare

wc

una ir c

0 e quindi

ogni

è impossibile,

IE

grafo

in cui Risoluzione

V

x deve

per

anche

si sommano

volta,

dato

soluzione deve

vatore

-

formalmente.

più di

grafo

è indicato

l.

0,

di

vincoli

di

differenza

Lp.V ,...,Vq

e

E

x,

v v, U

Sl , 50,

VO,

11 vertice

x,

bq

V, , 50,

nita.s,

inco

più

un vertice

il péso 25.9

trovando

ottenuta

essere

v

i pesi

per

una

soluzione

di cammino

arclti

b,

minimo

nel

un

-x



ogni

altro

i per

ogni

per

ogni

arco un

il peso

di ogni

di vincoli di

arco

minimo

esempio.

i pesi

1, -4

e, per

25.4 .

di differenza

corrispondente

non

vincoli,

v,.

Quindi

è possibile

se

il lemma ogni

25.16, costante soluzione

5, d

d Se

può

Un

sistema ed n

di i incoli m archi.

in tempo

O n

richiede

in effetti

1 ahi

in

con

usando

O nm ,

m vincoli

se

Nella

ammissibile

l, cl

4

di vincoli

in n incognite

25.5-5

di

una

di

2á.9,

ad

5.

-

è

i pesi

3, 0.

soluzione

invece

FALSE.

di differenza.

produce si può

chiede

minore

figura

restituisce

di Bellman-Ford

m è molto

allora

x

è anch essa

Bellman-Ford

L Esercizio

anche

il sistema.

altri

gli vincoli

di

gnfo

m c,

per

il sistema

per

l algoritmo

O ir m .

tempo

di

nel

nstituisce

soluzione

3, d, d-

l algoritmo

ammissibile

di differenza Quindi,

la

risoh ere

per i , a tutti

sorgente

negativo

peso

ammissibile

forniscnno

x d

di

vertice

dal

di Rellman-Ford

soluzione

minimo

archi

ciclo

l algoritmo

di Bellman-Ford

l algoritmo

vi sono

eventuale

una

cammino

utilizzare

Poiché

ogni

forniscono

vi è alcuna

vertici di vincoli.

grafo

di

di

per

di

che

di differenza.

uscente

di differenza

vincoli

da

ammissibile

vincolo

ci dice

grafo

cammino

allora

sistema

nel

un vertice

E contiene

invece,

di un

che

garantire

Se.r

il sistema

per

per

V contiene

incognita.v. v 1

di vincoli

poco,

vertici degli

ogni

è i v.,

v,

che

tra

dei

i ,. L insierne

il grafo

nsostra

vedremo

l insieme

v,

arco

mostra

seguente

Il teorema

arco

dell

, è 0. La figura

ga

un

di vincoli

sistema

raggiungibile

come

Quindi,

25.17

un

vertici 5n

addizionale

più

allora

difterenza,

vincolo

introdotto,

da esso.

di differenza,

i involo

un

V3 ,..., 50,

v viene

addizionale sia raggiungibile

vertice

è

I1Teorema

di mostrare

un

grafo

risolvere che

con

n

il sistema l algoritmo

/1.

25.17

Teorema

Esercizi iran sistema

peto di

vincoli.

.v è

j una

ll ora

. tiio.

ne

Se

nOn

il

vi

llora e

di

contiene

Ar

cicli

di

l

lClll

1

negativo,

peso

l

f er

.l

V,

E

il

corrispondente

grafo

allora

25.5-1 25.5

Se i

per

E.

G

ii, u,

fornisce

5.5

E

ia

b,

il iisten a. per ltl1111issibili

solllZiotli

u irione

diflr

ditTerenz

. $ ri- q ,...,8

coilc1

l.

vincol

di

utnmiisibile

soluzione

itCO

.

non

G

1 i . io

o,

qll tllli1gLlc

i

vincoli

di

il

una

lin i t,i

ll

l.

5.3.

l

COlllip llClt

G

contiene

un

ciclo

di

6

ammiiiihil . 6

i ,

lllC

Si i

,,

i

coniidi.ri

un

,

oppure.

s Ùdisf

JtlO.

Ill lli

CO

l.

l

C

troi i

una

soluzione per

il seguente

ne ativo.

peso

Sistem l.

iniezione

Si

ammissibili

i

Xi

Xi

X

.Yq

Xi

Xq

X

XC

7 .

X2

-Yg

5

I,

2,

ammissibile sistema

o

si

determini

di vincoli

che

di difterenza

non

esistono

soluzioni

I

518

Capitolo

25

10

.Zg

Xg

2,

x4-xi

.r

.z

Cg

Xq

che

supponga

ad

comsponda 3,

b,,

forma

x,

mostri

come di

di sistemi Si

soluzione

una

trovi

ammissibili

ammissibile

il seguente

per

o

sistenm

si

determini

di vincoli

che

non

esistono

di differenza.

Si

25.5-10

4,

X

Xg

Xa

Xg

xg

Xi

5,

x

xe

10, 4

X3

Può

essere

4

un

di cammino

peso

minimo

dal

nuovo

vertice

i

in un

grafo

il problema

di

cammino

minimo

una

per

coppia

come

programma

come

modificare viene

esso

quando

leggermente usato

l algoritmo

risolvere

per

in n incognite.

disuguaglianze

un

il tempo

di Bellman-Ford

sistema

di vincoli

di esecuzione

sia

in modo

di differenza

tale

nel

con

in

dove

come

b un

Ax

di

l algoritmo

5

Si

m

ix v

conveniente

un

sistema

Bellman-Ford

sistema

che di

di

sistema

min se

vincoli

su

r

di A.v

soggetta

I*algoritm

di

di

vincoli

un

grafo

risolvere

vogliano

come

mostri

Si

si

gestire adattare

può

di vincoli.

di sistemi

tipo

questo

b di vincoli

un sistemaAx

perrisolvere valori

di b sano

efficiente

di differenza essere

x devono

le incognite

e tutte

reali,

tutte,

differenza

di di

x

g ,,

soggetta

Bellman-Ford, b

di

a.1x è usato

vincoli

con

vincoli

allocJre

n

vertice

il

b e x

viene

differenza.

lavori

Si

mostri

corrispondente

a Ar

come

non

ma

di

del

di input

grafo

c

v

v,,

E

G

E.

V,

i

ed

j

v

v,,

e

E

i

Si

i,,

arbitrario

un ordine

j.

di Bellman-

dell algoritmo

passo

degli

l insieme

si partiziona

quindi,

E

si assegna

passo,

primo

in ogni

archi

degli

del

Prima

ordine.

di Belbnan-Ford

all algoritsno

Yen

il rilassamento

G

definiscano

i ,.

s , ....

E in E

archi

v

V,

E, e

E

E .

V, Si

dimostri

che

aciclico



Si

ese

Vj

questo di

tatto costruzione.

di

sul lu

grafo

di

ài realizzare

supponga

visitano

i vertici

quindi,

si visitano

da b.

ogni.s .

per

uito

nsinimizza

che

grafo

0,

topologico

ordinamento

con

topologico

ordinamento

l

v,,

v ...,

v,

e che

i cl

modo

è aciclico

G,

1 .

l esecu-

senza

incognite.

sul

quando di

I . Si spieghi per

in

eseguito

di differenza

incognite.v,,

delle

interi.

essere

devono

e alcune

reali

i alori

b di vincoli

Av

un sistema

risolvere

per

di b sono

elementi

gli

ogni

differenza

viene

quando

1Q funzione

l algoritmo

un

m

Bellman-Ford,

nsassimiZZ l

mostri

vincoli

risolvere di

v,.

addizionale

t

si puo

dell algoritmo

vincoli.

b,,

si

differenza

di

.v

x,

O nm .

con

Si mostri

tutti

seguente

E

G

a.

Sia

forma

efficiente

un algoritmo

di eseguire

ai vertici

25.5-7

vincoli

di

sistema

per

elementi

gli

Il migliorazneirto

Si supponga Ford

zione

Si

tipo

questo

Problemi

la risposta.

lineare.

25.5-á

un

della

Bellman-Ford

necessariamente

Si giustifichi

Si mostri

tutti

quando

positivo

esprima

che

5 b,,

forma-.v risolvere

per

della

variabile

sola

della

variabile

sola

di Bellman-Ford

1 aIgoritmo

ad

oltre

un algoritmo

Si dia

255-12

25-1

25.5-$

in una

in una

b

Ax

lineare

programma

interi.

-8.

di vincoli

Si

di

quando

3,

Xp

che

uguaglianza

di

Si dia

255-11 l,

xg

Xg

vincolo

un

adattare

un

vincolo

un

vincoli.

supponga

l algoritmo

-6,

x

X5

ad

5,

X

Yp

ad

oppure

di

A

matrice

di differenza.

vincolo

soluzioni

vincoli x,-xe

della

riga

ogni

un

si può

g.

Xp

Xg

Si

25.5-9

c.

ogni

nell ordine i vertici

di Bel

dell aigoritmo i, rilassando

nell ordine

i,,

contiene

cicli

gli

v,,

...,

lman-Ford di E,che

archi

i,,

rilassando

vertice

da ogni

archi

di E, che

gli

Si

seguente,

escono

escono

vertice.

Siàimostri

che

se G non

s. allora

con

questo

i vertici

vc

V.

Che

passo v,, v ...,

influenza

dopo

schema

ha questo

soli

di peso I 1$/Zl

pxs i

raggiungibili archi

sugli

di esecuzione

sul tempo

scheinn

ne pativo

vale

vertice

dal

8 s,

dv

sorgente v

per

di Be ll mm-Fr

del l slgnritmo

tutti

rd

quantità

posiarisult

lfi Incapsulat teitlo

25-2 icwtola

Utia

dimensioni y,,y ...,y, l ....X

cl-dimensionale

di

scatole un

seesisteul u

dimensioni

.i, permutazione

si

r,......r, ziu

isrcapstilu

l.2.....al

in talecltes

un

ili

icatul i

.iltra s,

i...

la relazione

un

descriva

gi

p.

che

dimostri

Si

a.

metodo

in un

incapsula

di

altra

incapsulamento

efficiente scatola

determinare

per

oppure

è transitiva. se

una

scatola

d-dimensionale

si

no.

che

ha

v u,

i

come

peso

di cammino v,

r$ u,

di avere

supponga

Si

che

tale

insieme

efficiente

algoritmo

un

un

8

dell algontmo

determinare

per

si incapsuli

di n scatole

in 8,

la sequenza I, 2....,

j

per

in termini

proposto

d-dimensionali di scatole

k

...,

B,,B ,

lunga

più

1. Si esprima

B

B,

B,

...,

B

che di esecuzione

un unith che

zppponga

con

un

Dollaro

si comprino

qglese

U.S.A.

polluri p comprare

U.S.A.

x 0.16

discrepanze

nei

di

della

più

un unità

si comprino

francesi

0.7

e che

un commerciante,

x 9.5

0.7

in

Franchi

9.5

Allora

delle

valuta

una

Si supponga

1.064

Dollari

un

cambio

Ad

che

ottenendo

si

con

partire

un

quindi

per

esempio,

con

francese

può

valute

delle

valuta.

inglesi,

Franco

valuta,

U.S.A.,

di

stèssa

SterIine

con

cambiando

tassi

una

n valute

n x n tale

che

un

della

un

Si dia

a.

c,,

algoritmo ...,

c,,

ÈzJ

R Ill,

R lo,

c ...

comprino

0.16

del

profitto

c.

Si

U.S.A.

l3

c

ed una

c compri

tabella

R i,

R di tassi

unità

j

determinare

per

R lg-

,

Si dia

un

ly

R g,

di esecuzione

algoritmo

efficiente

il tempo

analizzi

della

6.4

dimostri

di cambio

valuta

c.

no

una

oppure

sequenza

incrementale

algoritmo

pn

di ogni

ticativn

signi

una

e.

bit

qoniiclerati non

finché

i due

sempre

siano

stati

meno

tale

sequenza,

i

se ne esiste

almeno

una.

In

2,

bit

considerando

prob1ema

il peso

significativi

piit

i bit

con

orientato

esamineremo

problema singola, G

considerando V,

YCl pO

è di sviluppare

si no

raggiungibili

E

con

nd

il bit

solo

la soluzione

dell input

a questo

interi

un algoritmo dalla

un

algoritmo

passo

che, intero

è un

e non che

negativi

richieda

calcolare

i pesi

calcolata

v e sia

tempo

O E1

i cameini

degli 1V

archi.

Z5-5

è quella

Sia

8, s,

ii u,

1V . Assurgiamo

da

dato

che

i

un

f er

tutti

li archi

n,

c

E

Adescnspiu.

sel

v,

2,

5 a partire

3,

....

I,

si dimostri

o

che

u

s,

tutti

per

5, s,

v

occorre

tempo

OE

l intero

quindi

v

8 s,

Si

E.

che

mostri

è possibile

OE. tutti

per da

i

c

V, in tempo

OE.

5,.

vale

ir, u, tutti

per

v

2

ia u,

oppure

V,

v

V vale

i v c

1.

V

i

u.

gli

c

28,

i s,u

i

per

2, 3, ...,

non

i

E,

si

definisca

.

i s,v

k e per

tutti

u,

gli

e

V, il nuovo

dell

peso,i, u,,

arco

negativo.

come

il peso

i

per

v

di cammino I e per

2, 3, ...,

minimo

tutti

i v c

v usando

da sa V, vale

la funzione

pesos,.

che

28,

s,

e

E.

come che

si può v

8 s,

A.lgorileto

di

calcolare

6

essere

puo

i

s,

da8, s.

calcolato,

v. tutti

per

i i c

tutti

per

V, in tempo

V. in tempo

i v c

OE

e si

OE

g W.

un

i vertici

Sc

wt.

il

di

un

Kart

grafo

cicln

c

it

per

ciclo

nrientato

con

C

8g

di

iu

tutti

e

di

trtedio

pese

funzione

ir

pe o

archi

in

E

sniitimo E

R

e siaii

G

un

V.

Si

e

per

definisce

ilpeso

COl11C

k

pc

g

. Il nostro tutti

E

una gr ifo

sorgente.

i

calcola

B

8, s,v

G V.

Sia.

p

un

etTiciei1te

per

ente

CE ll

u e,

min

ctiiamvto

C ll11111itl

i u,

B,,

V si abbia

V, in tempo

di

28,

s,

v

deduca

corrente

minimi Sia

max,

i

per

che,

Si mostri

f.

sor.

i

8 da

5 s.

calcolo

I- e

i

Si,t iwm.

j oiserviche v w.

incrementale

V, quindi

vengono

1v soluzione

la soluzione

più

viene

iniziale

e successivamente

ogni

punto.

per

incren1CIllQlmente

pesi

il v

singola

sorgente

inizialmente

di un arco

raffinando

tutti

minimi

sul

....

è,

Si dimostri

tnedio

questo

l algoritmo

i v c

8, u.

quindi

Si

corretta.

indigente

s.

tutti

per

invece come

V.Nelseguito,assumeremo

v e

i v c

w u,v 28,

á, s,

cammini

per

eseinpio

ad

significativi,

considerati

sorgente

v

ii

peso

se v

1g W .

OE

calcolare

8 s,v

Si definisca

proposto.

Gabow un

in input

considerando

rattmata

poi

di risoh e

valore

6 B u,

la funzione

venice 6, s,

calcolare

per

di valute

proposto.

dell algoritmo

si può

1. Quindi,

s,v

Per

1.

stampare

per

incrementale

dato

110

1. Si definisca

di dimensione

eche

Algoritmo

pg-4

un

v usando

minimo

v

001

per

u,

algoritmo

tutti

per

che, v

w, u.v

se esiste

l

dell

di esecuzione

Per

i vertici

tutti

per

v,

ora

Si dimostri b.

O kE

che

2w, u,

che

il tempo

che

tempo che

Si dimostri

d.

valuta

efficiente

tale

c,

analizzi

Si

unità

c,,

V.

u al vertice

di cammino

vedremo

8 s,

Concentriamoci

Sterlina

un Dollaro

b.

28,

di avere

v e

v

si

cento. Si supponga

vertice

ia, u,

di n e d.

l utilizzo

di

1

richiede

calcolare si denota

arbitraggio

q sformare

u,

gli i pesi

VA

Ej

algoritmo

Arbitraggio

on

dal

ir, u,

allora

11001 ,

5, allora

Vecosivia,finchénoncalcola8, s,v pertuttiivc

pertuttiive

a. 25-3

tutti

calcola

J. Si descriva

il tempo

binaria

4 e k è sempre minimo

per

dapprima q.

rappresentazione

00100

.

dove

c. ciclo

di

s c lllilli

Ch l1l li11CIltC

V.

ilio

6

s.

Cl 1 s k

i cicli

miirinio.

orientati

In

questo

in

ciclo

cui,

problema

p. .

pc

è

LI11 Jlg l ltltIO

onali7/CfCI110

p.

i pvrdit t Sia

varia nsedio

pesv

calcolare senz

r

ùi i 1 l

ll Clll,, lll l .l

il

cnirulitò.

che di

peso

IVclltC

un

u ni

8

5,

l

i e

mininni I

esaftcrtnc nfc sl l

merli c

cnntnino

,

trcl1i.

Se

l sia

ta

iun ibilc

da

s a

i

e sia

lloll

vi

è

llei llll

3 .

i C lllll11

da

un

il

peso ill

vertice di d J s

un I t

Cammini

Papadimitriou

5, s,

i vertici

per tutti b.

0, allora

min ,

v

/ s,

se p

che

mostri

g

v

8 s,

cicli

di peso

negativo

e

e dell algoritmo

v.

lineare. nel

g zzz

Di s,

Karmarkar

v

max n

o s n-t

q.

i

ulti

pr

vertici

p

v c V. Snggerimento

si usino

entrambe

gia c un ciclo di peso 0 e siano u e v due vertici da ti a v lungo il ciclo sia x. Si dimostri

arbitrari

g,

da v a u lungo

del cammino

pQ

che se p*

gi m ,atri

0 allora

v

8 s,

de s,

il ciclo

esiste

se p*

gj f$lOStri che

che

g

Note

se si aggiunge

v

, s,

max

queii i ca

di peso

medio

minimo

tale che

minimo esteso

che termina lungo

ad un qualunque vertice un cammino per formare

il ciclo

del ciclo.

una

un algoritmo

costante

fatto

t al peso di ogni che

arco

di G. allora

p

viene

per mostrare

8 . s, v

n

o c n-i

e

v sul ciclo

k

di t. Si usi questo min

che il peso del x. Suggerimento.

ti

áq s,v ll

I

jpgfgl11Cntato

p

5 s,

0, allora

á s,v

g,,go, ri

v

k

si mostri che un cammino /caf p f g fiwento di peso medio minimo g jg può essere nel successivo che termina vertice f/llino

n-

su c. Si supponga

x,

un vertice

gg/

max roll

a.

parte

0 . B

I

è

della

v

max 0 k n-I

min

le proprietà

che 5 s,

ggplmino f

k

di tempo

OV

E

per calcolare

u.

al capitolo di Dijkstra

Q gfcrg jt llO

ggfj g

Jj

icscrive

la relazione

algqritmo

g z -,

è apparso

55

lineare

nel 1959,

tra cammini per i can.mini

ma non menzionava

minimi minimi

e vincoli in un dag

una coda

di differenza. che

egli

con priorità. Lav ler

considera

parte

l 3del

folklore. Qg,//f

g

li

i

csi degli

i E Ig V1V ,

archi

dove

1947

sono

e Steiglitz

154

presentano come anche

dell ellissoide,

L algoritma varianti

del simplesso del simplesso

una buona

discussione

di altri algoritmi

per la programmazione rimangono a tutt oggi

con

sorgenre

singola

del metodo

523

del simplesso

connessi lineare

misteri relativamente

W è il m,issimo

dei pesi de

piccoli,

li irchi

si possono

del

rato.

usare

aIgoritmi

più

descrive

il proprio

algoritmo

in 1ISj.

i metodi

alla programmazione fu inventato da G. Danzig

più popolari per risolvere di programmazione lineare. L algoritmo dell ellissoide è dovuto a L. G. Khachian problemi nel 1979, ed è basato su di un lavoro precedente di N.Z. Shor, D. B. Judin e A.S. iilemirovskii.

v g y

che se * p

Si mostri

G non contiene

minimi

Cammini

minimi

In questo

capitolo

di vertici

in un

tabella un

ogni

arco

un

cammino

che

nella

le coppie

e pesato nei

di città

reali.

a-esima

con

Si vuole

minimo

i cammini

una

funzione

da u a i, dove

e nella

colonna

i-esima

di vertici

di un

viene

associa

ad

u, v c

V, un

è la somma

in forma

il peso

di una 25.

R che

di un cammino

l output

sia

E m

coppia

il pesa

si vuole

le coppie

nel Capitolo

W.

peso

tutte

compilazione

Come

ogni

per

tra

nella

stradale.

trovare.

Tipicamente,

minimi

esempio

per

di un atlante

E

V.

lo compongono.

riga

di trovare sorgere

pu6

G

di peso

cioè

archi

l elemento

tutte

problema

a valore

peso

minimo

degli

pesi

tra

le coppie

il problema

Questo

orientato

grafo

tutte

consideriamo grafo.

di distanze

dato

tra

dei

di tabella,

cammino

in cui

minimo

da

u a v. Si può

risolvere

un problema

di cammini

minimi

i pesi

archi

con

degli

esecuzione

array

che

con

priorità

tra una

un

usare

uno

di

esecuzione binario

uno

heap

se

eseguendo

vertice

è

Se tutti

se si realizza

la coda

VE

OV .

di ottenere

è

grafo

sorgente.

OV

permette

il

un algoritmo

come

di Dijkstra

heap

miglioramento

con

le coppie ogni

l algoritmo

tempo

con

tutte per

sparso.

di Fibonacci,

ottenendo

l algoritmo

di Dijkstra

un

Altrinsenti,

un

tempo

La

tempo si

di puo

di esecuzione

VE .

Se

si permettono

bisogna

archi

eseguire,

con

invece.

Il tempo

di esecuzione

risultante

vedremo

si può

cammini

come

minimi

struttura

A differenza con

degli liste

di

rappresentazione liste

grafo

tra

tutte

piu è allora

fare le

lento

di

Bellman-Ford

OY

Ej

che

meglio

coppie

inoltre. e la

algoritmi

con

la

matrice

di adiacenza -.

orient ito

per

adiacenza.

L

G

V,

dell

arco

sin

è una

avente

la.

Soi,o

essere

puo

volta

denso

grafo

è OV .

malrici

e

vertice. In questo

il problema

tra

e ne

usato

ogni

pe

la relazione di

che

degli

n vertici.

orientato

i.

In altre

studieremo

la

anune,,i cicli

archi di

pe o

di

pes ,

negativo.

ne ,stivo.

ma

per

rappresentazione

questo

IV

i pesi v. .

del

capitolo

di 3ohnson

rappresenu

parole.

usa

pica.r grafi degli

archi

una

sparsi di un

dove

/.

sei j

j

una di

l vlgoritnto

n x n V che

sei

il peso

assumono

aleoritmo

sebbene

matrice

sei

contenga

un

analizzeremo

nloltiplichziotle

purte

di adiacenza

input E

sorgente maeeior

0 ir

su

non una

algebrica.

grafo

usi

negativo,

peso

I algoritmo

capitolo di

il

priorità è

minimi VA volte,

si puo

lineare,

con

1gV

la coda

singola

negativi,

coda

O VE

realizzare

non

un

della

di cammini

sorgente

sono

can

priorità

realizzazione

OY

con

f

j il

e

i

e

i,j

j GE

momento,esumi,mo

- 6.1 g E. che

i1

.r fo

non

J

ppfput

J

tabulare è una

apjtolo

pop

di

,zqqnza dei

ee

input,

con

j come

G

y,

p,

Vz

solo

i pesi

ri,. è r t. se i

è un

vertice

i c

di

riga

al

le

di

cammino

V, si definisce

su

di

per

sarà

il sottografo

minimi

albero

di

z wcJ

cammini

di

anche

una

cammino

moltitudine

da

un

apparentemente Prima

dato

PATH II,

abbia

dei predecessori

di G per

else

maiuscole,

matrici,

usate

data

wtL stampa

else

5

allora del

la

seguente

Capitolo

23,

26.1 che

procedura, stampa

i.

un

è una

cammino

1g V

a che

VE ,

ed

è quindi una

molti

con

di Johnson

quello

risolve

esaminerà

il problema

un

buon

di vertici

cammini

minimi.

grafi

per

chiamata

minimi

di un

la

cammini

algebrica

cammini

per

le coppie

usa

di

algoritmo

struttura

algoritmi

tutte

vedere

capitolo,

Esso.

grafo.

ad

una

anche

grafo,

se

A

nell attributo

row s A .

Cammini

minimi

alcune

convenzioni

in generale

Inoltre,

ag. Wo

di

stabilire

useremo

D, e di loro

elementi

avranno

indice

un

lettere

il grafo di

come

come

E

V,

matrici

w, o d,. d,

di

G

le

in D

il valore

che

delle

di input

denotare

minuscole,

in parentesi,

n x n assumeremo

dimensione

che

la convenzione can

la rappresentazione

per

assumeremo

con

Alcune

Infine,

.

n sia

per

memorizzato

minimo

paragrafo

alcun

cammino

da

i

a

tra

tutte

dinamico

un

algoritmo

le coppie un

avrà

algoritmo

di un

per

invocherh

l algoritmo

quindi

orientato

operazione

l aspetto

di tempo

programmazione

grafo

che

di una

8V

G

dinamica

per

E.

Il ciclo

V,

è molto

simile

moltiplicazione

e quindi

ne

alla

iterata

i

del

moltiplicazione

di matrici.

miglioreremo

di

problema principale

il tempo

di

Inizieremo di esecuzione

IgV . di procedere,

riepiloghiamo

di p.ogrammazione

j

un

presenta

minimi

programma

esiste

di matrici

dal

Prima

non

e moltiplicazione

brevemente

dinamiche,

cosi

come

i passi

soiio

stati

necessari

svii

per nel

presentati

uppare

Capitolo

un al goritmo 16.

i, zr, 1.

Caratterizzare

2.

Definire

3.

Calcolare

la struttura

di una

soluzione

ottima.

j

di

scopo

p,

tutte

mettere

, inimi

tra

,

di predecessori

trici

, -j

n

versione

j

PRINT-Aic-PAIRS-SHORTEST-PATH I, stampa

fs

di questo

un

coinvolgono

cosa,

prima

come

matrice

sviluppando

if z

di

O Y-

dobbiamo Per

in iterazioni,

i

then

nulla

quindi

lettere

a 8Y 3

hanno

non

n vertici,

matrici,

4

che

di adiacenza.

di cammini

Questo

stampa

in tempo

problemi

di procedere,

vertice matrici

un albero

ifi j then

le coppie

di altri

cammini

2

algoritmi

il sottografo

j,

f p T-AcL-PAIRS-SHORTEST-

tutte

altri

di adiacenza

.

mininsi,

PRisv-PwTv

procedura

tra

degli

liste

e sparsi. Infine, nel paragrafo 26.4 si grandi semianello chiuso che consente di applicare

una

e

con

5i matrice

ma

come

minimi

a differenza

rappresentazione .

d

una

vi è alcun

da i. Proprio

26.3

paragrafo

di

di cammino

si ha

minimo,

matrice

il peso

il peso

coppie

cammini

della

contiene

termine

se non

minimo

albero

i-esinsa

al1ora

tutte

in questo

presentati d,

denota

j

j oppure

di j su un cammino 25

8 i,

25 , tra

le coppie

l elemento

se

Quindi

Capitolo

non

dalla

tutte

dove

V,

e

j

vertice

i al

j.

minimi

dove

tra

QNIL U i

della

j i ata vertice

nel

Capitolo

E,, ,

V,,

è un

g

come

z, ,

ogni

minimi

n x n, in cui

cammini

indotto

i. Per

z ,j .

g

del

il sottografo

radice

p

j

vertice

calcolare

fI

G,

cosi

minimi

deve

i al

e, è il predecessore

ppzdecessdri

agente,

si

j di

problema

predecessori

QJ menti

f gJ

vertice

i al vertice

il

risolvere

di cammini di dimensione

d,,

dal

vertice

dal

jnimo

algoritmi

D

minimo

cammino

n

degli

matrice

in evidenza

le coppie,

in questo cosi

nel

predecessori

le caratteristiche capitolo

non

approfonditanlente

Capitolo

25.

Le

essenziali tratteremo come

nozioni

di

base

degli

algoritmi

le creazione

abbiamo

trattato

sono

comunque

di

cammini

e le proprietà dei

quelle coperte

ricorsivamente i

valore

il valore di una

di una

soluzione

soluzione

ottima

ottima.

in maniera

bottom-up.

delle

sottografi

Il

da

verrà

alcuni

quarto

che

passo,

trattato

negli

consiste

nel

costruire

una

soluzione

ottima

dalle

una

soluzione

atti ne.

Per

informazioni

calcolate,

esercizi.

g-q lCIZl.

Struttura del

struttura

di

Iniziamo

pura , izione

rafo

26.1

presenta

di matrici

per

un

risolvere

algoritmn

di programnmzione

il problema

di cansmini

dinamica minimi

tra

bas ito tutte

sulla

le coppie.

Usando

col

minimi

moltiplila

tutti il

di

camminino

minimo

cammini

mininli

tlcl

tutte

le

coppie.

L algoritnli

Cll

30lll1YiOll

È,

presentato

carattermzare

tr tutte

le

sia

grafo

se

la

coppie

i sottocaemini

ire

g ema

un

rapitolo

di

un

i

ct

scrtici

i

G

j

iono

matrice

con i

E.

V,

minimo

una

c

di

grafo

cammino

rappresentato

invece

strutturu un

per

di

abbiamo ntih essi 3V

I ira

ii

OD ll

rin

i

puii

di

problema nel

caminini

idi lEYI1ZQ

distinti.

il

dimostrato

minimi. .

Si

Si

consideri

á.

I

che

supponga un

che

cammino

camn iitu

il

ckcump rre

camminasi

lemma

p

in

nel pi

un

cammino

niinimo

da

i

I c

quii iii.

pr

il

5. ,. bhiamt

h i.

j

i.

4

w.

minimi

Cammini

soluzione

Una

rieorsiva

il problema

per

di

cammini

minimi

tra

tutte

le

coppie

La

calcola

procedura

calcolando Sia

d.

il minimo

da

m

cammini

vertice

dal

minimo

da

i al vertice

i a j senza

j che

archi

contengono

se e solo

al più

se i

j

scritte

m archi.

a causa

Possiamo

calcolare

i a j costituito

da

tH archi,

al più

d.

m

ottenuto

come

il minimo

1 archi

ed

considerando

tra

il minimo

tutti

tra

i possibili

1

d, i pesi

il

del

peso

dei

cammino

cammini

ora

tre

2,

....

cicli

esaminare

il prodotto l,

rendere

per

dei

,

per

for

d,

ogni

i e j, usando

che

l input

e l output

restituita

e D

per

da in .

indipendenti

coppie

output.

come

D

D per

fe

Ciò le

D

Il tempo

529

viene

fatto

matrici

sono

di esecuzione

annidati.

la relazione

matriciale

viene

D

tutte

C

con

A

di matrici.

la moltiplicazione

8 di due

di voler

Si supponga

n x n . Allora

A e B di dimensione

matrici

per

calcoliamo

n

i a j composti

da

k di j. Quindi,

predecessori

i, j

minimo

matrice 26.2

øli indici

senza

è 8n

quindi

calcolare

1, possiamo

da al più

òei

cammino

sei j.

cc Per

i pesi

i,

s

Jo

oi

tra

0, vi è un

m

Quando

una

l equazione

tra

Ci

definiamo

j

mark

g

bg.

.

ricorsivamente Si osservi min

d

,

d

Jd

min

che

se applichiamo

nell equazione

le sostituzioni

26.2

w y m-1

á.

b,

W

ym

uguaglianza

L ultima

sono

Quali negativo,

segue

i reali

allora

tutti

un

cammino

dal

un

cammino

minimo

dal

fatto

che

di cammino

pesi

i cammini

vertice

minimi

i al vertice da

i a j.

w

0, per

minimò

8 i,

sono

j con

i pesi

Quindi

semplici

j.

min

il grafo

e quindi

di n

più

ogni Se

j

l archi

di cammino

non

contiene

contengono

non

può

minimo

cicli

al più

avere

un

effettivi

n

sono

I archi minore

peso dati

di

da

Calcolo

D

i pesi

yn rj

bottom-up

Prendendo ...,

yn rg

dei

come dove,

input

di cammino

abbiamo Il cuore

1, 2,

proprio

procedura

ExvEvo-SHORTEST-PHATHS

cammino

W ...,

1, si ha

effettivi.

ora

D

Si osservi

d. .

che,

D

,

per

poiché

una La

sequenza matrice

d,

w

di matrici finale tutti

per

D i vertici

, -, O D contiene i. j E

è la seguente estende

di un

che,

procedura arco

i cammini

date

minimi

le matrici calcolati

D sino

1

n c

ro

1

n

2

sia

3

fori

2

sia

C una

3

fori

V.

procedura

per

con

min

per di

moltiplicazione

la

alla

cambiamenti

questi l identità

matrici

di tempo

B

ir x n

matrice I to

do

for

j m

1 to n 0

e W, restituisce a quel

ton

fork -1

momento.

do return

8

W

a

mc

c

b

C

ro .s D D

una

d

matrice,r

x

Tomattdo

n

for

5

j

-

1 to

n

for

i

dod

6 7

do return

1 to

d

n

ntin d .

d

di cammini

i cammini

restituita

da io

i

.

minimi

mininsi

di un

tra arco

tutte

g

H

o

H

H-,

g 3l

D-

lV

H

le coppie, volta.

alla 8,

Exvzwo-SvnRvrst-P tHs A,

g -I

l -

al problema estendendo

minimo prodotto

I ton do

4

8

anche

sostituiamo

sA

7 EXTEND-SIRORTEST-PATHS D,

applichi n o

se

Quindi e

l usuale

doc

essa

26.4 .

otteniamo

MATRlX-MULTIPLY A,

minimo

, calcoleremo

ii

n

I equazione

8i .

W.

dell algoritmo

la matrice

di

pesi

mimmo

D

26.3

la matrice m

per

otteniamo

l identità

I, g n-I ij

J

,

di peso

i pesi

si calcn1ano

con

Se indichiamo

calcoli imo

la sequenza

A

di cammino 8 la matrice

di n -1

niatrici

v

D I g n-I

Come La

discusso seeu nte

gin-

ri-I

l

lum.ilricc

precedentemente. pro dura

ilcnla

quotata

18

I scquiivw

in

t mpii

contiei c 8 tr .

i peii

ùi

c immino

nsinilllO.

0

Capitolo

26

*

Poiché

n

2

La

seguente

I, il prodatto

finale

calcola

procedura

--

D-

la precedente

è uguale sequenza

-

a P

.

di matrici

usando

tecnica

questa

di

ripetuta.

quadratura

F ASTER-A

Lt.-P AIRS-S

HORTEST-PATHS

W

-5

0

p ll

8

0

oo

l

4

0

oo

5

0

oc

6

p

3

-3

3

0

-4

2 1 5

0

gi 2

I

8

5

. - , -.. . . - . - . . -.

oa

3

-5

0 1

1

n

2

D

3

mal

4

whilen

la

sequen.a

verificare

può

delle

che

D

matrici

D



D uguale

calcolnre a D

da

e quindi

In

return

ogni

D

iterazione

D ne-

3

D

D

per

rurri

Il

.

m,

di

26.1-1

i

gy.-

D

P ,

J

un

m stra

grafo

e le matrici

di

tempo

del

Miglioranieoto

,

g g

t ,

D

calcolate

dalla

per pf 1gIOiti

l

,

m che tutti

in assenza gli

interi

di cicli m

calcolando

di matrici,

r

di peso l.

negativo,

Quindi,

possiamo

Si esegua

26.1-2

Perché

2á.1-3

A cosa

s mo

in em t

l equazione

m

D

-,

l ultima

linea

4,

m

restituisce

con

partendo

iterazione

2m 2n-2e,perl

alla

procedura

Ddi

calcola

equazione 26.3 ,

è

stato

l ultima

raddoppiato matrice

quindi

calcolata.

F svw-Au-PAtRs-SHoRvest-P ms

procedura 1 matrici

contiene

richiede

prodotto

strutture

di dati

tempo

elaborate

è 8n

Dn .

e quindi

Si osservi la costante

che

1gn , il codice

nascosta

nella

St.ow-At.c-PA as-SHORTEST-PATHS

mostrando

lV -

B

w4

W -.

H, -

g8

gr4

4

f pn

lo stesso

yfigl

calcolare

D

implic con

-11-1 ,gflg

matrici

che

sul

risultaiso

ad

grafo

ogni

orientato

iterazione

e pesato del

di figura

ciclo.

Quindi,

FAsvsR-Aic-PAtRs-S oRvasv-P vws.

che

comsponde, negli

s-,,

nella

algoritmi

soli

0 per

normale

di cammini

ogni

I

i

n

moltiplicazione

di matrici,

la seguente

matrice

minimi

. 26.l-l

-i

con

si richiede

H,

-i

li

le

oo 26.3

Si

mostri

singola

figi

non

poiché

la sequenza

l

p

della - l

l 1g i

1Y,

I

D

e la

si calcola il valore

Scow-At.i-P iRs-

procedura

esecuzione

,

gi ricordi

g.

gi

fallisce

4-6,

O è piccola.

usata

g ,

controllo

prossimo

delle

faccia

IS

S HORTEST-P/l l I

gq

linee

si raddoppia perqualchen-l

Esercizi

D-SHORTE5g-p

return

g$pjgg

delle

I

n

2 to

-

AO

fjgggg

while

iterazione

esecuzione

ognuna

26.2,

.gg

Al

il controllo

tempo

notazione

W

for

5

ciclo

rovvs WJ

ni

4

del

D I

D

D

è compatto,

2

EXTEND-SHORTEST-PAtvs D , 2D1

Svow-Ac .-P izs-

Szow-Acc-Pn,ai s-SHORTEST-PATHS W n E

D-

l. Alla fine di ogni .IneffettivienecalcolataD -

poiché

1

1m

111 E-

m

4.

m

gli

lertore

/l

p ,,

e

W

6

D

orientato

grafo

gg

7g

g

m

do

7

6

rows WJ

5

n pjàggg

-

coine come

si prodotto

puo

esprimere di

matrici

il e di

prohlema un

vettore.

di

cammini Si

descriva

minimi come

con li

sorgente

valutazione

si

$

26

Capitolo

i vertici

tutti

Figura

26.2

Un

e pesato

or$entato

grafo

usato

negli

Eserei-i

26

1-1,

26. -g

in

intermedi

veda

corrisponda

prodo o

ad un

simile

a quello

di

si

Figura con

p

q

le

p jjfjghino /

j

pgypg

D ,

le matrici

canunini tempo

matrice

completa

dei

pesi

di pesD

anche

essere

rd .

ininimo

da

le matrici

I1 ,

la

algoritmi matrice

di cammino

i nodi

del

al massimo

...

cosi

ggg orizzare

1gt .

8i

solo

usando

O n- ,

spazio

gaio

di

z lllpiessiva

zppz p

ognuna Si due

con

come

n- elementi,

inrennedi

nel

modifichi

j su

richiede

una

occupazione

in modo

che

per

la procedura

Si

un

di

in modo

da rilevare

da

diverso

gq

q

g

gg

-ag

di

A.lgoritmo

j

in un grafo

di lunghezza

negativo

pero

trovare

per

la lunghezza

ogni

coppia

di

stanno

in

1, 2,,

poiché

assumiamo

sfrutta

una

I

In

questo

ne

8Y.

Un

metodo

Come

una

u.- remo

par gr ili

di

piiina.

differente minimi

cammini

minima.

vi

po. sono

ir v ne

b

essère

formu azipp tr1

tu p

archi

Jz

li

Q zppp p

del

per

chiusura

tr iqij z

,

.. -,

un

cioè

la por ione k-

l

l i al del

e la

vertice

vale

sresso

venice

p dal

verrice

i al

il ca tmino

per

di

intermedio

è il vertice

e l

j

cainmino

di vertici

i vertici semplice

I al

venice

dal

p,

k. ha

che

tutti

i vertici

da

i a j con

tutti

Se

invece

i vertici

intermedi

verlice

vertice figura nell

I- al

...,

intermedi i vertici

k è un nella

1, 2,

vertice

da i a j i cui

vertici

intermedi

di Floyd-Vu arshall i vertici

tutti

i a j

aventi

a secanda

che

da

n

un qualche

p è semplice,

Il cammino

L algoritmo

cambia

l

I sia un vertice

insieme

nell insieme

intermedi

2S. 1. p,

il lemma I,

in ic,lie tutti

.....

i vertici

1

l, 2,

...,

p, allnra

sul cammino

intermedio 26.3. Per

/,-

f 1, 2....,

è anche

intermedi

p in i

spezziamo

mininso

minimo

-

. .i I

-

. i j, come

i a k con

da

nell insieme

I,

/

2, ...,

tutti

nlinimo

P, è un c..ln1mino

snalogan1etlte,

I,.

i al vertice

cammino

un

k.

cammino

è un

sul cammino

vertice

dal

minimo

un canunino

. Quindi,

intermedi

i vertici

tutti

allora

cansminop,

del k nell

j con

per

no.

intermedio

insieme

l. 2, ....

di vertici,

minimi

i cammini

un di p

. V

k

2....,

tra di essi.

I . Questarelazione

p oppure

è un vertice

mostrato

p

1,2,...,/ -

ed

vertice

v,,

...,

un

dove

minimo.

qualunque

osservazione.

negativo .

di peso

cicli

moltiplicazione

Sia

i cammini

minimo

di peso

un

C

v v,,

1, tutti

V, si considerino

il cammino

1

seguente

struttura

sulla

cammino

un

nell insieme

un sott insieme

abbia

G non tn

di

di

della basato

1

Vj

sulla

è basato

i, j e

caratterizzazione

p

vertice

qualunque

e sia p un cammino

k

una

usata nell algorittno intermedi

a quella

si consideri

di Ge

cammino

nell

z,

Una

soluzione

Sulla

h se

,

.

Quando

ricorsiva

per

minimo I

U,

dal Ull

vertice

C lllllllll10

di

il problema

dcll ns ervazioiseprecedente.

cammino iinsil

1

1.

..

p pcrp

p

gq ,z , . ,

peep

cioè ...,

cammino

nell insieme

j con

Floyd-Q arsha l

il problcn

kvertice

dal

useremo

rispetto

un

relazione

intermedio

di archi

i,,

vertici

dei

k. Per

dal

risolvere

k

...,

minimo

di Floyd-Warshall

di

richieda

la presenZcl

numero

2,

1,

considera di

v, e da

Se k non

efficiente

oritmo

l

g

...,

1,2,

minimo p,,

Floyd-Warshall,

intermedio

p sono

2á.1-9

insieme

L algoritmo

matrici.

negativo.

di peso

ciclo

Esv-Pw rHs

FASTER-Ac .-PAtas-SwoRI

fj hl

j pgj

cammino

diversa

minimo

vertice

n x n.

matrici

eanvniiro

cammino

di

cammino

intermedi 26.1-8

un

di

Nell algoritmo

vertice m archi.

è scritta,

Il

grande.

L algoritmo

l 1 matrici,

in

intermedi

è u

p

pii

Struttura

D.

e St.ow-At.t.-Pa,iRs-SvoRzEszquando vengono l calcolate

ppp zppp

l Ig n

2,

1,

di

contemporaneamente

contiene

FASTER-ALI.-P tRS-SvORvesv-P Tes,

gg

in

intermedi

j.

l insieme 26.1-7

i vertici

tutti

1

dei

fl

minimo

il predecessore

i a j che

Il - ,

negli

O i

calcolati

come

Elevo-SwoRtEsv-Patos

procedure

minimi

in

Si definisca

da calcolare . D

do

dei

calcolare

possono

minimo.

C lmminn

qualche

i vertici come

minimi

cammini

gi cammino

pqqi

ull

dalla

a partire

Jei

f ypgjci

calcolare mostri

Si

p llál rafo.

pfp fzCCSSori

26.I-6

voler

di

ggppppga

$j

i vertici

tutti

cammino

etichetta

venice

qppz p

Il

26.3

turri

26.1-5

k-

...,

Qe man-porg

algoritmo

25.3 .

il paragrafo

2,

e pg,g- ,

p di questo

l.

nuova

propnniainnuna

i al Cl Jl

vertice Yb.l t/CC

j con I Ql

tutti Vc I lidia

i vertici / iCIUa

tra

minimi

cammini

intermedi a et Li ci

tutte

coppie

va

ricorsi

fornsul zinne

delle

1.....,

nell.in,iene inlcnricdi

le

aventi

U ll lllllllCI

l

. O

W



Qipirolo

0

aggiore

di 0 è un cammino

massimo

un

arco

non

che

w,,

d

e quindi

ha

vertice

alcun

intermedio

definizione

Una

esso

di conseguenza

ricorsiva

è data

ha al

da

I

in m1fl

i vertici

fornisce di un

finale,

la risposta

cioè

cammino

qualunque

d.

sono

i5 i,

j

tutti

per

nell.insieme

V, perché

i, j e

gIi 2,

1,

dei

la

Sfruttando

ricomnza

i valori

calcolare

n x n, definita di cammino

la

2á.5 ,

seguentc

nell equazione

di

bottom-up

k. Il suo La

input

è una

matrice

restituisce

procedura

usata

essere

può

W di

la matrice

2

D

E

dimensione D

dei

i for

j m

do

d

1 to

,

richiede

tempo

un

i

ij

k

kj

e le relative

orientato

grafo

esecuzione

linee 8 ir

esecuzione

. Come

di dati

matrici

D

calcolate

con

6 richiede

linea

algoritmo

quindi

del

la costante

di Floyd-Warsha

è determinato

Floyd-Warshall

della

nell ultimo

elaborate,

l algoritmo

cnnseguenza

di

dell algoritmo Ogni

3-6.

strutture

e senza

tempo

paragrafo

nascosta

I è abbastanza

dai

Ol

e quindi

26.1,

il codice

notazione

nella

anche

pratico,

8 per

tre

gi

una

varietà

modo

consiste

la

matrice

dei

per

costruire

dalla

fl

Dota

la m itrice

per

i camion

la matrice

nel calcolare

PAtrs-Swoztrst-P rv

l al oritmo

...,

Il

. dove dal

5

.Il-

Il vertice

ll

.

l

m

4

0

5

1

5

0 6

0

v

o

NI L

Vi l L

l

l

2

l

N1L

NIL

NI L

2

v.n.

3

N lL

2 7

4

l

4

NI L

N li.

l

ti

r tt.

5

2

1

2

2

N1L

I

Nli

N IL

NI L

N IL

3

Nl L

2

4

3

4

N lL

VilL

NIL

l wc

5

2

l

8

5

o -5

e ri

i avente

1

1

s

3

0 l

, 4

2

I

4

2

l

2

l

N IL

1

ni

4

5

0

6

.. .

2

è compatto è piccola.

4

3 N IL

4

3

N ll.

3

4

3

4

8

Di

di input

grafi

-

-4

4

-4

giS

. ..

di

stampare

D dei

matrice dei

i ni minimi

ciò

puo fl,

predecessori

i vertici

di cammino

pesi D.

lungo

nel l algoritmo

un

si può dato

minimo

essere

e quindi

realizzato

usare

catramino

j non

di Floyd-Warshall.

in

la procedura

di costruire tempo

On

La

26A

e p

D

matrici

a di

sequen

ch

de/l alparitnto

calcolate

Flr yd-Warslui/I

Pesi-At.L-

minimo.

vertice

.

è definito tutti

i vertici

carne

il predecessore

intermedi

nell insieme

del

vertice

j su

I, 2.....

k.

un

c amino

una

dare

se

se

k 1,

vertice

i

g

oppure

sei j

i NIL

che intermeùi

il scelto

nell insiense

n .

a di

k

Quando

0, un

da

minimo

cammino

e quindi

intermedio ..

w

i a

26.6

w .

e

prendiamn avevainu

ricorsii

formulazione

alcun

contiene

m

Per

il grafo

per

26.1.

v

vertici

minimn

N IL

NlL

minimo

cammino

un

predecessori

26.1-5 .

Esercizio

Nlt

4

8

3

3

Figura

di metodi

Un

NlL

6

l

Si può i .iiste

6

co

3

for

cicli

di figtrra

Costruzione

NI L

1

di

l algoritmo

media.

dimensione

NI L

4

0

0 alle

N lL

l

5

0

d

d

4

mostra

annidati

3

4

5

Floyd-Warshall. di

NIL

0

n

c-min d

D

Il tempo

2

1 to n

6

26.4

NI L

ac

do

figura

1 N IL

5

0

for

N IL

5

NIL

l

0

oc

t

do

La

N1L

NlL

4

1 ton

return

NIL

N IL

N IL

l

0

pesi

W

5

7

NIL

N1L

W

for/ c

3

Y IL

NIL

4

8

3

101VS iVJ

m

N IL

3 N IL

l

so

0 ll

2

4

ff

-5

5

--

per

minimo.

pLO YD-WARSHALL l

NIL

oc

0

4

ac

procedura

26.1 .

8 os

0

minimo

crescente

in ordine

d

come

cammino

di

pesi

1 NIL

VlL

0

3

0

n.

...,

2

bottom-up

ff

Q -5

ac,

ll

Calcolo

L

1

l Mz

wc l

26.5

k

se

j

ig

d. .

oc

6

- g, .

intermedi

D

matrice tutti

8

0 4

g0

2

yi - p,. ij

3

i

cammino come l.

il

predecessore 2..... l

j,

allora di

I .

j

su

Altrimcnti.

il

predecessore

un

cammino sce lianio

di

j

minimo lo

stesso

è

scelto da

I

lo con

predecessore

stesso tutti

i

59á

26

Capitolo

di j che

avevamo

1, 2,

...,

scelto

k-

1.

.

k-I ij k-I kj

k iJ

Il problema verrà

di

compito

più

cammini

minimi

con

un

La

che

i. Un

matrice figura

iI grafo

per

dimostrare

un

altro

di

nella

9

26.4

mostra

figura

intermedi

nell insieme

dei

Flavo-W Rs i

procedura 1a sequenza

delle

L esercizio

propone

26.1.

il sottografo

modo

G

predecessori

di ricostruire

i cammini

matrici

è un

minimi

Il

anche

il

albero

è proposto

, l ,. ,

di

come

ad ogni

vertice

i al vertice

Esiste

un

far

i. j, /

1. 2,

i vertici

n, sia

V,

simile

alla

E*

chiusura

Figura

26.5

U

for

l c

annettendo

I ,

nel

l arco

i j

è data

26.5 ,

consiste

ne11

assegnare

se vi è un

transitiva

e

e r, .

else

6

8 n-

pe o

cammino

7

dal

di G in tempo

consiste

nel

ne11 algoritmo grafo

G dal

0 in caso

8

che

p

f0

i/

e

j

sei j

$1

i

vertice

j con

Si costruisce

se t

l. Una

Come

n n,t

vr

tp

ik

ij

ij

return

tutti La

26.5

figura

mostra

calcolate

T

le matrici

dalla

Ta r,sivivz-CcosuRz

procedura

per

un

definizione

da

intere

j CE

alAg

nell algoritmodi

1 to

j

Tunavia

è 8 n. .

TR sivive-CcosuRe

logiche

le operazioni

calcolatori

su a cuni

j aiE

oi

k-I ik

n

dor r

Il

di

j

0

t, .

P

allora

I, r/ -I

I

1 to for

10

sostituire

i al vertice

i m do

booleani e, per/

for

transiriva.

chiusura

della

colcolatedall n1goritmò

i

1 to

do

P

matrici

in

gli operatori di Floyd-Warshall. Per

contrario.

in E* se e solo

O ii. ,

e fe

orienraro

grafo

9

metodo

min

cammino

2, ...,

j .

procedura se

,..l

chiedere transitiva

.

Questo

aritmetici

ricorrenza

n , ci si può

V. La

di F oyd-Warshall d

la chiusura

e spazio.

l,

1, 2, ..., i, j c

i al vertice

di G in tempo

l algoritmo

I se vt è un

G

vertice

di calcolare

tempo

V

di vertici

dove

n, altrimenti

d

nell insieme

di t , ,

E,

di vertici

coppia

transitiva

operatori

t,.

insieme ogni

in G dal

simile,

degli

transitiva

ricorsiva

V,

in E ed eseguire

risparmiare

intermedi

la chiusura

G

j si ottiene modo,

...,

per

la chiusura

arco

v e n al posto

con

i a j,

cammino

un

altro

può

pratica

il grafo

di calcolare

unitario

E

V,

- . il

orientato

grafo

in G da

come esiste

j

modo

un

G

cammino

G è definita i,

di

orientato

grafo

se esiste

logici

i vertici

57

coppie

26.7

della

26.2-3.

radice

tutti

I,-ll Aj

il calcolo

di

i con

le

y k-I kj

/,--1J il

risultante

transitiva

Chiusura

Un

y k-I il

k-1 ij

da

turre

1,

20.2-6.

Esercizio

E

y k-I ij

difficile

minimo I

per

nell Esercizio

dall algoritmo

di

cammino

incorporare

affrontato

generate

Dato

su un

Formalmente,

tra

minimi

Canvnini

II

di

parole invece

c he

chiusura

di

tra

la corrispondenza

solo

valori

dall algoritmo

richiesto

di una

dimensione

alla

usa

transitiva

di quello

i minore

richiesto

corrispondente

fattore

vedremn

26A

puragrafo

oritmo

poiché al lo spazio

interi,

di un

Flnyd-Warshall Nel

Inoltre,

memoria di valori

di memoria.

parola

e Ta i smvE-

Ft.oro-V/,tRSHALL

26.8

Floyd-Warshull,

possiamis

calcolare

le matrici

7

t. .

in ordine

struttura

algebrica

semi nello

chiamata

chiuso .

di /.

crescente

Esercizi TRANSITIVE-CLOSURE G 1

n m

VG

2

fori

m

3 4 5

do

26.2-I l ton for

j do

-J

Si

esegua

l al

Si

mostri

la

re

spazio

8 i, .

zoritmo

di D

matrice

sul

Floppy-IVarsh ll nd

ogni

iterazione

e pesato

orientato

grafo del

ciclo

di

figura

262.

esterno.

più

ton if

i

j oppure then

t

i. l

j

c

E il

26.2-2 poiché

viene

c,Ic l,. te

l .

per

i, j.

/,-

l,,

...,

i,.

Si

nlostri

che

la

Cammini

seguente

in

procedura, che

e

piena,

Q p-WARSHAt.L

p

vengonn

cui

lo spazio

quindi

semplicemente

effettivamente

cancellati richiesto

tutti

indici,

gli

26.3

Algoritmo

V

minimo

1 ton

di for

do

i-

1 to

input.

for

j c d,

6

la

g j modifichi

min d,

d.

d,

modo

matrici

elle qpq,

per i.

radice

dei

Suggerimento z, ,

modo

da

comprendere

e

26.7 .

Si

dimostri

G,

mostrare w,

in 26.á

predecessori

per

d, ,

I implica

g

le equazioni

V, il grafo

di

supponga

modificare

che

è un

G,

il calcolo

archi

di

aciclico,

si

minimi

con

prima

che

mostri

la dimostrazione

del

lemma

che

il modo

in cui

è trattata

l uguaglianza

g

ij

1.

nell equazione

k j

J -

si

, me

usare

può di

presenza

y k-l ik p k-I ik

alternativa

definizione

Questa

un

di

yk

due

Per

s

altro

pn

matrice

dei

p

predecessori

di

è

corretta

gli

p/Q

Floyd-Warshall

rilevare

per

Come

la

che

la

mostra

p, . moltiplicazione

delIa

problei0a

I,.

j, da

nelI algoritmo

1,2,...,n,

i a j.

in

una

è la

Qual

n odo

da

gj glia un

G

orient ito

2á.2-8

algnritmo

iuppoAga

$i

l ul it i Pii

mostri

i- i i

di tempn

V,

di

una

tra

catena

di

èii y, .

i valori

e si

modo

che

y

accetti

come

D e la tabella

la matrice

in che orientato

ten po

f

il tempo 6

chiusura

Of

l,

O VE

calcolare

per

tteces V,

dove rio

E .

derivati

i,

tra

V,un

tutte

di

pesi

di peso

dei V, E

sono

eseguendo

VE

di

di

cammino

negativo

un

che

pesi non

nel

grafo

Dijkstra

che

funziona

nel

negativi,

l algoritmo

tramite

le coppie

metodo.

uno

è O Y-

nuovo

insieme insieme

si possono

di Dijkstra

heap

Ig V

Il nuovo

la

canm ii ominimodaua

minimo

il nuovo

da

ahi u,

peso

VE . di

una

di Fibonacci, Se

G ha

di

pesi

di pesi

il degli

archi

di archi

non iv deve

deve di

in tempo

vsecondolafunzionepeso

u a i secondo

v

pre-elaborazione

eseguita

Lei na

del

un

G

essere

la funzione

non

necessaria

ii.

peso

negativo,

determinare

per

la

nuova

degli

archi

O VE .

la chiusura

trunsitiva

f per

1,

un E

calcolare

orientato

grafo 52 V

I i chi tsur

E

e

f

è.

possa

una

rideterminazione

Useremo

super

n. e 8 perdenotare

peso

un

dei

e pesato che

G

associa

v

u,

s

lt n

dei

denotare

i pesi

pesi

pesi

i pesi

di cammino

di cammino

minimo

derivati

numeri

ton

pesi

V.

on

E reali

cambia

i casnmini

funzione

ai vertici.

peso

w

minimi E

Si definiscu

R, per

h

sia

ogni

V m

arco

Runa e

u,

Il v .

i . i ,....,

p

i

un

cammino

e

Ci ha

un

ciclo

di

peso

Comincianto

dal

vertice

enericc

g

w p

lt ,

hi

negativo

col

essere

CIC4CClllc ..

di

ottenere

precedenti.

dei

i

al

vertice

v,. Allora

p

5 v,.

i

se e solo

rafo

ii

l110110tOI1 1

i transitiva

rideterminazinne

26.9

di un

e aciclico

la

i.

orientato

funzione

qualunque

soln

di

funzione

con

è facile

proprietà

ridetenninazione

La

grafo

16.1

paragrafo

minimi

lemma, delle

peso

26.1

Dato

si t ,

nsatrici

cammini

dalla

funzione

Dimristrec- io te. transitiv i F,

di

l algoritmo

s nel

E,

la

che

IgV

dell algoritmo

intermedio

ricorsiva

calcolare

H in

relazione

è il vertice

y

defmizione

Sia g-7

G

è realizzata

priorith

lo stesso

tr, i s

essere

la prima

Floyd-Warshall

di

dove

Si dia

FLùvD-V,, r,,sn,u.t.

P

sia

ridetenninazione

semplicemente

cammino

il prossimo

soddisfi

dalla

minimi

PRiwv-Au.-Pwes-SnoRtvsv-P,xI

procedura

la matrice

iqpgt

peri,

minimo

la procedura

si n odifichi riscriva

.

cammino

calcola

poco,

può

della

algoritmo

un

dei

I

i cammini

i valori

di un

Qnde

f

i

con

matrice

di un ciclo

OY

che

proprietà.

u,

tra

Mantenimento

negativo

di ricostruire

nell usare

consi,te A

modo

archi

peso

minimo 2á.2-6

539

25.

is in un grafo le coppie di vertici

vertici anche

vedremo

funzione

dell.algoritmo

peso

si

importanti

essere

tutti

Come

t,.

coppie

y k-

della

l output

ciclo

Capitolo

di utilizzare

Perognicoppiadi

2.

I

y k-I ij p -l1 ij

le

in tempo

ripetuta

sottoprocedure

archi

tutte

le coppie

una

la presenza

tecnica

la coda

di questo

ci permette

soddisfare

25.8 .

tra se

negativo,

peso

rigorosamente

di cammini

minimi

la

degli

tutte

quadratura restituisce

come

nel

usa i pesi

vertice

di esecuzione

negativi albero

è,

si adatti

Quindi

k-1

j

usa

descritti

Se tutti

ogni

lé.7

k

tra

della

denuncia

Johnson

di Johnson

iv deve si

minimi sia

L algoritmo

oppure

di

i cammini per

tempo

Fioco-WwRsvAit.

secondn

II i e

ogni

sparsi.

grafi

le coppie,

seguente.

trovare

procedura

i cammini migliore

di Bellman-Ford

volta 26.2-3

per tutte

L aIgoritmo e-

tutte

sparsi

grafi

1 to

D

return

trova

L algoritmo

ri

per

è asintoticamente

tra

quello do

5

7

di Johnson esso

Floyd-Warshall

k-

for 4

di Johnson

L algoritmo quindi

D

D-

tra

è

è 8 r- .

rows WJ

n-

minimi

moitrure

secundn

la funzione

peso

i.

che

.

26.

I0

E

26

Capirolo

abbiamo

Infatti,

k

wp

w v,

g

v

,

3

I-

g

i

i-

It Ui-

3

h v,

-5

k

wv

g

j, v

wP

h p

h vo

hv.

h Vk

.

a La terza

uguaglianza

Mostriamo esista Per

segue

ora,

per

un cammino

P

somma

assurdo,

che

corto

da

più

l equazione

dalla

p

telescopica

in p

alla

á v,

v,

v,, a v, secondo

seconda

implica

linea 8

ii p

la funzione

della

formula v, .

v, ,

peso

2

Supponiamo che

quindi

6

precedente. che iv p .

p

26.10 ,

o

a

eP n

up wp

h vp

h va , 5

che

wp

implica

u a v secondo Infine,

ii p .

is. La

ciclo

c

v,,

che

di peso v,,,

G ha un

ciclo

di peso

secondo

dove

h vo

l ipotesi

dell implicazione

negativo v, ,

tu c

u c

contraddice

questo

dimostrazione

mostriamo

se G ha un ciclo

Ma

v,

inversa negativo

la funzione

v,

Per

che

p sia

cammino

minimo

c

da

è simile.

secondo

la funzione

Infatti,

pesos.

l equazione

un

im se e solo

peso

si consideri

un qualunque 3

26.10 ,

h va

-0

wc,

e quindi

c ha

Generazione

di

Il prossimo non

funzione

peso

qualche in modo

tale

cammino G

26.6 a

mostn

E -

i i á

i della

. s, in

figura

archi

V ed E 0 per od

G.

.r fo

G

ora

che

Ci e G

il lemma

h 26.6 a

v

E.

un

tutti

i,,

s, c

di

0. e la seconda i nuevi

che ii

per

poiché

che

partono

se G non

negativo

li urchi.

che

può

contenere

di peso

negativo.

n ia,

un

per

AI1

inrentn

di

r giri

ertice

estesa 6

V J Èi ll ll IC

ll.

Cl 8 tl,

v sono li

iirdicati Il l

i i alori

6 u,

v

e 8

t

,

seperratl

ala

rvicr

l arri.

fl

valore

ll HI.

nessun

entr..inti,

s stesso. ti

La

Calrolo

uro

dei

cammini

minimi

tra

tratte

le

coppie

I.

per 6. , ti

con

d

da

26.

s viene

ha

s,

E

V,

V u

s non

archi

ahi t

ti u.

G

peso

e si detinisc

. La

pesi

V

dove

la funzione

l cCfU 1LtOllC i ioddiifatt

ii .

si vuole e pesato

Eg,

ha cicli

G di figura

h te

secondo

V, inoltre

cle,

hi

dei

orientato

G V

,1 grafo

pruprietè pesi

ve

quelli

secondo

proprieù

grafo

cic li di peio

ahbiitino pesi

econda

grafo

v

negativo

peso

rideterminazione

un

se embolo

ubhiano

i nuvoli

la

V. Si nuti

corrispondente non

a Dato

nuovo

Eu

negativo

253,

con

e

eccezione

di peso

se ha

la

val

che

costruizmo

e solo

tramite

u,

R,

il

detihiaino

hn

negativi

s e v

ha cicli

V . Per ie

quindi.

gli

vertice

non

Si supponga

G

iv

minin o

Inoltre,

u.

tutti

che

w se

è di assicurare

per

nuovo

secondo

non

pesi

obiettivo

negativn

tutti

negativo

peso

0

uro

tutti

i hi

26Xi b

i

D .

li archi lbbi ll11E tmostr

i

n, 1l ll,

i il

per E E ES iO

l

f

J.,iSUlllC

CllC

Qll,.llClll

Yl,.lllt

lllCI110t.ll/illl

Ill

ll.,ite

L

Cll.,tctlilCCI1/ll.

lo

i

Ihhi tnt

ictlio.

ii

lsstlnle

chi

i vertici

si lilo

t1ltn1cr ti

dl

I .l

Vj .

.,ll OllltllO

IVSlltUlt4C

il

Cammini

minimi

tra

tuue

le

coppie

543

JOHNSON G I

si calcolà

G,

dove

EGJ 2

VGJ

EfG

u

then

v

s,

if BEI . -FoRo G ,

3

VG

else

di

grafo ogni

5

vertice

do

for

input

v e

assegna

ogni

7 8

for

ogni

i u,

do

il valore

di peso

In questo

negativo

ta un

5 s,

u s

v di Bellman-Ford

afo

paray

contesto

lr u

generale di

ogni

ii,

vertice do

per

calcolare quello

l algoritmo

v

v c

d

-

ii

contiene non

G

un

calcolano

v

i nuovi

vertice

in V. La

minimo

5 u,

v

Si può VE ,

di peso

tutti

per

i v c

Vf GJ

Un

VG

5 u,

di

semianello

la

con

Fibonacci.

Una

esecuzione

lt

elementi

hu

Elg

linee

V

che

è

ancora

di Floyd-Warshall

se

Dijkstra il corretto

con

uno

transitiva

semianelli

chiusi

asintoticamente

anche

è un

le

linee

in grafi

tutte

algebrica

che

orientati.

Cominceremo

la relazione chiusi

le coppie.

Sia

26.2

paragrafo

col ed un

calcolo

di cammini generico

a1goritmo

l algoritmo

sono

rappresen-

di Floyd-Warshall

istanze

di

algoritmo

questo

voln

peso

ogni

per

12 restituisce



3.

63 è commutativo

4.

ERè

la matrice

5.

Odistribicisce

di Johnson realizzata

binario

minnre

con ad

porta del

tempo

è O Ylg uno un

di

heap tempo

V

6.

di

Se

a,,

a

a a,,

definito

dove

S è un

sono

insieme

operatori

elementi,

di

binari

su 5,0

EB

ed T sono

soddisfatte

O

b ...

è una

6

monoide

S, a S

Bc.

a.

0.

Ga

h

S. ab

Bc

O

h 8

a.

a.

S, a a tutti

b c

0a

S, a C,O

per

5, a 6

5, a 0

a, h c

b, ce

glia,

S, a B

a

hc

O

b

a

a,63

a,

Oc

Si

usi

l algoritmo nel

di Johnson

sequenza

numerabile

di elementi

di S, allora

a,

S

...

è ben

in S.

di 7.

esecuzione

è sparso.

di figura

grafo

trovare

per

26.2.

i cammini

Si mostrinn

minimi

i valori

tra

tutte

di h e ii calcolati

1e coppie

da l

al

Associatività,com s utativitèed una

qualunque

cui

ogni

ideh potenzasi

sommatoria

termine

G

distribuisce

8

aOb

della

infinita

pu

applicano

essere

sommatoria

compare

sommatorie

intingete

a samrnatorie

riscritta una

come

sola

quale

motivo

si

iun e

ag

il

nuovo

vertice

V.

s a

attenendo

volta

unn

infinite.

Quindi,

sornmatoria

e l ordine

infinita valutazione

di

suppongál

funzioni

CllC

peio

1l l1,

w

e

l

0

per

tutti

gli

archi

n,

t

e

f . Qual

...,

e

8f 8b,9...

l,

a G

I,

S i b,

b, 8

Sb,g

Oa

9 b,

Oe

.. 9 6,

a O b,

8

a

6

O

calcolo

di

cammini

in

a G b

orientati

grafi

1

è la

relazione

tra

le

oriei tvto

le

se

G

ii ordinut i

di

dei

proprietà

V. vertici

E

ed un

un

sensianelli

chiurli

i jisn ,ione

cl m nto

di di

un

elicltdltafnra u ilehc

iembrarc

piiisonn

il eoilomini

aitr tte.

V x 3.

V-

Schio

esse

associ l

empiere

poiinnn

ud

ni

in è

oritnio.

Anche

Si

rispetto 6

di

Un Per

e

a.

G

c

b c

ac

az

gli

a e

a,

è un

gli gli

tutti

rispetto

Q

1.

S, a b

a c

1

tutti tutti

per per

gli

glia.b.cs

G,

S, per

idempotente

EB c

snno

tutti

ogni

per

ununn,cllatore.

f

0,

di estensione

per

tutti

per

anche

2.

EB, S,

S.

proprietà

a 6.

calcola

di cammino

otto

per

Analogamente,

6 e 7

sistema

arbitrario .

vertici

26.3-3

struttura

di semianelli

tra del

l operatore

rispetto

associativo

O è l identità

8.

26.3-2

una

di cammini

isronoide

G che

linee 8-11

una

EBè

di cammino

V,

è un e G

di S, e le seguenti

2

Esercizi

26.3-1

chiusi ,

e discuteremo

esempi

su cammini

chiusura

c/riuso

S,8,0

di Johnson.

viene heap

linea

assumono

il peso

delle

deII algoritmo Dijkstra

La

quindi

i v c

di

linea

e 4-11

hv

d

Infme,1a

sopra.

G

for

dell algoritmo

di

il grafn

linee

V, il ciclo

di matrice

di esecuzion,

semplice

più

se

ad

l algoritmo

26.10 .

v Le

tutti

per

u, i c

l esecuzione

nell algoritmo

priorità

peso

4 e 5 assegnano

elemento

il tempo

descritto

il problema.

Bellman-Ford

l equazione

che

abbiamo

funzione

di vertici

mostra

realizzazione

OV

dell algoritmo

con

chiamando nell

usando

facilmente

coda

v

chiuso alcuni

additivo

l operatore

v

che

3 rileva

di

coppia

5 u,

figura26.6

vedere se

ogni

azioni

G

Le

11 memorizza

ca1colato La

su la linea

negativo.

minimo linea

le

dall algoritmo

iv. Per

pesi

di cammino

eseguire

negativo,

calcolato

il peso

D completata.

che

Bellman-Ford

di peso cicli

èi s,

altro

di

ciclo

contenga

minimo

fa

anelli problemi

calcolare

per

l.

non

semianello

informazioni della

5 è ckiuso codice

esegue

risolvere

Quindi mostreremo

che

semi

i

in cui

hv

O

Questo

di cammini

problemi

VG DmcsvRA G,

11 return

risolvere

generico.

v

8 u, for

esamineremo

la definizione

orientati.

EGj

v u,

esegui

10

in cui

generale

orientati

Definizione

9

12

ciclo

dal l algoritmo c

v

vertice

un

con

hv

i

i,

contiene

VG

ad

arco

do

contesto

in grafi

Vf GJ

calcolato 6

Un

v Lsc

il

for

26.4

e

s

v s

w, s

stampa

u

coppi i

544

Capitolo

26 Cammini

L etichettadi

un

arco

V x V, l etichetta

v

u,

et rc,

i

e Eè

vale,

denotata

di solito,

con 0 se

il u, v

u,

v

iLh definita

poiché

non

è un

arco

di G

su tutto

tra

tutte

le

coppie

545

il dominio

tra

vedremo

minimi

un

attimo

perché . Si

usa

l operatore

cammini. Rp

kv

, vi

L identità

di an

O 2 vq,

esempio

di archi

di

vg

negativi.

serve

all operatore Rp

2 v ,vp

02 up,vj

v .v

0

cammino

caso

etichetta

ai

vuoto.

RA

Figura

i cammini

u

minimi RA

p

v ...,

v,,

v

è di conseguenza

min

VQ

vuoto

con

di ce

l operatore

1g

v,,

Ia sua di

di

due

etichetta

in

è preso

è il e O

cammini

S.

è

da

we

0

associativo,

modo

l identità

denoteremo

per

il

l. definire

Dati

i cammini

l etichetta

pj

l

lg

e

1

è

e l etichetta

della

concatenazione

o pi

kv,

up

0

k1

S

ò k vq,

v3

k e

.v,

se

0 i Va

. Vk l,

Uk 2

...

S

o R vq

o

cammini.

8

,Sg.

O k VI-l,

ui L operatore etichette delle

dei

che

In altre cainmini

obiettivo

le etichette

-

9,

di cammini. etichette

u

o

additivo

Il nostro

Vk I

sarà

di cammini

O 2 Vk

commutativo il valore

parole, e p,

la semantica

O 2 VI

, VI

che it p,

S

del

associativo,

è usato

A p,

visto

viene dipende

quale

p

r tutte

le coppie

di vertici

le

perriassumere riassunto come un

V, il riassunto

i

riassunti coppia arco

dei

suoi

Lo

è

si

G

ci

essere

pun anche

tr

P

i

e

26.11

deve

la commutativitite

I associutivitàdi

essere

Inoltre.

esistente

u,

ininfluente. i avrà

che

non 0 come

sia

ui

arco

etichetta.

pni . del

perché hé usiamo . rafo,

l ordine

in cui

l annullatore

qualunque

cammino

i can mini

0 cnme cerchi

eticltetta

p,

p,

, Pr

vengono di ogni

di sc guise

op ,

cnnvnini

o p,

p, A p, -

8

A p,

ut

P.

in

assume

e

e

pi

in

G

rispetto

i cammini

P,

C

. pi

8

cammini

p,

9

.

iLg

numern

Rc

e

si nota allora

l

si

u

essere

e p,

o p,

effetti 0.

di

essere

26.8. in grado

rispetto

in per

nella

figura

possiamo 6

A p,

un

G

grato,

esempio.

C, . p, C 2c

A. c e

G 3c

c 0

c 2 p, Rc

8

e 2c

infmite

0

i

ci dà

... e

deve

i cammini

9

G

contiene

di riassumere

s somnsatorie

X p,

Oi. p,

e

di

distributività

la distributività,

can mini

ad

l estremo

mostrato

O

dei

il valore

della

o ila,

ben

applicabile

f Ill

ti ura

di G

sia

bisogno

numerabile

essere

definito in

Come

numero sequenza

infinite.

min

y, Per

un

le etichette

abbiamo

calcolando

V. Dobbiamo

è una

. deve

min

è ben restituisca

e v .- ,

La

...

numero

semplice.

ad

a,,

sommatorie

che

additivo .

un non

a,6

per

esempio, min

essere che

riassunte

valere

abbiamo

a,.

n,9

richiede

Per

infinite. .

a,S

divergono,

infinito

o Rp

2c

che

p

deve

applicabile

vengono

deve

.

ci può

se a,.

in cui

la di tributività

$

R

ha peso

26.11

semplice

essere

l etichetta

caso

o p,

sia

quindi

l operatore

a sommatorie

Rc e

cammino

per a c

gli

risultante

semplici.

precisamente,

all operatore i - x u v, v

. p,

o xc

p, T

u

che

dei

un

P,

L identità tutti

per

cammino,

l etichetta

essere

minimi, R-

questo

c o c op,....

c

di un

Se p è un

cammino.

l vrdine

che

ed il cjclO

8

6.

,

dall equazione

stesso,

deve

S, allora

di cammini

rispetta p .i.r,

o e o p,.p o

non

più

cammini

argomenti

le etichette

P. p,

se

Ogni

ininfluente

valori

se

le etichette

Poiché

i a j

j

ordinata non

.

p con

di cammini

dei di

additivo

arco

perché

possono

4

Si richiedi no

G

a

di cammini.

e la commutativith

dell operatore di estensione 267, si supponga di avere

c.nmmini

p

dei

ikp,

a

quaIunque

idempotente

codominio

esempio infinita

oppure

e se un

L operatore

di tutte

u

g

etichette

oppure

lp.

l associatività

calcolare

distribuire

v

del essere

l/I

riassumere

dall applicazione. i, j s

le

A p, ,

dell operatore

inflitti

in un grafo.

di archi .

Deve

ruolo

irisieme

che

di etichette

all

inferiore

Ap

9

di elementi

sequenza

iL p,

di calcolare, da

Q

sia di un

cammini

in S.

S

Per

è sia

p,

I VI 2

riassumere Q

.

di cammini

quindi

min , R Vk,

il p

finito

Tornando

Ul

una

,, vq

cioè

numerabile

ed

nel

il cammino

numero

numerabile

è

S R e ,v

Per

iL p,

per peso

additivo

le etichette riassumiamo

numerabile

definita Rp

a 63. 8

min

hanno

peso

consideriamo

infinito

loro

rispetto A p,

annullatore

esistenti avrà

di p,

infinito un

un

l operatore

riassumere p

ha

non

che

Poiché

t... lk k 1 ... l

V V

S Q

i1 p,

useremo



il cammino

p

della

o2 pf

.

l etichetta

possiamo

naturale.

concatenazione

0,

di

o

minimi

Archi

anche

per

estensione

la loro

VA ,

l identità

distributività

calcolare

e, in effetti,

ER deve

I,

della

i cammini è

u

vq,,v,,

il ruolo

concatenazione p,

Uso

possiamo

Si vuole

Naturalmente,

Poiché

e p,,

è l insieme

e

cammino

26.7

e p,

con

Per

cammino

02 vt-f

v,vq

di

, dove V.L operatorediestensioneOcorrisponde

je

del

nazione

da

considereremo

S è in questo

e l*etichetta

la

data

k

del

chiusi,

pertuttiglii,

aritmetico

Vg

etichetta

semianelli

Il codominio

estendere

per

.

vi

come

dei

deirealinopnegativieil i,g w

G V

v

p

O 2 va

o B

di applicazione

non

estensione

camntino

1 dell operatore

Come pesi

associativo

L eticlretla

p

,

Cammini

Per

Figura

26.8

vi

insieme

è mi

di

grado

Distributivirà

di

infmiro

G

rispetto

mmrerabile

riassumere

a sointnatorie

di

i cammini

catnmini

op .

p,

infinite vertice

dal

a c op p,

p,

numerabili

v al

di

s ertice.v.

A

8.

causa

Dobbiamo,

del

ciclo

infarti.

essere

un

una

numero

notazione

àrbitrario

di volte

c zero

percorrere il c

a,

due

speciale

c.

Un

algoritmo

in

dinamica

volte

volte.

Si

con

con

supponga

una

l etichetta di avere

corrispondente

etichetta

il. c

G

1 se

transitiva, c

i, j

E,

si

usa

e iL i. j

etichette

per

il semianello

chiuso

0 altrimenti

di

5,

in questo

cammini

tra

le

abbiamo

coppie

v,

1,

0,

caso

orientati

rutte

, *

0

mediante

547

1,

0,

l

dove

l.

programmazione

o c o c op ...

denotare

per

chiusura

j

Sia Useremo

la

A i,

minimi

di un ciclo

un

ciclo

etichetta

lc

a O

che

c con

etichetta

il e

T,

a e cosi

essere

può

via.

Ac

una

volta

sono

a

26.11

con

L etichetta

che

G

percorso si può

E

V,

un

numerati

orientato

grafo

da

l a n.

Per

con

ogni

funzione

coppia

di etichettatura

di

vertici

i cammini

da

V x V m

1 V, si

i, j e

vuole

S ed

vertici

i cui

calcolare

l equazione

etichetta I

otteniamo

2p,

Q P

riassumendo

numero

questo

infinito

di percorrimenti

aOaSa

8

del

ciclo

c è la chiusura

di a definita

ij

come che

l

a

a

8

nella

Quindi.

9

aSa figura

Tornando

all

26.8

esempio

si vuole dei

calcolare

cammini

l p,

mini

ni,

O

per

cammini

O

lc

X p, .

reale

qualunque

è il risultato

I

non

negativoa

minimi, 8 i,

min

j

Mediante risolve min k0

ka

negativo,

di

questa

è

proprietà

cammino

minimo

la

seguente

1Ta mai

tutti

poiché

bisogno

di percorrere

i cicli un

hanno

intero

vorremmo

i a j usando

l operatore

additivo

Per

S.

i

calcolare

.

wp

tutti

di

e la

chiusura

i vertici

dinamica,

programmazione

problema

e della

aventi

nessun

tutti

esempio.

tecniche questo

Warshall

0. L interpretazione

ad

.

c R ou

abbiamo

a

di riassumere

.

63

aOaSaSa

sua

forma

transitiva.

intermedi

è possibile

è molto

Sia

simile

l in ieme

Q

nell insieme

I, 2,

dei

...,

costruire

un

degli

algoritmi

a quella

k.

cammini

dal

algoritmo

che

di

vertice

Floyd-

i al vertice

j

Si definisce

non

peso

ciclo.

1 l

Si Esempi

di

semianelli

Abbiamo

già

abbiamo

usato

visto

un

per

anche

Tuttavia

mostrato

avevaino

Floyd-IVarshall

di as

minimi

che

,

restituisce

a

0 per

di chiusura

negativo.

Usando

se

a c

un

vi sono

per

u

dei

suoi

,

La

argomenti .

archi

nale

di peso

chiuso

negativo,

vi siano

di peso

il codominio che

ci

delle di

permette

verificare

può

di

l algoritmo

cicli

che

il cammino

etichette

trattare

cicli di

la chiusura

vuoto

da

di

definire

che

il riassunto

l,

Floyd-Warshall

e

ricorsivaniente

non



di tutti

cic1i

f

di

r,

come

1. Quindi,

passano

che

addizioil vertice

per

k

nell algoritmo abbiamo

della per

è altro

il fattore

Quando

negativo,

peso

non

contiene che

l .

Nell algoritmo

l esso

perché

i cicli

..., di

vuoto.

r

I

ricorsiva

vi siano

ma

26.8 ,

l, 2,

di un ciclo

I a k ci

e

26.5

nell insieme

1 peso

il fattore

definizione

p

Q

0

-co

Il secnndo

negati

a T,

ignorare

possiamo della

vertici

assumiamo

corrisponde

nell algoritmo

pg

le ricorrenze

rappresenta

altri

gli

Floyd-Warshall è 0, che

negativn.

tutti

d

Possiamo

g/ -

fattore

questo

di

transitiva.

ricorda

26.12

hanno

definizione

p/

,

I

e che

non

il lettore

ricorrenza

la

chiusura

g

JR i,J fl

sea 0,

il ciclo.

con della

che

chiusura

entrambi

per

c, ,

transitiva, algoritmi

questi

l identith

di

G.

La

base

un

solo

è

, è

Ru

negati

l analogia

che

0

osservato

Come

interiore

ed estendendo

B,

,

min,

,

negativi.

,

purché

semiBllello

e

8

per

R u non

l estremo RA

minimo

5,

archi

in realtà ogni

apprnpriato

trovare min

e cioè

degli

pesi

anche

di cammino

possianso

chiuso

con

min

che,

i pesi

l operatore

u

peso

di semianello

affermato

calcola

Aggiungendo a R

esempio

noti

nell algoritmo

i cammini l opegatore

precedentemente, Abbiamo

chiusi

sea 0. caso

ei

vo un nu itero Quindi, i de li

0

modella

infinito

le situazione

di vnl te, nttene

il semiznello rchi

è 5,

chiuso R

u

da ,

in cui nd o un

usare .

peon

per min,

possiamo di

percorrere per

l*algoritmo ,

,

ogni di

0

un

si

cammino

Floyd-Warshall veda

l Esercizin

ciclo

di

che

contenga con 64-3 -

peso

eR i,

che

possiamo

arco

i, j

i

j,

allora

L algoritn o pe restituisce

j

se

i g j,

se

i

interpretare è semplicemente l è l etiehetta di

j, nel

modale

iL i, j del

programmazione -1 . la matrice L

uente. che

cammino

i

L etichetta

uguale vuoto

dinan,ics

a 0 se da

del i. j

camnsino non

è un

costituito arco

in E .

da Se

inoltre

i a i.

cal..ola

i valori

I

per

valori

crescenti

di /,- e

Cammini

Con PH E-Su th1ARIES l,

V

minimi

rra utte

le

grafo

orientato

549

coppie

Problemi

n g 2

for

i

1 to n

3

do

for

2á-1 -1

j

ton

doifi j

4

then

l.

1 8

di voler

si inseriscono

dei

all 6

else

7

for/

c

8

l.

A i,

j

a.

1 ton do

9

for

1 to

j

10

g

jik-i g ij

return

t k-I

Q

g

g-l

ik

b.

k-h kj

kA

L

di esecuzione

. Se denotiamo

SUMlIARIES

OI

di questo

con

TA. T,

8n T

è

algoritmo

dipende

e T, i rispettivi

T,,

T.

che

tempi,

è 8 n-

dal

tempo

allora

se ognuna

richiesto

per

il tempo

di esecuzione

delle

operazioni

tre

calcolare

G,

come

si può

in tempo

OY

quando

di Cor,ivutErichiede

Si

dia

che

S,

u

R

min,

,

,

,

0

e S,

v,

1,

0,

n.. 0,

I

che di ti

S,

R

Si

la

riscriva

modo

sono

0

e

che

u

,

-

, min,

a c

per

R

Cosa

,

, succede

per

grafi

0

è un

semianello

chiuso.

a.

Qual

con

Cn PUTE-SlJMMARIES

procedura

realizzi

come

usare

26.4-5

Si,può

S

l algoritmo

,,

R,

usando

di Floyd-Warshall.

il

semianello

chiuso

dovrebbe

Quale

essere

0.

1

è un

semianello

un

l algaritnio

semianello

cl iuso

di de

di Bellman-Fvrcl .

E cosa

di

il valore

per

la procedunt

Fn

Dijkstra

E per

Si

mostri

come

per d.

di

trasp rli

curico

massimo

di

Ltll

Ql-,.Ill

un

aleiiritm

Ol

peso ldlll

vuole

per ill

cfticicnte

Ci

invi di

posiihilc

i camion 1

pei

.

tre

c ircioA, che

L

C

i

la tlll

risolvctlo.

un

camion

m.i

o

ni

dii strada Si

percorrono.

Ull,.lppl

Opl

I

Il l

Castroville negli nsodelli

il

Ill

I JllCIIt

a Stati

Boston

Uniti

cjucst CI1ILl4l

im

l algoritmo , dove

OV viene

inserito

r, è il

l i-esimo

di tempo.

limite

questo

minimi

di cammini

in algoritmi

di Fibonacci

su heap

basati

algoritmi

intervallo

c nell

costante

qualche

7-2

degli

l efficienza complessa.

tanto

8 gi .

con

una

per

il Problema

asintotico

INSERT,

per in uno

heap

una

qualche

per

C

EXTRACT MIN

d-ario

0

costante

in

DECREASE-KEY

diventano

Come

questi

tempi

Si confrontino

l

u

operazioni

di queste

ammortizzati

i costi

uno

per

risolvere

di

heap

G

z-denso

E

archi

senza

di

sorgente

una

negativo.

peso

e.

E

V.

minimi

di cammini

il problema

O VE

in ten po ed

orientato

di

V.

da

minimi

i cammini

OE G

e-denso

d in funzione

si scelga

gr to

ed

orientato

grafo

in tempo

calcolare

si possono

un

come

con

ha

un

archi

0 VE

di cammini

tre tutte

le coppie

tra tutte

le coppie

tsegativo

ma

negativo.

di peso

senza

t..

IL

gr tfo

ha

cicli

di

peso

in campo

il probli. mu

risolvere ed

orientato

G

e-denso

1,

che

E

può

avere

archi

minimi di peso

che

negativo.

il

2 i-3

con fOI

un

limite

problema I

come

Si mostri

non ditta

per

Si mostri

per Ullél

t

g, ,

quando

archi

gli

quando

inserzioni,

STER-ALL-P XIRS-

Siioarc -r-Puti. .

m.i sitno

veda

si

d

di

raggiunge

n di eletnenti

di esecuzione

n

di

transitiva

OV

E

esecuzione numero

se si sceglie

tempi

Suggerime lto

l algoritmo

per

wiceede

di del

transitiva

la chiusura

Fibonacci.

chiuso

arbitrario

di dati

per

E-densi

se

raggiungere

struttura

è il tempo

Qual

questi

in

S,

c. usare

E

V,

QY

tempo

richiesto

sia

sequenza

complessivo

tempo

proposto

d-ario

heap

si può

una

singola Il sistemo

G

grafo

di e in G.

qualunque

la chiusura

in grafi

è e-denso

uno

e-densi,

un

l algoritmo

minimi E

V,

funzione

b.

26.4-4

di un

E

V,

che

e tali

arco

aggiornare

per

aggiornare

he

1. Usando

di

26.4-6

che

assuma

Si

rappresentata

a G.

l inserimento

una

Per

grafo.

per

di esecuzione 26.4-3

arco

nuovo

un

dopo

richiedere

necessario

G

G e di

grafo

efficiente

nel

Camminati grafo

un

algoritmo

Si dimostri

Un

senza Si verifichi

un

aggiunto

transitiva

dovrebbe

tempo

chiusi.

è il valore

un inseriti

26-2

veritichi

di

la chiusura

Si descriva

arco.

semianelli

2á.4-2

esempio

un

proposto

tempo

.

Si

viene

G

transitiva

la chiusura

aggiornare

Si mostri

vengono

ER

Esercizi

26.4-1

quando

vogliamo

booleana.

matrice

aggiornare c.

e

venga

transitiva

la chiusura

E

V,

momento.

a quel

sino

inseriti

e che

G

inserito,

è stato

un arco

che

n

k ig

Il tempo

arco

alcun

abbia

dopo

parole, archi

degli

transitiva

G non

di un

transitiva

in altre

in E

archi

chiusura

il grafo

inizio

una

nuovi

dinunrico

grafo

la chiusura

mantenere

I ton

doforic

I 1

la

aggiornare

il. i, j

di un

transitiva

Chiusura

Si supponga

Ill

AC

I

Si

di

Albero Ci

V,

E

un

rafo

ernve

Itiisti n

copertrtra ccn nesici

e

non

un

uriu tato

ekittso

seu iatlellcr con

tuhziunv

peso

i

E

R.

Sia

V

simo

distinti.

Sia

T l unico

albero

di copertura

determineremo

questo

problema

Maggs

e S. A.

Plotkin.

minimo

T usando

Dapprima

un

di G

semianello

determiniamo,

ogni

per

veda

si

chiuso,

l Esercizio

come

coppia

24.1-6 .

suggerito

vertici

di

da

In B.

hf.

Flusso

V, il peso

i, j c

minnrar m,

min i

a.

max j

Giustificare

Poiché

brevemente

l asserzione

che

5

R

,

u

-

la

procedura

,

è un

CoMetrrE-Suima,eEs

per

min,

,

max,

chiuso.

5 è un

vertice

.

archieinp

semianello

determinare

we

massimo

semianello

i pesi

chiuso,

minmax

i al vertice

j con

m. tutti

usare

possiama

nel

G.

grafo

i vertici

Sia

m.

intermedi

il peso

minmax

nell insieme

su

I, 2,

...,

tutti

i cammini

dal

k. Proprio

b. c

Si

dia

Sia

una

ricorrenza

T.

i,

j

copertura

di

G.

in . ,

per E

w i,

dove n

j

I

.

0.

Si

come

trovare

dimostri

che

archi

gli

in

T,

formano

un

albero

Si mostri e di

che

T

rimuovere

rimuovere

un

T. un

Suggerimenro

arco

arco

i, j

su da

si consideri

un

altro

T e di

l effetto

cammino

da

sostituirlo

con

i a j.

un

altro

di aggiungere Si

un

consideri

arco i,

anche

j

come

una

materiale.

Si

immagini

che

una

sorgente,

dave

da

a T

l effettn

di

consumato.

La

la velocità

arco .

capitolo

sorgente flusso Il

velocità.

stessa

con

Ogni 132

coppie

anche

una

presenta se

sulla

moltiplicazione

68

ed

è basato

non

buona

analizza

soluzioni

di matrici su

un

discussione

transitiva

di matrici

booleane.

Hopcroft

e Ullman

4.

per

al folklore.

teorema

di La

L algoritmo

del

L elgoritmo

Warshzll

struttura

problema sparsi

grafi

198 algebrica

di Johnson

di cammini egli

attribuisce

minimi l algoritma

di Floyd-Warshall che

descrive

di semianello

è tratto

da

114 .

il calcolo chiuso

è dovuto della compare

tra

carta ad

di flusso

ed

tutte basato a Floyd chiusura in Aho.

le

arco

che

20001itri

di liquido

filo

può

sorgente termini, cui

ne

corrente

e del

esce.

essere

inviato

questo

capitolo. usate

flusso

grafo

cui

dove

il pozzo

di

grafo

flussi

di

sistema

a

viene

esso

lo consuma

alla

è intuitivamente

sistema di flusso di

tubazioni,

un

un

pozzo,

reti

Le

punto.

elettriche.

proprietà

sorgente

essere

possono

componenti

attraverso

attraverso

di informazioni

in un

reti

di

i vertici

senza

deve

essere

in un vertice conservazione

del

è esattamente

la legge

essere possono

più

la velocith

sia

violare

senza ri olto

esecri

di

per

attraverso

se

un

eccezione

alla

della in

altri

velocità

con è la

il nmteriale

riguardano

che

quelli con

cui

di capacitò. efficiénti

algoritmi

adattate

flusso

massima

i vincoli

con

esempio,

per

accumularvisi uguale

di

Kirchhoff. tra

semplice

ad

e,

risolvere

Come ed

inoltre

altri

reti

il materiale

di può

vedremo

capitolo

esenta

due

metodi

genirali

per

risolvere

il probleima

problemi

di flusso

in

le tecniche su

di flusso. Questo

il

per

massima

elettrica

i condotti

proprietà

al pozzo

algoritmi

di corrente tra

condotto

quantità

di tempo

unith

opportuna

un

la

stabilisce

Ampere

attraverso

entra

come

considerato che

giunti

scorre

quale

puo

essere

o 20

è il problema

massimo

il problema

può

rappresentano

il materiale questa

questi

nel

prefissata.

tubazione

semplicemente

dalla

ed

punto

reti

di esso

una

per

questa

da

di

attraverso

Chiameremo

chiede

costante

in quel

capacith

il materiale

di flusso

Esso

una

del

con

elettrica,

flusso.

rete

ha

all ora

pozzo,

un

ritmo

attraverso

liquidi

ad

qualunque

ad

attraverso

una

passare

la velocità

Il problema

di base

di

I vertici

elettrico.

un

attraverso

scorra

scopo

riguardanti

a questioni

fino

allo

interpretare

anche

materiale

prodotto,

in un

orientato

grafo

via.

condotto

materiale

di

si muove di

di corrente

orientato ogni

materiale

un

possiamo

rispondere

per

viene

materiale

scorrere

altro,

quantità

il materiale

con

stradale un

usarlo

certa

il materiale

e cosi

materiale,

una

del

lo

di montaggio.

comunicazione,

Lawler

un

produce

la quale

modellare

per

catene

al

da

orientato

usate

Note

minimo rete

di

partire d.

una punto

modellare

possiamo

il cammino

massimo.

reti

552

Capitolo

27

Flusso

Edmonton

Saskatoon

La

12

quantità

Vancouver

0 W

v. Il valore

by

Una

a

rete

di flussa

spediti

ar rn

cirtàv.

Ogniarcoèeticlrenaroconlasuacapacità.

solo

i flrissi

è usata v

verso

città

positivi.

Se f

dividere

flusso

so1o

con

la

il problema

per

nta

so/o

v

sc,

c u,

0.

s

allora

e capacitò

casse

al

v

indica

uira

Lucia

t. I dischi viag

possono

UnflussofinGcon

l arco tr, noi

della o

è il poz

g ionio

di flusso

divisione .

e

con

f

u.

Se f

u,

s

/c u, 0,

t .

tecniche

usate

nella

negli

non

è il più

algoritmi

Veloce

tra

asintoticamente

conosciuti,

quelli

veloci

più

ed

di vedere

barra

l arco

n.

esso

illustra

alcune

è ragionevolmente

non

u ad

da un

vertice

il che

implica

f u,

esce

da

diamo

discutiamo

le

Inoltre,

loro

una

di

e definianio

proprietà

introduciamo

definizione

alcune

utili

reti

di

flusso

rigorosamente

usando

il problema

di

flusso

di un

sorgente.

la

Qui

notaziane

Nel probtema r e si vuole

denota

di flusso

trovare

dice

un

viene

di valore

rete

non

negativac u,

due

vertici

cammino esempio

v

speciali

su

giaccia

G

i

e

v è l opposto

a se stesso 0.

deve

La

massimo

L*antisimmetria

essere

netto

0 perché,

sorgente

per

o dal

del

da

una

la

teoria

dei

di

flusso

massimo.

grafi.

u,

f

u,

v

v

V

e

v

f v

c

quindi,

che

non

E né v,

ogni

u e

del

flusso

da

dice

che

inversa.

V, abbiamo dice

è 0. Per

ad un

il tlusso

né .to

Quindi,

il flusso

cammino

s x-

v

-- t. Il grafo

il flusso

u,

netto

l antisimmetria,

totale

possiamo

e 0.

E,

Eo

che

entrante

in

un

u

v,

e sulle

un

totale

flusso

netto

allora

Ma

0. Quindi

osservazione

netto

essere

vertice

c u,

v

poiché

f tr,

flusso

netto

E oppure

c v,

entrante da ir

-f dii

Ge s,

erso

da

in un

u a v se

vertice

non

quindi

è anch esso

vi è un

arco

vincolo

perii

u

per

antisim netria,

zero

dal

vertice

0.

tra

di essi.

di capacità abbiamo

u al vertice

che

v implica

entrambi . di

proprieth v è dettnito

un

flusso

riguarda

flussi

Il flusso

positivi.

netto

come

.

ora

pronti

cot

una

di

funzione

capacità

Per Per

Conservazione

del f n,v

g CI

dalla

a definire funzione

in G è una

Antisimmetria

E, assumiamo

che

è qu ndi

c u,

t. Per

sorgente

ogni

0.

v

e

cioè, E

v

u,

s

In una

convenienza,

al pozzo

cnnnesso

arco

E ha

rete

si assume ogni

per

capacità

di flusso che

vertice

1. La

V

una

figura

v e 27.1

Il flusso

vi sono

ogni

27.2

vertice

netto della

vertice

1 . vi è un mostra

zione

dal

diverso

vertic e

uscente

positivo

da

un

vertice

di conservazione

proprietà dalla

sorgente

o dal

è definito

del

flusso

è che

deve

pozze

essere

in modo

simmetrico.

il flusso

netto

uguale

al flusso

interpreta-

Una

entrante

positivo netto

in un uscente

positivo

stesso.

un

di flusso.

Sismo

Vincolo

e

in cui

s ed un pozzo

qualche

di rete

flusso

v

sorgenle

orientato

grafo

da

-f u,

u

u,

f

che

le

un vertice

come

il flusso

ci può

u

u

v,

v

tr,

L u1tima

r

s,

0 e f

che u,

notazioni.

è un

un

di flusso Un

E

s

brevemente

netto

direzione

pozzo

flusso

il flusso

nella

di conservazione

dalla

esaminiamo

capacità. flusso

del

proprietà

diverso

massimo, che

di conservazione

anche

f u,v

V, O.Se u,

una

0

né sr,

f

e flussi

di flusso

del

data

l u l u. j 0

Una

ic

il valore

massimo

flusso

semplicemente

la comspondente

vertice

u

di flusso

problema

di capacità

vertice

un

f a,t

positivo Reti

dalla

s e pozzo

esempio

la proprietà

tutti

Se

paragrafo

un

netto

g ri I

di flusso

questo

un

eccedere

può

Si osservi

In

vertice

dal

delle

efficiente

pratica.

Reti

esce

o la cardinalità.

sorgente

Il vincolo

un vertice

per

27.1

che

assoluto

G con

proprietà.

aItro

u alla

W

allora

tre

vestono

capacità.

algoritmo

totale

ore

Compai y.

hoc/

cinà g ia re dalla 19 sonomosrrati

valore/

è etichettato

Puck da

riscrivere se questo

netto

flasso

R l.

che Anche

netto il va

Prima

trasporto

di

a R innipeg

1

per

è erichettato

E

V.

s e il deposito

intermedie,

netti

solo

G

è la sorge tre

è chiamata

come

27.1

il flusso

rete

Regina

a Vancouver

f è delimito

l

flusso non

b 27.1

o negativa,

positiva

flusso

v

fs

g

cioè

14

Figura

un

Cg

p

tf

La fabbrica

essere

può

di

553

Sg

l l l Ill

f

Calgary

i . che

u.

f

al vertice

massimo

tutti fluss 0.

la nozione capacità

di flusso

implicita

a valnri

reali

f

formalmente.

più

c.

Sia

V x V

Sia

s la sorgente R che

della

ocldisfa

le se

G

V,

rete

e sia

uenti

tre

E

una

rete

Un

proprietà

Si 27.

tutti

u, v c

gli

li u,

e

Per

tutti

V. si richiede

V, si richiede gli

i. c

V

che

s,

chef u.

f

u,

i

t , si richi dc

v -f

c n,

v, che

v.

esempio

di

rete

di

flusso

t il pozzo.

di

puii i . La

usare

una

Luchy

.nmm,

per

rete Puck hockey

eli

flusso

Company su

per hn ghiaccio

mc clellare una

il

twbbrica ed

ha

pr iblem

la un

sorgente

ni g.,inizino

di s

trasporto

niostrato

a Vancouver il

pozzo

che

nella produce

a

Winnipeg

c.,liti iC,.ll

1OI

t

figura d ischi in

cui

u.

l1113

CJp.lClt,l

lll11lttll,l.

I LICk

PllCh

pUi1

i 18 lllc...ll

I11,1 ,Itll l

IC.

i.

l1

L1 .l

O I11

F/usso

Abbiamo

ora

spediscono tra

i due

a vè

c

b

d

Figura27.2 viene

Cancella ione.

indicato

una

spedi

ione

opposre,

di città

sulle

vengono

u e v della

e quindi è di determinare

e quindi

spedite

ogni

possano La

velocità

dalla

con

fabbrica

cui

alla

disco

per

casse

escano

andare

restrizione

che

A regime, deve

il flusso

del

La

27.1

corrisponda netto

negativo. solo

v

u,

f

dalla i dischi

ha

nessun

va

effettuata

In

indire

unica

motivo

controllo

sui

figura

27.1

nella essere

possono

ioni

spedite

di produrre

e

percorsi

velocità

con

flusso

viene massimo

quindi

rispettata.

alla

spedizione

vi è alcuna flusso

nullo

o negativo

in quella

direzione.

direzioni

tra

giorno,

le spedizioni ad

cui

solo

città

nella

Per

ogni

coppia

di f

u,

v

la relazione

tra

da

un

un che

di c u,

sono

rete

essere

dati

ogni

al giorno.

nella segno

da

u a i

figura di

27.

v, a

,

27.2 e

i flussi

netti

diventa

al ginrno

ed

possiamo

pensare

cancellare di

la spedizione

sole

casse

rete,

Reti

che

con

spedizioni rete

un

tra due

di t1usso

risultato

meglio

po vertici.

della

La

figura

è mostrato

nella

figura

27.1. t

ura

27.2 a

flusso

mostra

Se Lucky 27.2 b

Puck

netto il sottografo

spedisce

sono

al giorno

e dalla

casse

spediamo spedite

nostra perchi .

oeni

essi

n,tar le

disco

iorno

convenzione

da

dQ 1

e

1 l

le

reali

i,.

In generale,

lllÈIlo

rapprescnure

per

indicano

corrispondente Ae iun

nessun

Un

problema

La

Lucky

capacità

un

insieme

i

è 0 o

e pozzi

di flusso Puck

spedizi ni

di cavese

netti

quindi,

8 casse

è di solo

da

spedite

a i,.

allora

al giorno.

a i,

mostra

il

SOfgt

Per

è il numero

al givrno

mostrare 8

i,

solo

cnmp ire

da

t1uisi nella

or t

rapprese trazione

nte

t i ,.

i,

netti ta

ur i

e

iltra

spedizi h . del

iw rrispondcnte

questo

volta risultato

di

3 casse i.. moslrata

al

iornc . nella

di figura

i,

vengono

ogni

le 3 casse v, a

da

giorno

al giorno,

spedizioni

la sola

ma

effettuata

in

d

di spedire

da

va

dischi

in questa spedite

giorno

i, a v, lasciando,

7 casse

al giorno

convenzione

-2 d

di

il flusso

netto

rappresenta

da

v, a i è

da

v, a i,

direzione.

ogni

continuano

esso

netto

netto

flusso

la

v, è positivo. il flusso

poiché

flussá

si riducono

altre

5-7

le

situazione

lo stesso.

usando

da v, a v,diventa

una

poiché del

rimane

un

spedizione

con

quella

di conservazione

con

se vi è un

in entrambe in

trasformazione,

di vertici

città

alcuna spediti

cancellazione,

risultato

netto

due vertici

vengono

direzione

coppia

invece.

tra

i comspondenti

l effetto

da

in cui

una

di

2 casse

Alternativamente.

una

quindi.

servano

per

spedizione

reale

c..

i

non

il

7.

puo

è più

difticile

il problema multipli

si un

pun

un

di quelli

pnzzo.

Si aggiunge

con

ogni

di

c pacitè

c r.

flusso

figura

massimo

flusso

rete

di

vt.

t

Ini ltre. pero ni

in

flusso

una

rete La

ordinaria

i ereaunsuperpu i.....

ed

ordinario.

s ed un arco

j

solo. s

Fortunatamente.

ordinario.

u nasupersorge rte

di uno

s,, s ...,

27.3 a .

massimo

massimo

una

invece

pozzi

di m fabbriche

nella

t1usso

in

a

I, 2.....

j

Ji un

problema

e diversi

un insieme

ntostrato

determinare

rete

sorgenti

avere

r /. come

la

per t

ad

diverse

puo

trasformare

sinmlo

s

di

avere

con

sorgenti

figura

27.è b

cot

una

arient tn

singola .

s

o r e i aggiunge

n. Intuitivan ente.

o ni

con un

t1usso

La

po itii

a i,

non

ridurre

ed

massimo

t,. t, ...,

come

settsplicensente

.iOI10

ui i ,.

I

il tlussn

iin .olo

pozzo l. Escri..ivi

un

usando una

neno

ginrno

spedite

essere

da questa

spediti

27.2 d .

multipli

di n magazzini

,.uco rient.. to t,

di

8. i iiao

i,

i,.

nd esempio.

e pozzi

capacità netto

deve

dischi

addizionali

a

Company

problema può

,multiple

v, e v, nella

i,

da

Si

sulle

vertici

al giorno

v, e v, è di

il t1usso

numero

il

i tlussi

da

dai

a v,

7 casse

va

tra

dei

ogni

il flusso

vengono

da

8 casse

il corrispondente

i,

di 5 casse

sorgenti

mostrati

concentrandosi

indotto

8 casse

il f lusso netto I anti immetria.possianiodireoncheeheilt1ussonettodai ,ei,èdi-8cus ealgiorno.anche non

e spedizioni

da

il flusso

u.

questo capire

non

2

quello

da v, a v,. In effeni,

le

i uinco1i

tra

Il t1usso

da

5 delle

non

in

figura

v, a v, è di S casse

archi

determiniamo

nsostra

2. Poiché

è negativo.

due

violati anche

esempio.

al giorno

che

si

neni

direzione.

in cui

netto

positivi.

7-5

di 2 casse

da

sola

spediti

il flusso

il nostro

3 delle

altro,

vengono

le direzioni

perché

da

trasformata,

non

con

nella

modo

se f

I b

divisione

solo

ad un

vengono

figura

la

mentre

v, e v,

i flussi

giorno. in

u e i nella

al giorno

a v,

spedizione

la leg e

rappresentato

di vertici

da p

dalla

massimo

v.

tra

sono

Quali

al giorno,

nella

netto

dei

situazione

essere

può

di capacità

rispettati

mostrare

di spedizione

flusso

spedite

ogni

giorno

v casse

della

da

determinato ogni

di capacità

un

rete,

casse

arrivare

vi si accumulerebbero

da u a v. Quindi, seguiti

fatto

Di conseguenza possono

positivo

del

intermedia

altrinlenti

che

devono

escono

ogni

in entrambe

essere

le direzioni

v, a v,.

spedizioni

rappresentare

uno

un venice

i dischi

I vincoli

arco.

Si piiò

se

in

i ti vo.

di

permette

à

città

in una

al massimo

Quindi

due

equivalente

di quanti

I dischi

ci mena

al massimo

flusso

possibile

spedizione

netto

tempo

I vincoli

v sia

in una

ne escono,

corrisponde

flusso

fatte

il flusso

effettuate

lungo

mostrata

vengono

cancellate

le situazioni.

cancellazione

positivo

pos

ogni

flusso.

p casse

di quanto

città

cui

spedizioni.

esattamente

al magazzino. u alla

è un

percorso

si preoccupa

p di casse

un

la

generale, netto

Il suo

a.

v, a v, sono

vengono

flusso

dire ione.

dischi

più

spedizioni

Continuando ogni

ed

entrano

alle

con



si preoccupa

città

direttamente

non

clte in usi

positivo

mostrata

che

lungo

arrivino

rimostra

archi

gli

non

b

allora

non

spediti

cui

il numero

figura

di casse che

netto

non

di flusso

al magazzino

v

f u,

alla

Puck

al giorno

e p casse

con

uguale

determina

Puck

fabbrica

la velocità

essere

vengono di p casse

fabbrica

di conservazione

dell

i dischi

dalla

uri flusso

Vietare

c

il jlusso

a v,.

la rete

visto

v, a v,.

da

giorno

Caitcellnndo

d

al magazzino.

Lucky

dalla

v,

numero

quantità,

co 2

c

Lucky

a.

alterare

può

velocità

al magazzino.

giorno

rete

tale

da

27.1

il massimo

spediti

in

a

a quella

da v, a v, e non

da

in entrambe

al giorno da 3 5 casse

v, a v, è di 8

da

è equivalente

al giorno giorno

spedizioni

555

al giorno.

in entrambe

Quindi.

vi sono

v, a i, e 3 casse

da netto

5 casse risultante

5 casse

le reali

4 b lhquestomodo

l0ec v v,

V

8 casse

v, a v,.

giontoda

spedire

figura non

di produrne essere

al

C Vj

io di

la sirua-ione

g ionio

COll

all

3 casse

capacità

scopo

ne

al

Vj 8 I ins

corrispondente

rappresentare

7 casse

coppia

netto

ad li ionaledi

po.ssiamo

Altre

e

Dueienici

a

il flusso

Il flusso

situazione

e

in cui

al giorno

8

spedite

v,.

situazione

vertici .

di 3

La

a

una

8 casse

massimo

ùi

t consuma 7.1-3

C fLIIV llt .lit .

chicdcrit

cui tutto

h itmnbisoeno il

a1 Iilh te

t1u , ,

le sor Cllll che

dovrebbero

di ùin o lrarc

lllllltiple

s

coiliumare

torouiltuente

ed

ii

mndo

i pozzi cile

questi

analogo multipli

due

prohlemi

il t.

Flusso

Lemma

27.1

Sia

V.

G

E

rete

di

flusso

e siaf

un

flusso

in G.

Allora.

V,

X g

per

0.

f X,X

gO

un

massimo

Per

. ,Y

f X,

Y

c

V, X

f Y,

Per

X,Y,ZcV

f ,Y

u

.

con

Y,Z

XnY 8,

f X,Z

f Y,Z

f Z,X

f Z,

e Y

f Z,Xu

Come che

f .

g

a

esempio

il valore

27.3

Trasforma ione con

problema e tre

sorgente

i T

po-

i ro tre,

mt

di e po- o

t t, .

t,,

Lavorando

o t

con

cosi

di

arco

inassimo

capacità

con

di flrcsso

equivatenre

flusso

di

rete

Una

a

rere

tm

di flusso

problema

singoli.

Uria

b

ssrperpo-

sm

i i rita

con

.sorgenri

cinque

co

urw

da

ogmmo

e po

sorgenti

sorgente

dei

i multipli

S

ed

un

. s,

s o.

po

originali

po gi

in

Si

s,.

s

m . s

cr g iud

be

altro

vertice

del

sor

j

a t.

flusso

è intuitivamente un

tlu so

seguito

vertici

di una

implicita

rete

nella

vertici,

uno

quale

che

co 1

f x,Y

g

fare

di flusso.

intendendo

argomenti

gli

a chE

con In

dei

due

funzioni capitolo

questo

il valore

i loro

n alte

argomenti, denotato

elementi.

Ad

come utilizzeremo

o anche sia

che

f

esempio,

una

entrambi,

la somma

hanno

come

notazione

i possibili

se X e Y sono

insiemi

di essere

possono

di tutti

argomenti

sommatoria

totale

implicita.

entrante

nel

dimostrare

possiamo cioè

pozzo.

che

avere

puo

ente.

La

visto

di 0 per un

Austro

dimostrazione

che

f v,

v

la coisseri .azione ne o

non

tornelle

ùel

nullo

i lu se

f V,

k

s ..

s

t

f V, t

due

diversi

t1usso

dalla

e quindi

compensare

per uente

s,

fv

i vertici

tutti

il pozzo

il f1usso

per

definizione

per

il lemma

27.1

per

il lemma

27.1

per

il lemma

27.

per

la conservazione

e dal

sorgente

è l unico

netto

non

nullo

l del

flusso .

sommatoria un

modi

di

nano

f s,

i flussi

avremo

notazione

evidente.

netto

f ,t f Nel

della è il flusso

27.3

fatto hanno

pozzo

un

r

b Questo

Figura

di utilizzo

di

Y

insigne

di

acanti

in cruento

capitolo

unn

presenteremn

di questo

genera1izzazione

risultato

lemnw

27.5 .

di rimpiazzare

di vertici,

Più

allora Esercizi

gy x,y .

xCXyE Conce

altro

esempin,

condizinne

clte

ometteremo della

V

0 graffe

di sommatoria s denota

notazione

coiniolgono

V

parentesi

notazione

termine l.a

le

il vinco o u,

f

insiemistica flussi.

Il

27.

l-4,

implicita

che

si incnntrano

conservazione

tutti che.

gli

V

Ad s

implicita

len1ll11

comprende più

V

esempio,

flusso t.

insieme nell

essere

può

Inoltre, se

per

queste

equazione

espresso

come

sernplicitii, occorrono f s.

di

Ia

77.1-/

solito

V-,s

f s,

V.

Ia

cui

unente.

dimostrazione ri uard inti

le è

flussi

lasci ta e notnzione

equazioni al

lettore

dite

vertici

t

3 unità

òi

t1usso

t1ui.,-o

netto

il

da

e

in

ut a

rete

ven ano r

a,. .

di

in Si

l1usèi.

i te

di

di.,egni

la

dove v

v

c u.

e 4

5 e i i.

.,iu,azione

u

veneano

unità nello

. tile

della

si

8. da

ini inte

supponga v a n.

Qual

27.-.

figura

il 77

semplific sotevolniente

Dati che è

al internn

.

delle uentitii

frec uentc

s, m

pesio

Si gUCnte. molte

del

n e

clelimitano

implicita.

l insieme

Esercizio

di per

f

Si

svritrchi

27.1-3

Si

estend uso

o

nube

delle

tre

pn

prillò

il

per

tlui o

f

mostrato

nell 1

fi

uva

-7.1 b .

che c nne I

insieinistic multipli. llllllllph iingoli

Si

mostri

C 1I ll1pt llvlc ollenuta

propriet5e

le

che

qu ilunqae wl

iunecn l i

un

llu.

detw iei ini

di

tlu io i iris,i

Ji

s .ili re superii r

in

tlusir un i

l re

di

idcitlici ei te

t vlla d

con

problema

un

ilu io tilt supcrpozzo

con Ct ll

e pozzi

sorgenti sor

emi

sol etlt . c e

viicver l.

e pozzi poi/O

558

Capitolo

27

27.1-4

Si

27.1.

il lemma

dimostri

l importante

per

il valore 27.1-5

Per

di flusso

la rete

G

ed

H

V,

coppia

di sottoinsiemi

X,

Y c

coppia

di sottoinsiemi

X,

Yc

il flussofmostrati

V peri

nella Y

qualif X,

V peri

figura

si trovi

Y . Si trovi

f V-X,

Y w-f V-X,

f X,

quali

27.1 b .

paragrafo

una

-

una

rete

di flussi fj

f,

f,

E,

V,

è la funzione

f, e f, due

siano

V x Vad

da

U

5

tutti

G

una

di un

V. Se f,

u, s c

gli

soddisfare

W,

fj

la somma

e f,

fi lC,

V

sono

flussi

di flussi

f,

un

in G, quali

e quali

delle

invece

tre

f un

Sia

flusso

a f è una

in una

funzione

Si dimostri

27.

1-8

e f,

sono

Si

enunci

che

da11a

di flusso

proprietà

può

sorgente

è iterativo.

un

a

numero

può

R definita

reale.

mostrerà

deve

rete

lo è anche

Il prodotto

scalare

il problema

di

un

1

f,.

flusso

massimo

insieme

convesso ogni

per

come

un

rete

di

del

cammino questo

con

parte

ogni

flusso.

che

Alla

caratterizza

tane

di

questo

Ford-Fulkerson

metodo

di

v

0 per

n.

f

possiamo

ed

un

inviare

cammino.

Questo

processo

aumentante.

Il

teorema un

produce

flusso

ripetuto

V.

flusso

un cammie quindi

finch6

massimo

flusso

del

maggiore.

viene

v e

ti.

gli

come

semplicemente

pensare

possiamo

processo

tutti

il valore

si incrementa

iterazione

il quale

questo

al termine,

l

inizializza

2

ivhile

di flussi

come

formano ef

che

t lungo

lungo

alcun

che.

si

non

taglio

minimo

massimo.

flusso

mostrando

che

a nell intervullo

0

se f,

do

4

return

Reti

residue

s, t

il tlusso esiste

3

in una

allora

Si

0. Ad

aumentante,

s al pozzo

trovare

più

27.7

Teorema

della

realizzazione

di valore

iniziale

il flusso

minimo

tagli

violare

.

f u,v i flussi

tlussi,

e sia

V x V ad

da

a

cf u,v

rete

dei

559

di esecuzione.

Foro-Fct.KERSON-METHOD G, 27.1-7

termini

particolare

Ford-Fulkerson

flusso cammino

come 27.4

f,

tempo

taglio

massimo in

V ad R. Lasommm

da Vx

no

R definita

presenteremo

Il metodo

Y.

funzioni

massimo

aumentando

fi u,

per

di flusso

flusso

il suo

cercando Data

un

analizzeremo

una

poi

flusso

teorema

di

ottenendo 27.1-á

massimo

Flusso

un

f a 0 cammino

aumenta

aumentante

il flusso

p

f lungo

p

f

l.

a

di programmazione

problema

lineare. Intuitivamente,

27.1-9

Il modello sola distinte

una

la

merce

uscente

del

tlusso

c u,

di flusso

vi

è un

massitno

di

programma

vertice

merce totale

La

t1usso come

tranne

sc,mma

dei

modo

amma

che

polinomiale totale

un

di

una

rete

di

netti

risolve

di tutte

dalla tlussi

di tutte

per

merci

merce

Il valore

c u.

merce

nel

modo

un

flusso

quella

Si dimostri i1 valore

lormulando

i

il

inviare

27.2

Il metodo

di Ford-I ulkerson

nettn

20

Data G,

il vincolo

E, .

V.

E,

orco

E l

come

reiidu

divcrce

e pr tilemi

re lirz zioni

di

cofs liftercnti

lluisu

reli

rciiduc,

ti1npi

caininini

di

esecuzione.

auincnt inti

Il nict xl cli

c la

li,

Qucitc

F r 1-I-u1kClii l1 tipi n 1e

Lli

i in i

ll111CI II11I. iiuli

.,ll

llusio

Si

t li

il

i CllC

è data

da

c

i

ed

inviare

una

coppia

di

u a v prima

da

con

t1uiio

f.

di flusso

netto

nd

fattosi

inviando violare i poiiono

4.

di

se

inteipret re

può

cancellatn

netto

i

f u.

esempio.

u a i prinsadi

t1usso

rete

i

essere

i onientit .

la capacità la

il t1ussu

16unithda un

5 unità

e u,

pun

altre

eli superare un

cap citè

i a u che

iurvndn

prima E

V.

u,

Quatsdo

1 è ZO. Questo

Il de

i pniionv

i.

u. della

l

i . Quincli.

ir,

G

x

l

c u,v

residua

di

G

indntt l

è

ch f

.

0

inpra.

ailticipato Ull

il

ed

inviare

oeni

aicu

ih ll i

ivte

esidu .

lllllllCllCIV

ed

rete

inviare

possiamo i

,

sull urco

di 4 uniti

netto

di t1usso

tlusso

che

una

dove

u,z

Quindi.

di

ili

è m g iore

la capacitò

addizionali

rete

i

u.

u a i-, poi,

culi

che

possiwn o

di cap citò

flusso

di 4uniticlu

iinitè

11. allora

c,

allnra

vi è un

apaciù

una

i

residua 4.

residua

archi

in G e si consideri

flusso

ic nn/e

gli

di avere

27.5

di superare

i

ud li

di tutti

si supponga

.

V

16 e f u,

seguente.

consiste

residua

formalnnnte,

t. Sia f un

netto

è la capacità

i

16 e f u,

di

s e pozzo

i

la rete

Più

maggiore.

di tlusso

c n.

f tl,

ed un flusso.

netto

sorgente

la r ap citò

il vincolo

lineare.

programina

con

e c u.

prima

di flusso

quantith

l

esempio.

è negativo,

non

E

V. La

C ll,

Ad

rete

la cap u.itè

y M,

da u a

trovare

multiple.

di

superare

in più

le p merci. di

legee

una

un flussn

V.

n. i c

è la sorgel1tc

inten giscono. per

v.

di ogni

le merci

il problema

tlusso

nettn

sorgente

di

fin.

C

è una

il vertice

in cui

diverse

esce dei

il tlusso

caso

di merci

che

valori

dei

nel

tlussi

i t1ussi netto

nserce

ogni

Vi

è t,

G

vertici

di p veràci

da u a i è denotato

pozzo

di flusse

di una

il flu san di p merci

ed un insieme

i esitsns

è s e l.unico per

il t1usso

permette invece

fs,s ...,s merce

è nullo.

è il flusso è la

algoritmo

dalla

indipendente

v . in questo

di ogni

consente

sorgente

merce.

quella

superare flusso

paragrafo

multiple S

netto

l.u icn

da un qualunque

il valore che

. Il llusso

i-esimia

per

in questo

merci

per

di pverticisorgestte r

del

o iI pozzo

introdotto

di flusso

t,, t ...,

conservazione

deve

di flusso

rete

tra un insieme T

po o Per

di rete

merce

dati

ammettere

possono

t1Lll iO

ti,

/ l ll.,i cl c

ll,ill

n.

i

Ill

llCllO

uu

puii

COI11p.,ll 110

27.1 ciicrc

Ct

ll..l

reo

l ic

fi,

ur

iciiilui

J l I l U à,

l..

7.Aih moitra i,

I

al

.ni he

i ll1,.1IL..

ic

arco

chiamato inustra

27.4 a

l1 UI ,l

LU

p s1l

Iu

b. ui

llè

lYc .

t llllClllC

resi Aro. nuovo

n ii

1,,

iu

iit

C 11,.

ire

l., ,

pui Il

t te

corri niente

ciw

11118

di

l lt .

rciidu,.l ii

L ll

E

G

Ci,. in,iltrL

l..llC,ll

O

i

iioio

Flusso

f

f

u,u

f u,e

Ol

Per

éyg

la conservazione

z

f n,

.

del

flusso,

u,v

gff rg l

v

c u,

c u,v

561

u,e

f v

f u,

massimo

si noti

che

tutti

per

gli

V-

u e

t,

s,

abbiamo

f u,v

g f u,v

u

f u,

g i g l

u

f u,

g e/I

00 V

0.

Infine,

If

d

abbiamo

lI

f s.

f

c 27

Figura

4

La

a

aumentante

in

p

arm entando indorra

rere

di flusso Ici sua

grigio

il flusso dal

della in

fl isso

G ed

il sso

capac

ità

fdi

revich it

capacità

27

figura

residua

è c, 4

lust o

b.

rere

La

bl

il

residua

4.

c v v,

g

casrmtino

G

armrenraitle

in

rete

f

g f s.v rg l

otrenuro

G

La

d

gr.

il c anuninr

con

ll /basso

c

resicltca f s.z

g r/l

c.

Ifl

i

ri.

compare

netto

nella

i

u,

f

un arco

in G da

u,

v,

c

u a i è negativo.

c,

solo

se

comparire

può

rete

f

originale,

in una

vi è un

Ee

i

, rete

t1usso v

c u,

residua

netto v

u,

f

solo

i au.

da

positivo

e

è positivo

se almeno

tra

uno

u,

i

u. ed

c v.

E,. u

Cammini

lemma

la rete

seguente

di flusso

residua

mostra

essa

G,è

la relazione

tra

stessa un

una

flusso

rete

di flusso

in una

rete

con

residua

date

capacitò ed

un

da nella

flussn

e.

Il

aumentanti

una

rete

Il canzonino

addizionale

Sia

G

V,

residua

di

E

una

rete

G indotta

dall equazione

di flusso

da f e sia è un

274

con

snrgente

un

f

flusso

tlusso

se

re

pozzo

in G Allora.

in G COll

Valore

sia f un la

f

g

tlusso

lungo

di

tlusii

f

f

netto

ione. e la

capacità

verifi are

Dobbiamo conservazione

cl I

iano

che

t1usso.

Per

i

l ,intisimine ria.

noti

i

i vincoli

1 antisirnmetria.

soddisfatte

t1usso

flussn

un

f.

argomentante

cammino

la definizione

di rete

neno

addizionale

positivo

residua,

p è un arco

ogni da

w a

camminn i

u.

su un

isolare

enza

il

arco

fCStCIUd

ptÙ

che

ed

lungo

è dota

ClllTll11II10 li archi

Trattando

fi no

violare

senza

SU gUCNlO

plCCOlQ

aumentáll te. inviare

possiamo

cammino

inviare

di p.

è un cammino

tlusso.

di questo

posiiamo

residua

27.4 b di

alcun

CC

V,

di un curnnsino

l,

la rete

a 4 un i th vincolo

di

residua

tlusso

netto visto

di capociù.

4. L l I11QSSllllQ uument inte

gU lllttt

p è chian1ata

d

f . c p

Dimostrai

un

rete

ogni

definit la opacità

un

G,. Per

figura

u na

arene di flusso

somma g

G,

della

co me

CllC IQ Cálp 1Cllù in G. Sia

ed

sull arco.

grigio

figura

E

V, residua

ammette

di capacità

Gf nella 272

G rete

aumentante

vincolo

rete

di Ausso

da s a r nella

cammino

originale,

Lemma

I.f I

il vincolo

si ha

Data

che

l

Poiché

compere

sempIice Si osservi

f s,

g rg

il flusso

Poiché

v

s.v

che

per

o ni

u.

i e

Il

min lemma

n

c, u,

eeg ente,

cui

arcu

di

p.

dimo.,trwi ,ne,.iene

oigcwtazione

l nr

precisa

è un

v

u, la

come

lasci,ta

E.,ercizio

7.

-7.

rei,de

più

preccdcntè.

abbiamo Lemma t u,,

f-

Sia

f . ,n

l

i f n,u

i vincoli

l n uurione

ili

cap Kit 1. 7.5 .

. u

f i

- ,f -t

Per

27.3

f ,u,i

fiu,v

f i,,

Il

llOl

Si

G

E

V.

detmiica

.w w

CI1

cina

una c

.

/ , w.,

f

Il.

l

n.

I

pel

tulll

gli

w.

l

j

rete

di

tluss i. -

tunrione

f se

n,i

-c, p

s,.

,,

0

altriincnti

p

si

Vx

f

l. -

è

su

u i i,u

un

lluiiu

R

crome

p

.

p

.

in

G

f

i

tiil

l1USs l

ill

s

C 111

V ll li

i/

baia

p

un

c imnsino,tument mt

in

27.6

.

E Allw-a

i

l

p

.

Ci,

l

562

Capitolo

27 Flusso

Il corollario cui

vaIore

è più

il flusso

mostra

vicino

al massimo.

di figura

f

Corollario

27.4 b

che

se aggiungiamo La figura

al flusso

f di

ad f otteniamo

f

27.4 c figura

mostra

un

il risultato

nuovo

flusso

ottenuto

in G il

dati

Sia f

una

rete.di

definita

flusso

come

f . Allora

f

I 2/12

aggiungendo

SA

Xb

27.4 a .

G

Ej,

V,

nell equazione è un

f

un

flusso

e si definisca

27.6 .

flusso

G ed

f per

in G con

valore

una

g

I I /14

un cammino

f

aumentante

funzione

g

g

p in G,.

V x V

f

S

R come

.

75

Figura I verrici

Dimostra -ione.

Tagli

in

Immediata

reti

di

dai

lemmi

27.2

e la

e 27.3.

Un

in

metodo

finché

di

taglio S.

copacirà

non

si raggiunge tra

contiene

cammini

nozione

di taglio

Un/aglio che

s c

per

gli

T

è c S.

La

27.5 netto

.s

un

lungo

flusso

massimo

è massimo

dimostrare

se e solo teorema

questo

se

cammini taglio la sua

dobbiamo

che

residua

non

esaminare

prima

G

non

nel

di

eccezione

del

si richiede

che

s c

è definito

come

f

T

S.

ad

di V in Se T V taglio che abhiamo

partizione

det nizinne

24,

e che

il taglio

è una

alla

Capitolo

orientati

attraverso

E

V,

è simile

minimi

bi tncl i.

Il flusso

l

S

aetlr

arrraverso

l 5.

6 T T

,.

v,.

è f

S,

t.

T

19

ripetutamente

il lemma

27.1.

abbiamo

f S.S

.f S.ai

minimo.

rete

271 b .dove5

Tsolv

26.

f S,1

aumentanti

in

quelli

f s,

t

f s,

l

la

s. r

fS

fI

di 11usso

definizione

che

Il teorema

f1ussn

il flusso

nellaretediflussodellafiguret

fatto

S e r c T.

S,

che T.

qui

Un

usato

si tratta

Se f è un

La capacità

Stele

di

altro

limitare

tagIio

in mediato cioè

27.3 .

Un

t1usso.

del

corollario

zione

che

del il valore

corollario

del

il valore

di

un

lemma

27.5

lemma di un

è il risultato t1u so

che

è il tlusso

netto

abbiamo

dimostrato

che

nel

entra

27.5 mostru

come

si possono

usare

nell equa-

pozzo.

le capacitò

dei

tagli

per

flusso.

T.

figura

f v,,

T

Usando

di tlusso.

rete

Questa

netto

ripetutamente

massimo. che

Per

rete

di una

invece

è c S,

Il Gusto

in una

T.

il flusso

flusso

aumentanti.

di copertun

orientati

grafi allora S,

S e r s alberi

un

ci dice

poco,

T

5,

aumenta

T

ignei i. merrrre

Dimostra-io ic.

flusso

Ford-Fulkerson

dimostreremo

TA

5 sono

f s,Ti Il

563

27.4

Siano

f

seguente

nwssimo

mostra

il taglio

s

VA l

questo

taglio

è

attraverso i,,

f ...

n

f v,,

v ,, v ,

t

nella

rete

di flusso

7.

di tlgura

1 b.

Corollario

27.6

Il valore

12

y

-4

citò

l l

di un

Ausso qualunque f in una di un qualunque taglio di G.

rete

di

tlusso

G è1imitvto

superiormente

dalla

capa-

O

19

e la sua c vi.

capacith

Dimostra ione.

è

27.5

v

c v.,

v

12

ed

Sia

i vincoli

T

S.

un qualunque

taglio

di Ge

sia

f un qualunque

flusso.

Per

di capacith,

14

26. Ifa

Si

n .,-ervi

vertici.

che ma

Il lèmma un

il flusso

la capaciù arguente

qu i1unque

netto

taglio

attraverso

di un

t ii lio

mostra

che

della

un

tu,,lio

può

è compo ta il valore

con,prenclere

inter ni ente

di un

flusso

da

in un i

t1u,,si vulori

rete

non

è il fluivo

netti

tra

ne,,rtivi

negati netto

f S,

T

ES

i gl

i f u.

i.

rete

gc i. .

Lesiona Simun il

f lucio

t

ittraverio

T

.

27.5 flusso netto

il1 Llll t ittraverio

lCte

eli S.

f1ussn T

G è f

con 5.

si rgente Tl

-

se f

j.

pozz i

re

sia

S.

T

iran ta

li di

G.

Allo

i.

Si..imovra

jiiottti

per

ctinlo trarc

l iinp, rt,.intc

t rema

t1usso

n1..ii.,imo

ta.lio

n1inim .

il lemtlsa

massimo

Flusso

5á4

Capitolo

565

27

41

Teorema

27.7

Se f è un flusso condizioni l. 2.

La

3.

f-

in una

rete

G

di flusso

taglio

massimo

flusso

con

E

V.

minimo

sorgente

flusso

2 3

1

s e pozzo

le seguenti

r, allora

equivalenti

sono

f è un

Teorema

r

al

massimo

il

in G.

Vq

rete

residua c S,

G

T

non

f

un

per

taglio

qualche

di G.

T

S,

1 4/14

aumentanti.

cammini

contiene

7

Dimostrazione. G

abbia

dove

un

l ipotesi

che

Allora

p.

è un un

f sia

che

assurdo,

per

27.6 ,

si supponga

3

cammini

aumentante

dall equazione

contraddicendo m

si supponga,

2

cammino

f è dato

2

m

1

flusso

27.4, valore

in G con

la somma

dei

strettamente

che

in G ma

massimo

flussi

f

b

f,. di g .

maggiore

massimo.

flusso abbia

G, non

un

il corollario

per

flusso

f sia

che

cammini

aumentanti,

cioè,

che

non

G

contenga 12/12

da

s a t. Si definisca

V

esiste

3 A

S

v e

un

canimino

s a v in G

da

t

V

e T

5. La

è nessun che

u.

f

Quindi.

dasa

v

v

c ii,

Perii

implica

27.5

quindi

f

27.6,

f sia

un

vertici

coppiadi

abbianto f

f

ai

flusso

s c

ovviamente

aurenuno

altrimenti

corollario che

taglio

Perogni

t in G.

perché

il lemma

per m1

3 T

cammino

è un

T

5.

partizione

c S.

che

S,

T

T

per

inoltre

u e vtali v

u, c S,

tutti

S ed

c

che

r e

i e

ii c 5e

i sarebbe

E.e

vi

non

S perché

T. abbi

cl

mo I l ila

S.

nell insieme

T. i tagli

T.

S.

Lacandizione

il

c 5.

f

I l

R

massimo.

3

/ Cl

Algoritmo

Ad

di

ogni

iterazione

p e si aumenta che

metodo

del il flusso

calcola

segue

di

Ford-Fulkerson

p della

tnas imo

il flusso u, v di v6tici

tra

ogni

coppia

un

arco

in nessuna

V4

di Fard-Fulkerson

4tngo

f

base

capacità

io

residua

c,. p .

cammino

qnal vtque La

aumentante

realizzazione

del

1

nsetndo

l

3 /

in un

che

si trova

G

grafo

il tlusso

iiettog u,

Ir

O

collegati

sono

E aggiornando

V, da

un

arco .

Se

a e i beton

ono

collegati

da

e l

t

s /

che

la

capacità

c si,

v

da

campi

viene

con

c u,

da i

variabile

0 se

secondo che

S,

ogni

E.

E

arco

fornita Llllcl

In

i vertici

in tipica

e le loro

la formula

temporanea

for

u,

implicitamente

venga

v v

con

FORD-FL LKERHOV G. 1

a

u

memorizzati

calcolata

assumeremn

direzione,

f

tempo

liste

Li nel

c, gr del

residua

da

una

puo

es ere

capacitò

codice

cammino

f

residua è in effetti

c

r

assume l

tunzione ottenut i c,

u.

i

CUOIO Ll11 l

p.

flll, iSCI i

w.

0. Il codice

i

c u.

di ndiucenza .

la cap icitè

u.

i J

costante

realizzazione.

L espressione

27.5 .

memorizza

che

llllDSir ro.

EG

for do

i

f n,

n ani arco u. do

7 3

u

f i, hile

5

e iite

un

do

r

emnmino

quanchi

lo tratii mai

p

p inin

da

s a

c

w.

t i eli i j

ICiidua

ritc n,

i

è

in

G

f

iui ik

w.

f

i ime

un i

firiiii n1c.

f jv.

rj r

w.

i j

c,

p

lillec

l-3

f

n.

I

p

Llll parentcii

in p i

0

,Y 4

i

m0

CSCCLI/i 11C

C lIllpiollc.

LC

illi/i lli / ,lllo

il

l Illeso

f

l 0.

5

Capitolo

27

Fiusso

Il cicIo

while

il flusso

f lungo

p della

f è un

flusso

il flusso

delle

linee -8

trova

capacità

ripetutamente residua

c

un cammino

J p.

aumentante

non

Quando

esistono

p in G

ed

cammini

più

massimo

aumenta

aumentanti,

massimo.

4 s

S

t

equa

gg

g

t

della

Il tempo

di esecuzione

aumentame

p alla

il valore

del

valore

un

flusso

in cui

Se

sono

tutte

tempo

f , dove

il valore

perché

Il lavoro modo

tempo

alI interno

efficiente

mantenere E

una v

u.

è quindi G. gli

la

un

1000000

di flusso

valore

1 dopo

la seconda

figura

27.7 b .

una ll

dispari

unità

limite

Qll1piezza dove

o ani

modificato

per

si

realizza

cioè

se

arco

ha

alguritino richiede

tempo

il valore

totale

di sc

t. Se

il primo

mostnto

nella

s m le

S

M

aumenti.

7.7 c

tigura

l

Lt M

r

nelle

incrementando

rete

il

il

tempo

i

caicolo

C lllll111l1Cl

diitawa

di

di

Edmo ds-Kart .

iella

rete

residua

distanze

vertici

dei

denotare

per

nella

la distanza

di Edmonds-Karp

G,,

cresce

Dimostra-ione. aumento

Si

rete

di cammino

i iene

eseguito

monotonanunte

il f1usso

f

supponga

di flusso

ap s,u

in

il flusso

che

con

assurdo

per

faccia

subito

residua

G . Il lemma

minimo

da u a v in G,, dove

.

unitario.

lll1

l lB1miA i

Chiameremo Dimostri imo

neil urini vi il or t

da

metodo

del

che

pu

con

s ali

che

6. s.

.s.

Àq. s.

Per

nella

arco

su una

rete

di flusso

G

F

V,

con

sorgente

ogni

di fTusso.

aumento

che

decrescere

8,

per

un

i.

Sia f il

.

qualche

i c

vertice subito

flusso

V

s,

t

esista

un e

dell aumento

prima

Allora

dopo.

v

6

s,

ii .

Equivalentemente.

che,

assumere

posai imn

tutti

per

i vertici

u c

t, 6, s.

u

8.

implica

ora

la proprietà

8, s.u

un

cammino

s,

i

minimo

i

t

a v pritna

tlus o

abbiamo

27.7 .

6

rete

8. in G

p

s.

u

.

della

27.7 forma

- n

s

il

i e consideriamo

quittcli

s,u

,

-

i.

ch

.

zii 11uiso

in C,

S

f

u,

-

,-

.,-,

dell...alimento

c w, .

allora

pel

r nel

chiare viiit

rete

riiiclll I.

Eclmondi-

á

s.

8

S,V

ts

netto

11 lCllll11Q

l .

i in

c i di

uiso

chi

contr icldicc

I ij oteii

che

l

illl11i. Ill 1

li

l1lric

lcctvmcnti

f da

abbi,tn o

ali

un

Ford-Full crini

I ulgoritino

la

ogni

lw

In questi

pari.

Lvl .Rins

i linea

seguente

.

8 s,t

Prendiamo

27.7 b .

i

i1 valore

F en-FL

pr cedura

cammino.iumei tante

ùllllll lll 111li

peso

O VE .

esecuzicme elci

usa

risu1tante.

residua

aumentante

s

iterazioni

1.

27.8

I algoritmo

t e altre

la risultante

ementante

capacità

sulle

i

di

massimo u

mostr to

mostra

il can mino

.

ff .

ttgura

r, come

f

unitaria.

Se

V

27.7 a . nella

si basa

distanza

tali

s

figura

ha

sia

una

esempiodi

flusso

8E

tempo

mostraun

camminino

i

si usu

il tempo

è mostrata

ed f su

è piccolo,

Un

te,npo

in

in G

OE

La

puè

w

f

di

flusso

se

e

richiedere

dove

quindi.

il cammii o

risultante

Al.llt1lltC

di 20000ù0

27.7 a è grande.

f

v -

2

OE

con

8, u,

Legna jf

v w 0. Il tempo

u.

f

quale

per

FoRo-Fvt.wERso

lelinee

E,

un

richiede,

f

seguono

liendo

archi

OE vhile

figura

se

residua

anche

la

un

assuma

V

è, di conseguenza.

La

di fl isso

Si

Dato

i -

c ir.

massimo

per ha

G

di dati.

che

ciclo

flusso

s

G sono

è quindi

aui ientantc

modo.

aument mre

notazione

se si gestisce E.

di flusso

volta.

iuperior e

rete

aui

rete

inoltre,

al massimo

V.

orientato

tali

del

t, come

ed il cammino un

alla

avrà

canunino

iterazione.

G

struttura

di G

di tlusso

unith

u

in questo

nella

basso.

rete

grafo

residua

di

in ogni

rete

intere.

Infatti.

eseguito

c

b Una

a

caso

scalare

dall algoritmo.

la

FoRn-FuLKERSON

i cammino

il t1usso

si eftettuerebbero sola

migliorato

Karp

trova

cbntinuare

nel Ie iter ziani modo

iterazione

v

rete

rete

Lu

siano intere

efficientemente

in questa

iterazione

il cammino

è s m

nel

Foan-FuiwzRso

viene

unità

un

Càli archi

vsasur è

1000000

iterazione.

ad

u,

di

V

in

di dimostra-

capacità

I

a 7.7

Figura

ricerca

trasformazione

4-8

realizzare

il valore

semplice

la prima

allora

Si può

ed

seguono

da FoRo-FULKERSON

residua

una

effettuato

archi

di

FoRo-Fut su

essere per

Og si

intere

2000000

di una

in una

di esecuzione

linee

almeno

E.

gli

cammino

sono

ha valore unità

sono

Prima

le capacità

opportuna

trovato

delle

ed i Actssi

o in ampiezza. totaIe

s

una

d esecuzione

con

realizzazione

massimo

usata

u

i,

e tutte

q

terminare

necessariamente usando

il tempo

si presenta un

cnnispondente

G

residua

accadere

può rete

dati

non

raggiunge

polinomiale. per

arbitrario

usare

while

puo

dati

rete

trovato

Se

di

dell algoritmo

ch

questa

while

E oppure

le capacitò

esecuzione

ciclo

le capacità

il tempo

Quando

del

trovare

per

ed

aumenta

di

e

in profondità

OE

flusso

mantenere

della

necessario ricerca

v

u,

facile archi

del

tempo

semplice

il tlusso



non

il cammino

anche

L analisi

si può

il ciclo

struttura

modo

determinato puo

è scelto

superiore

massimo

una

8E

struttura

in

viene

ma

richiede

di flusso

caso,

come l algoritmo

aumentante

limite

scelto

razionali,

d esecuzione E f

volte

I algoritmo

In questo

1 a è richiedono

il cammino

però

sia

da male,

successivi,

un semplice

numeri

intere.

è fatta

incrementi

il problema

pratica

dipende

scelta

allora

aumentante

nella

renderle

ciò

massimo.

otterremo

il cammino

le capacità

da

con

23.2 ,

risultato,

Spesso

4. Se questa

aumenta

paragrafo

re questo

se

di Foro-FVLKERSON

linea

di flusso

ampiezza

FoRo-Ft r.rvasov

procedura

g

9g

lg

Analisi

5á7

I i cliit iny. t

Ia

i t i.

25.3

i

558

Capitolo

si deve

Quindi, aumentante

avere

p che

era

v

ri,

f stato

c u,

scelto

in

i , il che G

per

significa

che

G

produrre

v

n,

.deve

e

E

contenere

Di

il cammino

Ora, l arco

nella

v.

u dalla

anch

essi

di u in p. Poiché

prima cammini

minimi

p è un

cammino

25.1

lemma

minimo

e quindi

da s a r, i suoi

abbiamo

5

sottocammini

u

s,

5

I.

Di

adiacenti

che

zione 8 s,

v

d a s,

u u

s,

v

8

che

2

teorema

ipotesi

ogni

fornisce

un

limite

superiore

al numero

di iterazioni

dell algoritmo

sorgente

itnazione

di FoRD-FULKERSOY

di metodo

s e pozzo

r, allora

i iene

il numero

eseguito

totale

una

su

di aumenti

rete

di flusso

di t1usso

eftettuati

G

V.

dall

algoritmo 27.2-2

Diciamo

aver

che

aumentato

un

il flusso

scompare

dalla

n e v due critico

vertici

durante

aumentanti

sono

u

8 s,

Una

volta

può

ricomparire

cha

nondecrescee

arco

ti.

r

lungn

un

cammino

rete

residua

inn

in V collegati

in una

tre,

da

l esecuzione

cammini u

rete

residua

G, è critico

su

un

aumentante,

su optai

ogni

cainmii o

arco

critico

aumentante

lungo

li

Si

essere

può visita

una

è

0 VE .

un

tempo

R

critico. in tempo

realizzata

L algoritmo

OE

nel

presentato O VE

che

il taglio s.

i,.

il

quando totale

d esecuzione

il tempo

in ampiezza,

d esecuzione

27.4

paragrafo

base

la

costituisce

27.5.

paragrafo

è il flusso

qual

di

mnstri

attraverso

v, ,

i..

r .

Qual

di flusso

della

i

taglio

questo

dell

l esecuzione

di

algoritmo

sulla

Edmonds-Karp

rete

27.1 a .

vi è almemo

un

diventare

un

Meli

esempio

sono

figura

della

27.6,

minimo

il taglio

qua è

mostrato

Tra

i cammini

aurisentanti

cantini

che

annull uro

il flusso

i due

minimi,

un

arco

in E. Quante

dell algoritmo quando

di

i.

v

volte

n,

Edmonds-Karp

diventa

critico

i

può Poiché

per

la prima

il flusso

volta

che

compaiono

era

stato

al

comsporide

che

che

flusso

nell*esempio,

inviato

quali

precedentemente .

viene

accadere

puo

in G quando

l arco

u.

altro c mmino , solo . e i i,

si verifica

rf

f.

t

che.

e tlusso

Ricordiamo con

aumentato.

su di un

Si dimostri di capacitò

questo

i

scompare

della

aumentante u

compare

evento.

allora

finché . su

un

rete

residua.

il tlusso

cammino

Egeo

non

da

ir a i

aumentante. ir

See

netto

5, s.

i

á, Bi s.

che

c,

per

il lemma

27.8.

si hz

i .s, v u

di funzioni

coppia

qualunque

u.

c i,

ii

c u.

che

converte

una

e pozzo

singoli,

c, i,

tr,

degli

con

archi ha

risultante

un

nel

la costruzione

e pozzi

in

multipli

ie

E nito

rc.te

con

dimostri

Si

infinita.

capacità valore

27.1,

para rafo

una

li

urihi

s

in

della

iorgente che

di flusso

rete

aggiunge

capacità

h Inno

rete

nella

flusso

qualunque originale

rete

finita.

abbiamo Si

che

supponga

ogni

sor

ente

unità

di

un

con

problema

l

8,. .i,

8,, s.

che

sor.enti

esattamente

p

flusso.

che

I

mostri

sor

ente

Si

linuiilri

e

si

pili

nel

sin .oli.

po zo

2 . 27.2-7

il

lcn nia

il

trasformare

actdizion ili

vincoli

questi

l

come

cosicché

t

f V.

Z7..

prohlcmadi

prohlim i trovare

e

iorgenti q.

Inoltre,

di

trovare un

flusso

ttn

flusso

massimo

multipli

pozzi

che

supponga

si

dnve

uniti .cocicehif V.t c

ognipoiznt.consun1iesattamente i Si

u

si ha

c ed f.

u. i e per

di vertici

coppia

ogni

per

abbiamo 27.2-5

tardi

più

27.2-4

i cammini

produca

Poiché

s,

del

OP

figura27.1 b ,

Nella

massimo

il

27.2-6

á

a-

dall ossen

segue

cammino

l .

i. , e questo

è il flusso

S,

esecuzione

l intera

teorema

può

possona

ClltlCO.

Siano

8g

del

che

con

E

2 7. 2-3

f

ottenere

per

è lu capacith

0 VE .

Dimostra-ione.

dei s,

con

trovalo

Edmonds-Karp

di tempo

figura

arco

viene

un

272-1

di Edmonds-Karp

è al massimo

BACO

ha

durante

critici

v

ri.

Quindi, vertici

di

27.9

l algoritmo

cammino

un arco

almeno

aumentante

di archi l enunciato

quindi,

,V -2. j di

di

irraggiungibile

diventa

coppie

OE

diventa

distanza

Esercizi

Teorema

Dopo

vi sono totale

il numero è O VE

esso

è al massimo

distanza

Poiché

cammino

aumentante

dell algoritmo

inizia1e.

Edmonds-Karp.

Se

ogni

algoritmo

fornisce

la nostra

Il prossimo

dell

s,v ,

contraddice

residuo,

I

cammino

8q s,

in un grafo

in cui

ai momento

La

di 2 unità.

almeno

esso

in cui

al momento

critico aumenta

I

Poiché 8

vol te.

di Edmonds-Karp

algoritmo

la sua

si verifica. OV

diventa

sorgente O e fino

almeno

massimo

al

v

u,

di ic dalla

mai

se questo

critico

essere dell

conseguenza,

in cui

momento

la distanza

è, inizialmente,

sorgente,

diventare

sono

v

s,

critico.

sorgente

dalla e i compare

dal

conseguenza.

nuovamente

4

massimo

Flùsso

27

p, f in

che una

g

q

soddisfi rete

ion

.

570

Capitolo

27.2-8

Si mostri una

da

un

che

flusso

sequenza i cammini

minino

massimo

in una

di al massimo clopc

aver

rete

G

il flusso

trovato

E

V.

essere

può

aumentanti.

cammini

E

sempre

ricavato si deter-

Suggerimento

massimo .

7

27

9

La

contrettività

che

devono

per

archi

di un

orientato

G

flusso.

archi

di un

rimossi

per

per essere

albero

è 2. Si mostri

archi

El

V,

ognuna

è I. mentre

come

determinare un

vertici

OV

orientato

è il minimo

il grafo.

Ad

per

archi

la connettività

si può

eseguendo

con

non

grafo

disconnettere

catena

di archi

di flusso

massimo

k di archi

la connettivith

di una

la connettività

algoritmo

ed

numero

esempio,

ciclica

di

di un grafo

su al più

non reti

g

di

archi.

OE

272-10

Si mostri

che

l aIgoritmo

Sug erimento á

ogni

per

tra

t

u,

di Edmonds-Karp

istanti

gli

arco

in cui

u, i

u.

termina

v.

si

dc po

considerino

aI più

V

i cambiamenti

di

6

e

n

s.

b

a

14 iterazioni.

E

cardinalità

con

è critico .

Un

27.8

Figura

in un

massimo

massimo è un

Vi

sono

di tlussn.

In questo

p uagrafo

proprietà

di

altri

massimo

riformulati

con

in etTetti

di questi

uno

presenteremo

hanno.

ridotti

problemi

come

multipli

e pozzi che

essere

possono

facilmente

sorgenti

cnmbinatori

problemi

che

ma

essere

possono

di tlussn

il problema

esempio. le reti

con

combinatori

problemi

del

paragrafo

in apparenza.

ad un

un

a che

poco di tlusso

problema

trovare

di tlusso 7.1

problemi

non

risoh

ere

di

il problema

cui

di abbin mentn

di Ford-Fulkerson

metodo

il metodo

gode

di

ne

Un

b

abbinamento

di

problema

un

tale

che.

abbinato.

er fo per

non ogni

Un

vertice

G

i e

Val

abbinamento

di

bipartito

G

hipartito

u

un

G

grafo

anche

nel

massimo

due

V.

che

si pub

rete Dato

27.9. modo

in cui bipartito

dati

grafo

V.

Ej,

mas inso

nassis ro

27. 5

E

in

un

grafo

bipartito

un

nbbinamento un arco

è un

è un

di M è incidente

abbinamento

di

di

sottoinsieme a i. Diremo

Cardinalitè

urchi che

massim .

M

c

E

u c R,

G è L u

di

è definita

E

V.

r sono

s ed il pozzo

la sorgente R. gli

archi

orientati

ogni

arco

in E .

di G

e

e E

u.u

C Rj

G V,

un vertice

ciOi

LII1

flusso

di E

illuitra

Is nozione

corrispondente se f w.

interi

v

è un

Si

intern

flusso

un

che

dice

v

u,

perogni

su

f

e

Vx

L

u

tlusso

di

rete

una

V.

27.10

Lemma G

V,

un

E

di

fliisso.

in

G

con

W

con

bipartito

grato

rete

eardittalitè

in

abbinamento

$1

f

V

vertici

dei

partiziotlC un



Se

R

e siu

un

esiste

allora

G,

G

E

V,

l

interi

a valori

flu in

..

di abbin n ento.

ih w.

G.

s

Si

detnsisca

il cammino id

eccerinnc

f

r

fi,

s

w ihc

nel

modo I

f l. ogni , per

un

che

Primwzostriaino

inique.

intuitiv mente.

ili n u cl ine.

G

è a valori

n G.

ad un tlusso

direttamente

in G corrisponde

un abbinamentn

che

mostra

ad

unitaria

capacità

una

si assegna

la costruzione. seguente

rete

nella

interi

poiiihilc

G

nel nella

mostrato

cotne

corrispondente s. t , dove

vertici

dei

la partizione

in V. Se

u e L,

completare

Per

e f

numeni

V u

grafo

s,u ueL u u,ai

Di nostra-

masiin o

di flusso

in un consiste

da

abbinamet,to

I a figur i

rete

E.

abbinamenti,

agli

è V

G. l vertici

di

L insieme non

il flusso

VA e

in

polinomiale

corrisponde

massimo Il trucco

abbinamento

un

trovare

per in tempo

E

V.

di tlussn

nuovi

corrispondereste

V baia isolato.

abbinamenro

Un

a

bipartito

Ford-Futkerson

un

seguente.

vertici

il

mediante

E

una

costruire

Sia

in

R.

L u

3.

cardinnlità

O VE .

massimo

orient to

con

V

i ertiti

dei

pani-ivne

massimo

il metodo

Il teorema Dato

poh

massimo

abbinamento

U v,t v

Il

El

V.

abbinontento

usare

figura

fare

massimo.

abbinamento

vedremo

Ford-Fulkerson

massimo

in tempo

2.

G

orientato

sono integrith

bipartito

bipartito

grafo

Si può Alcuni

grafeo

un

di

Ricerca

Abbinamento

R

I.

R

27.3

571

massimo

Flusso

27

vico

ir. 1. Inoltre.

s e t.

Per

se

tutti

per

eli

n.

altri

indotti

i caissmini vcrificarc

lie

i

jioddiit

t f.

C

rchi id

corriipnnde

e,tl

in

M

obb n mento

seguente

un i

i

n

f s. e

E

uitith

cli

li archi

iii

l mtiiimmelria.

un

ad

corrisponde

ùllora

r.

Li,,

G

ii

in h no

a valori

flusso

u. f

pun .i

tluiiu hf

f

f

tl

0.

u.

uttr iveri i

G che vertici

i vincoli

v.

di...iunti. di

cup tiitè

I

572

Capitolo

27

Flusso

Teorema Se

27.11

la funzione

dal

capacità

metodo

ogni

di

Dimostra -ione.

R

b

27.9

di figura grigi.

h

grigi

da

sere

La

27

8 con

La

di flusso

corrispo tdenre dei

pz rti.-io ic

corrisprwdenre

L ad

ora

ad

ertici

rete

di

R corris rondono

a

V

L u

in

m

Corollario bipartito.

grafo

R.

Un

s ella

G

fl sso

quelli

un

abbinameiiro

abbi amento

bipartito

grafo

nn.esimo

è ii dicato

quale

ll

a

uir

massimo

è mostrato inassiino.

flusso

sul

V.

dagli

ai chi

Ogni

bipartito

grafo

G

La

E

arco

27.

massimo

Per

del

lungo

uguale

è sufficiente

di questi

AM

quindi,

u

u,v

v

L,

C

osservare

cammini. il

per

il viceversa

dimostrare

.V

flusso,

ognuno

a

u e

e

R,

chef

Il flusso lemma

sia f un

g

L ha

u c L ha al inassinso ogni

per

n s

t1usso

0

ottenuto

attraverso

il taglio

valore

il

a valori

essere

puo

netto

27.5,

f u,v

v c

unità

abbiamo

un

di

interi

del

in G

con

R abbiamo

Per

che

sul

numero

induzione

corollario

Usando

s , Ru è

un

R tale

netto

unità chef u.

Pniché

pnsitivo. lgnsieme

M

s,

flusso i

netto

per

t

un

tlusso

del

capacità

in esso.

Poiché

entra

al massimo

jf

M.

può

del

teorema

arco essere

o zni

quindi.

f è a valori

in u se un

simmetrico

nell enunciato

è 1

in un

di

iterazioni

la

per

lasciamo

al

lemma

27.10.

grafo

bipartito

lemma

27.10,

G è il valore

di

un

flusso

G.

introdotti

in G e che

massimo

il Teorema

in C con

e sia

sua

positivo

1 quindi,

un argomento

definitn

e la

entrante

positivo

di

ii ,

massimo corrispondente

i simboli

massimo

modo

analogo,

è un

abbinamento

nel

e solo

uscente

se da

portato

Poiché

vt

è

il valore

u puri

mas inso

si puo

creando

o

mostrare

che su

si

suppnnga

che

flusso

in un

in un

ad

un Ausso

massimo

e bipartito

G,

M

il tatto

M

sia

massinao.

hanno un

un

Allora

Valori

interi.

abbinamento

che

M

M è massimo.

in corrispondente

In

abbinamento

in

G

dal

flusso

è OV

in tempo

ha

trovare

possiamo

il metodo

bipartito

grafo

bipartito

grafo

in G

cnrrisponde

contraddice

eseguerrdo

G,

negassimo

massimo

sia

le capacità f

quindi.

non

5

di flusso

ni abbinumen1o del

se f

Poiché

g.

e questo

W è

orientato

l abbinamento

j

f in G

t1usso

G.

non

grafo

jf

interi

ifj

g.

la rete

che

valori

ha

f

massimo un

il corrispondente

in G tale

f

I I anche AM

dato

direttamente

interi,

27.

cardinalith

Quindi.

cioè

abbinamento di flusso

a valori

si puo

ed

interi

al massimo

di conseguenza,

abbinamento

Ford-Fulkerson

di

massimo cardinulitè

un

n in L.

trovare

ottenendo

f cosi

un

trovato.

R

OV,

abbinumento

VE .

O

ogni

per

è effettivamente

un

credere ogni

che arco

AM ,

si osservi

f e

u. ed

E

iI fatto

M,

che.

per

abbiumo

che

non

f w,

vi sono

ogni i archi

venice 0. Di da

abbinato

u c

conseguenza,

L. abbiamo usando

I

u

f s,

il lemma

27.

l.

27.3-l i

Si eseguu

l algoritmo

si mostri

L a t. otteniamo

Ia rete verso

d 11 alto

di Ford-Fu

residua il bassn

dopo da

Ri

f L,

1f ,

f

J

L,

L

f L,

f L.

s

f L,

0l

f s, Ifl

i

Si dimoiai

il Teorema

di tlu so

t1usso.

in R in modo

aumentante

più

della

figura

numerino

Si

analogo

da

6

in ordine

iccolo

27.9 b

e

i vertici i 9.

in L

Per

ogni

les icograhco.

27.11.

i

27.3-3 -

l11 liii111 i

Sia di

ill

i

ciegll llclo

ull

llgolill11

li

llilii

tll liiilllo

iu

Ci

.

I.

G

E

1,.

flu sn

F ir l-f ulhcrson

tiiit i

cici lu tli1 i

non

puti

n ii

virili trii.

un

bipartito

grafo

corrispondente. c tmmino

Ft i

vrtcsnr

Un

abbigliamento

con dia

Si aumenta ltd

dei

partizione

iin

buon trovato

limite in

vi.rtici

V

superiore G

L v alla

cturnwc

Re lun

s

V.

die

l

si

la

Q

hezz i

l ciecu ione

rete

di

un

Fnao-

di

.

llllicii

27.3-4

di

iI camntino

rete di

0

f s,L

qualunque

.1bhii1 1tlleilt 1

scelga

sulla

aumento

t 27.3-2

0

iterazione,

kerson ngni

I a 5 e quelli

l

meiiiih

intero.

prodotto

Inoltre.

Esercizi

l antisiminetria

il

è un

f

intero.

paiven u.

abbinamento.

e, per

il seguente

un aumento

Lu

flusso

un

rete

Dimostrazio re.

di

.

entrante,

di Austro

i e

netto

arco

che

vertice

un flusso

portare

solo

un

un

L.

esattamente

è per

v

u,

massimo

valore

12

nella

massimo vertice

Ogni

di f

il flusso è un

f

Ira

esiste

e la conservazione

è

allorh che

27.3-2.

dimostrare

cardinalità

abbinamento

di flusso

interi.

proprietà

u e v. il valore

dimostrazione

Esercizio

valori

della

573

L

a Figura

solo

gode

vertici

La

come

Possiamo L

di integrità

c assume

Ford-Fulkerson

coppia

lettore

Teorema

nurssimo

E

è

perfetto un

grafo

R.

Per

non i

ni

un,ihhinanlento

oricnt ito X

c

L.

c i ip irtil ii

clel inisc

in coi l ivlr rnri

cui

i

p,irti iiine ali

ni

vertice

i

ilei

vitlici

.V c ll11C

lbbii ato. l

Sia t.

u

R.

574

Capitolo

27

Flusso

NX

y

cioè

l insieme

teorema

Un

tutti

ogni

elemento

di

in G se e solo

perfetto

X.

Si

dimostri

L algoritmo

se

a

E,

dove

della

ha

rete

V

L v

R, è d-regolare

bipartito

grafo

d-regolare

jA A f

un abbinamento

di flusso

se ogni

ha

per

vertice

di cardinalità L

comspondente

ha

v e

AR . Si dimostri

L

V

che

mostrando

capacità

archi

Algoritmi

hanno

due

vertice

ha essere

può

che

solo

paragrafo

da

veloci

algoritmi

flusso,

come

metodo di

di flusso

dei

che

l algoritmo

una

Fulkerson.

di

aumentante,

di

algoritmi

mantengono mantengono

l*antisimmetria,

entrante

del

u è chiamato eu

f V,

Si dice

che

il flusso u

di

su un

capacità

dalla

eccesso

G

in u ed

vertice

tatti

che

volta,

è una

n e

è nnn

un

V

zione

cammino

del

flusso

funzione

durante V x

f

s.

Quindi.

Il tlusso

V m

della

netto

i gli

il flusso in un

è stato

u e

V

s,

t

è traboccatrte

termine.

Per

Cominceremo

pref1usso e ne

questo

esamineremo innalzare ed

analizzeremo

descrivendo

paragrafo le

due un

operazioni

nd

t1usso

vertice.

la correttezza

Infine, ed

il tempo

vengono

che utilizz te un

presenteremo

il metodo

guida dal

metodo

dei pret1ussi. -inviare

g enerico

eli

il pozzo

V

s.

nel

la

massima Quando

serbatoio

del

sono

attraverso

per

l altezza.

aumentata

saturo.

ancora

caso.

aumentarne

non

esso

non

un opera-

inoad

Quindi,

dopo

cui

venire

può

saturi liberare

una che

unità

il vertice

inviato

del

attraversa

ogni in un

preflusso nei

i vertici

solo

taglio t1ussu

serbatoi oltre

V, i erso

i Li 1 flusso

i ancora -legale,

limitata

vertici

cioè l

oltre

una

le/ lie,

illd

dalla

l algoritmo

l altezza

volta è all he

tutti

della

stesso.

la sorgente Ottenuto

sorgente,

sono

la

quindi

stati

il

cOntiL invio i flussi

cancellando

i serbatoi

sarà

pozzo

taglio

vérso viene

re ilizzato

Lln flll so

al

del

rimanda queStO

di fatto

cl1e

fino

di capacità,

capacitò

prefissata

viene

rete

i vincoli

traboccanti

sorgente

vedremo.

Conce

rispettano

dei

la

attraversare

può i tubi

perché

svuotati,

il

lllJssil110.

di

base

rl esecuzione.

Sia rete

che

al1 ittdietro

ilOrl

diicui inne di

vertici.

na

da

lo

pozzo

L algoritmo

s.

In qùe to

viene

ha un tubo

uscente

taglio

w e che in alto.

occorre

potenzialmente

arrivare

può

raccolto

11usio

G

V,

E

come

un

sistenu

ihterconnièio

l itnzioitc

hu

di che

l invin nn

E

l. h

Ir ti

or un i

V

Si

I,

di

vertice.

definiremo

G

riiulu

prececlente prct1ciisc

l innalxamentn

con ideriamn

tubo

che

ne

l eccesso .

algoritmo

liquidi

vertice

di u o più

u. Lasugaltezza

il quale

del

capacità

si raccoglie

netto

flusso

il basso.

un

in eccesso.

del

verso

alla

inviato

un

Dalla

di

da livello

vertice

verso

verso

del

esso

esso

di pretlusso

Intuizione

tlussi

il Austro

innalzare

Operazioisi

algoritmo

escono

fino

la capacità

viene

quella

sorgente

riempire

per

ad

un flusso

tempo.

col

dalla

i tubi

inviano

Vf. mentre

0 e aumenta

intermedio.

o poi.

tlus o

un

in eccesso

causano

0.

l intuizioise che

inviata

stesso

del

non

un

in eccesso

preALlsso Quindi,

tutto di più

trasformare

tluido nuando

se e w

suo

vi è almeno

di flusso

del

che

sullo

vicini

suoi

cioi.

un vertice

il flusso essere

a

il basso,

basta

prima

tubi

sono

da

parte

quanto

infatti,

che

il fluido

dell algoritmo.

Ci

le operazioni è fissata

verso

e tutti

può

ogni

dove

il progredire

basso.

tubi.

in eccesso.

grande

serbatoio

con

prime. dei

addizionale.

quantità

27.8

vertice

dei

innalzato,

flusso

che un

basso

più

li

netto

i soli che

traboccante u dal innalzamento

Al

vertice

inviato.

chiumata del

vertici

viene. volta

ma

Come

di giunzione

il flusso

inviato più

sorgente

possibile

sorgente

verrà

che

della

altri

gli

flusso

la prima

ti a vertici

arrivista

da

.

esso

R che di

altezza

viene

ad uno

Ford-Fulherson

diversa.

i punti

il suo cresce

alto,

più

è esattamente

dalla per

la inro

legee

L

più

inviata

succedere

ad uno

di tutti

parte

qui

vertice

più

solo

di Ford-Fulkersan.

rilassamento

negativo.

un

considerando

metodo

il seguente

i vertici

è dato

alla

dal

trovare

OP. di

Ford-

che

da

Puo

metodo

viette

vertice

colleghino

il basso.

quanto

raggiunge

raffinerenso

tempo

al

per

di conservazione

ed

sorgente

E

V.

diversamente

0 per

diverso

ili

residua

un preflusso

V,

f

vertice

rete

rispetto

tubo

basso

alto

alquanto sono

arbitrariamente

altezza

il flusso

più

di

575

tipo.

accomodare

per

vertice.

ogni

come

vertice

un

più

l altezza

il tlusso

migliorando

27.5,

richiede

ogni

col

vertice

invia che

da

che

serbatoio

la cui

determina

cioè

verso

a 0

quantità

di

problemi

O VE .

paragrafo che

I più

efficientemente generico massimo

tempo Nel

localizzato

più

la proprieth

i vincoli

flusso

in ciascun

modo

Inoltre,

non

richiede

di prescisso

lavorano

residua.

essi

che

massimi. altri

risolti

di tlusso

Edmonds-Karp.

algoritmo in

di preflusso rete

tuttavia,

conservazione

altro

l intera

di preflusso

esecuzione soddisfa

di

flussi

di pret1usso essere

l algoritmo

realizzazione

esaminare

nella

algoritmi possono

introduce

lavorano

algoritmi

gli

de1 vertice

minimo,

un

preflusso

Invece

a tutt oggi,

dell algoritmo ottenendo

generico

sono,

paragrafo

calcolare

per

di costo

semplice

O VE

algoritmi

vicini

Questo ha

il limite

Gli

di flusso

preflussi.

Goldberg

quindi

massimo

il problema

dei

un

sempre

è fissata

l approccio

vertice

è che

metodo

di questo

intuizione

è che

in un

Il

pozzo.

liquido

su un

prima

piattaforma

di

i vertici.

ma

finisce

la seconda

al

tlussi

è basato

La

che

su una

i1 basso,

sorgente

a tubi,

di scolo

di un

verso

fanno

presentiamo

tubo

accumulato

L altezza

fL .

di preflusso

proprietà.

giacciono

dapprima In questo

dalla possibile.

comspondono

interessanti un

collegati

di preflusso preflussi

scorre

finché

generico

orientati

positivo

27.4

che

ripetutamente,

il

gli

d-regolare

minimo

a qualche

abbinamento

V,

biforcazione,

aggiunge

adiacenti

d. Ogni

bipartito

grafo

di

punti

L.

G

esattamente

taglio

un

A c

z c X,

perqualche

i vertici

esiste

bipartito

grafo

un

di

sottoinsieme

ha grado

e E

,y

di Hall

ogni

27.3-5

V

e

massimo

rete i.

un

vi

che l.CCCNNO

L applicabilitè t di

n Auico

fisi-croste

di

sono

due

Aureo di

nperai.ioni

questi

Vertice

un

d

operazioni

di

bure

ud

uno

ùipende

etfettuute dei dalle

da

suoi

un

vicini. altezze

e dei

precisione. con

sor

alte...a,i

ente

.1 e li .i

t e

p ir/o I1 .

h

ll

si t

f 0

e

un

preAuiso

in

G.

Una

57á

27

Capitolo

ogni

per

eco

residuo

v

u.

s

E

Da

definizione

questa

deriva

immediatamente

il seguente

lemma.

a i perché

v non

t possono

essere

è più

di u.

basso

traboccanti

ricordi

Si

che.

né s né

e quindi

s né

né la sorgente

definizione.

per

t possono

577

nwssimo

Flusso

il pozzo

innalzati.

essere

Ltvr u Legna

27.13 t

l Sia

G

Per

E

V.

ogni

una

coppia

rete

di

di flusso,

vertici

u,

sia f un

vc

V, se

in G.

preflusso

hu

hv

e sia

h una

I, allora

funzione

v

u,

non

altezza

è un

arco

nel

grafo Il

e 1 u

di base

lt v

G

E

V,

tempo

PC sv ,

1. Lo

base

en

e l altezza

di c e f.

che

Esso

u viene

accumulato come

la quantità

di flusso

il preflusso siano

date

f in un

da

calcolate

in tempo

vertice

w viene

memorizzato

L espressione

d. u,

che

essere

puo

inviato

i

c, u,

essere

in un hu.

traboccante,

aggiorna

le capacità

possano

mantenuta

memorizza

seguito che

residue

in eccesso

se u è un vertice

di

assume

le capacità

Il tlusso

di

temporanea

anche

applicata

riportato

fissata.

c e che

sulla

essere

può

pseudocodice

implicitamente

costante

v

i

è una

da

u a v.

2

t

3

hu -

una

rete

funzione

Si applica

2

t

Azione

3

d,

n è traboccante,

quando invia

d,

v

n,

c, u,

min e u .

c,

i i

ii.

0 e hw

fio v

4

v

u. s

u.

f

5

f i.

6

eu

7

ei

min e cr , c

f

s d

u.

-f u,

uj

c,

di

da

unità

importante da

costante come

che

flusso

eu

v

o di

superare da

primo

che

la

Pus

implica

consentita

il basso

solo tra

ma giore

due

s u.

di

arco

Una

L nper per

tutti

vertice,

1 u

una

difterenza

vertici

tlusso

linee

di

i

da

u a i senza

sia

ed

tale

Pus

di

linee

Per

un

linea

Punti u, da

operazione c

I

i

u. rete

0

un vertice

Lm u

attribuisce,

v tale

insieme

che f

i.

ti

vuoto.

non

0. abbiamo

eu

poiché

0.

Ra

allora

v

f u,

v

w.

vincoli

c

E,.

sulle

L operazione funzinni

quindi.

massima

a u l altezza

altezza.

generico

di

più

fino

Il flusso

a

e v

27.13

non non

da

ci

una

invio

un invio

d

n u t

se una

spinto

w, diremo,nche saturaitte

altrimenti

i. un

ii vio

e

che l arco

zton

w,

sarebbe

satiiranle.

diviene SC

LII1

di

arco

nulla

invio

satun lli. O

per

creare

un

preflusso

i

G,

vertice

ngni do

u c

VG

l jirj

m

O

e ti

.

0

arco do

7

/ s

e

8

for

ogni

9

c

EG -

c

f

.

f

s.

f

ll.

0

e-0

VG ve rive do

10

dopo

i

u,

f f v. s

da

w applici,

t . S l LII U.

ogni

6

applic l

vini,

for

5

di altana

di invio,ii

l nper,zione v

for

4

non

veri

alcun

differenza

operazione

sottoprocedura

viene

Pi sv

esiste

la seguente

pretlu so

tuttavia essere

puo

1. quindi

A

I RITI A L IZE-PREFLO

2

un

usa

preAussn

t1usio.

di

3

di

il basso

rete

negativo

preflusso.

in eccesso

il lemma

3.

del

generico

Il

n c

Adjfs

ri i

ew

m

u

c .

C

C S.

c .i.

Il

n

11011

CITO

residu i.

ione

cti h tee Ltrv irl l . Iv, altre u..ile

V

vertice

un

i un

i v rtici il

almeno

Infatti,

uscente

arco

eccesso

eu

se f era

Quindi,

altezze

verso

spinto

un inviare

può

di rendere alla

6-7.

essere

il tlusso

differiscano di essere

u abbia si

rischiare

dalle

l.

il vertice Quindi,

calcolato

ud

dipende

altezza

altezze

al flusso

un,-ente

nella

u sia traboccante.

È

innal ato. un

ffv,u

che dai

nella

I

e alle

contiiluz

che

pnsitiva.

viene

I. Q lindi, di

le cui

4-5

allon

assume

Si .

valore

questo

hi

l operazione ,

per

i

codice

qualnra

di

di

f alle

nel

seguente.

l.

1 operazione con pare

c n,

permettendo

Chi ameremo un

unità

invoc ito,

niente

da

llQC 1gllDI P

ad

capacith

che

mode residua

i

u.

venisse

invocatv

residuo

nel

la caphcith c

codice

esistere

a un

applicata

nel che

viene

u

almeno

u a v

L algnritmo

u a i aggiornando

Si osservi viene

u

venga

vertice

contenere

v

opera

e che

minima

deve

E,. deve

0,

i

min e n ,

mosso

di

il

che

diciamo

innalzato.

dal l ipotesi

0 e quindi

c u,

Lwu, u viene

quando

garantito

u

V,

f

Algoritmo

d u,

Pusw

per

i

u,

che

viene

fatto

iniziale

eu

E,

zr, v

me vj d, w,

Il codice

li v .

di u e

u,

l operazione

l.

i

e uJ

positivo

l altezza

V,

v e

ogni

e per

ha

implica

l operazione

notare

u affinché

questo

variabile

i

u,

E

min l v

c u,v

t

c

aumenta l

invochiamo

Quando a

il che

d

Azione.

V

i

V

0

cg u,

Pt sw u,

u è traboccante

quando u,

residuo.

L operazione

Si applica

V.

su

evi.,te

si p troie, una

pplic1

ic u i trabocc illn 1tz ire

possialllo c,p,cita

rc.,idi,,

cl,

nte

e se

w. 1

Lltl vet lice w a v. non

si pu

0 implica

tr 1boccailte in,

iure

I. L

li i .

hu li sc

per

o

I

piOi CLllll

c u,s

cl,.l

llu. .o

ù,

i IC l

INl l l Sl.I/F,-PINI .I 1.06

UI1 ll

lluiio

inizi lli

l Ictinito

lt

lli w f

ll,

l

C

t J, Ll

sc

u s.

Se

ti

illrimcnli

I

27.

.S, .

578

27

Capitolo

ogni

Quindi, archi

non

ev

arco

r s,

v.

$0 funzione cui

per

u

della

alcun

completamente

oeni

vertice

comincia

con

Per

riempito.

v adiacente

alla

mentre

tutti

sorgente,

gli

altri

Dimostra-ione.

si ha all inizio

le altezze

Poiché

di innalzamento,

è sufficiente

innalzato.

allora

per

seu

che

I

altrimenti.

hu.

generico

è un a1tezza, se

viene

sorgente

flusso.

L zlgoritmo

AV

Tale

uscente

trasportano

L algoritmo

in quanto

archi

questi

sono

seguente

è un

unici

gli

saturi.

il che

tipico

una

archi

u,

implica

esempio

del

che

funzione

v

i quali

per

essi

metodo

altezza

non

iniziale

/i u

h, data

li v

fanno

1 sono rete

della

parte

da

hu

quelli Sia

dei

min /r

f vJ

una

rete

i

u,

v tali

c E

possono

la seconda che

v

n.

G

E

V,

preflussi.

GE Eec-PREFt.ow-Pus

e

E

Dimostrazioire. liVITIALIZE

PREFLOLV G,

svhile

2

esiste

3

do

un

S

un

ed

Dopo

aver

le

qualunque. seguente essere

app1

il flussn. di

operazioni

ci dice

di invio

che

o di innalzamento

operazione

di

invio

o di

applicabile

Mostriamo

innalzamento

una

applicabile

eseguita

i sizializzato

finché

di

flusso

su

G,

con

l algoritmo

generico

applica

quando

nessuna

fermandosi

base. ui

esiste

vertice

traboccante,

ripetutamente. è più

almeno

una

in un

h contiene

applicabile.

delle

due

arco

ir,

residuo hu

ad

u

v,

Sia

27.14

G

invio

una

rete

di tlusso

altezza. residui

di

Per

i

u,

applicare

se

sorgente

traboccante.

arco

ud n non

essere

applicata

pozzo

t, sia

allora

residuo

ad n può

avere

operazioite

applicata

.he

di

, abbiamo

.

es ere

può

dobbiamo

un

con

può

uht

f un

applicata

hu

che

un hv

innalzamen o

kn

la funzione

operazione

di invio.

I e questo cd

implica

del

metodo

dei

una

dimostrare

mostrereillo

che

cile

tllnziotle

l al

esso

Cli altezz l

oritmo

27.17 V,

G

lt è una

funzione

allora

tutti

residua

h

per hi

gli

R

necessari illlcilte

risolve

terminal 1.

Colllitli iai11o

il problema

COIT

di flusso

llcune

Durante

27.15

Le

nlte . ,e di

dei

vertici

ami

decresrr ao vi-PvsH

t Ic-Pi u

Gtsr

dove

di

di

t1u io

massimo.

Id

Llll

s I. I lice

l.

la

ili

J

llle/i. l

/l Il

CI eiLV.

llllllCllu

dl

nel

hi

h

esce

E,

che

j

1. Ora.

da

1.

ancora allora

u,

un

si consideri

vale

Ltd u

dell operazione

l operazione

dopo

Quindi,

operazione

Questa

la ri nozione

di

i

u,

rete

dalla

/r rimane

caso

in questo

h

che

lt r j

1. quindi

residua

elimina

tunzionc

una

arco

un

aggiungere

puo

abbiamo

caso,

primo

secondo. anche

V.

E.

di flusso

V. Allora,

una

importante

con

sorgente

non

Si suppnnga

h i,

requisito

sulla

osierv lzioni

G

c

hu

hw

delle

proprietà

esiste

alcun

W

altezza.

altezza.

funzioni

assurdo

che

s e pozzo

t. sia f un

cammino

dalla

pel

Siamn

O/111

Se

I .

lll

1 per hs che

li s

oro

pr wti

ulte

di generalità.

esista

calcola

un

COII

E

SOl

h una

in G e sia

pret1usso

t nella

s al pozzo

sor gente

rete

y

supporre

che

che

ie

t1ussu

i ,,

...,

i

s a r in

da

e quindi

semplice

E.Poichéhèunafunzionealtezza, li inze

disugua

queste

hs

0. abbiamo

,V .

l

lungo

il cammino il

contraddice

Il che

W

enerieo

l algoritmo

allora

terminala.

di pretlusso

mai im .

dell nlgoritnto iii

ni -Pc 5

i . p sia

altezza.

Corrette er

clltC

cammino

C

1. pO//O

uiio

è ecc

quando il

UllOI l

di

generico

ternsina

f che

prellusio

preflussei su

cit

una

di

rete

C JICOI 1

r.

i1us o

Ltll

flllSSO

G

pel

Se1 aleoritiuo li

/ t

funzione

è un

27.18

1. Combinanda

poiché

GcvcRic-PRcvi

JS.illllO

eccessi

1-. Mu

a dimostrare

esso

un

possiamo v., e

/-

I, 2, ...,

V per

l algoritmo V,

i

Ir r

l itttostra-iwte. un

per

perdita

V .Peri 0.1,....li.abbiamochel srco i,

G

Ill ll lli. ll11Clllo

rete

Teorema

uttarete

Nel

da E,

fornisce

i . Senza

i

ani su

v

n,

h sarà

Lw ir ,

l operazione

se prima

i.

PLsw u,

v

ir,

e quindi

ci

su

Dimostra -ione.

li.

I esecuzione

dopo

G.

pret1usso

Lemma

eseguite.

base

di operazioni

osservato.

si abbia

avremo

di

l esecuzione altezza.

funzione

. Quindi.

ir.

pret1u o

una

E

altezza

che/

cl

una

altezz .

altezza

vincolo

lemma

Sia

lt i

generiCO

implica aumentare

durante

t. Allora

residuo

il lemma27.15.

per

operazione ere

funzione

p otteniamo Per

una

rimuoi

allora.

al termine.

l operazione

funzione

ora

Lemma

1 perché

lussi

pref

dopo

una

E e può

Il seguente

G, Correttezza

u viene

questo

di

un operazione

h

lr v

di base

e si h

pretlusso

essere

vertice

un

Se

necessariamente

numero

già

l arco

che. in u

sul

abbiamo

altezza

funzione

entrante

1, allora

il corrispondente

operazione

innalz lnsentu.

ogni

Se

traboccattte

vertice

u è un

iodate.

funzione

vertice

oper 1ziotle

Dimostra

si può

un

per f. Se o un

archi

E

V,

altezza

dd

u

Consideriamo

pub

ic tn.

deve

Ie operazioni

durante

Ir a

abbiamo

sempre

induzione

come

consideriamo

Se

garantisce

li rimane

Ltd u .

Il lemma operazioni

Ler ii

è per

altezza,

se h è una

altezza.

l operazione

hw

ordine

lemma.

s e pozzo

sorgente

l attributo

dimostrazione funzione

che

funzione

h rimane Lei tma

La h è una

All inizio

operazione

seleziona

solo

del

l operazione

e quindi

GENERtC-PREFLOW-PLSH G l

cambiare parte

27.Iá

Lemma

residue.

i vertici

tutti

vertici

dei

dimostrare

579

massimo

Flusso

0

parchi.

per

ill r i

terniixt.

eenerico i lu nn

7.

l4

c

7.

I i c

pir

o il

ni fatto

vcrliic he

in / i

V SCI11plC

.c.

t lll1

deve. pl

aic .re f1uiio.

il

580

27

si ha che

non

esistono

perii

lemma

altezza, il teorema

flusso

Ana1isi

Per

del

limite

di

operazioni

che

f è un

delle

del

nella

residua

G

e quindi,

per

invii

poi

esso

che

saturanti

limiti

questi

Prima

ed

invii

superiori,

di cominciare

non

sarà

l analisi,

termina,

eseguire.

può

Per

saturanti

facile

dobbiamo ognuno

semplice

p da

semplice.

Peri

dimostriamo

un

porremo

costruire

un

tre

tipi

limite

aIgoritmo

il seguente

V,

per

ora

E

vertice

opii

non

I9

V,

G

una

di flusso

traboccante

con

u, vi è un

sorgente cammino

s e pozzo

re

semplice

da

sia f un

in G. Allora.

preflusso

u a s nella

rete

residuu

per

ione.

assurdo.

che

Sia

s e

i

U

U. Sia

e

un

cammino

semplice

de

e

in G,

contraddicendo

E

del

aa fonda fon

- i

u, il fatto

w che

che

c

può

essere

usato

n a i in G j e si supponga,

per

formare

un

s.

2V

Di

conseguenza

d re

dobbiamo

è n n

avere Allora.

positivo.

U

f 0,

0. poiché

ogni e dal

27.8

termine

cammino

per

sommatoria

. possiamo

27.22

Durante

l esecuzione

C

f

U

,

d aiuto

di E.

arco

Per

non

pun

Si consideri

U

sono

non

ne

stivi

per

i vertici

tutti

in

V

s

abbiamo

poiché

sunto

che

0, il cile ,

Il prossimo

leinn1u

lineette

U11

pOllC

l ipoteii

CCltllt, 1ddice

stabilisce

al numero

un

totale

che lintite

u sia

trabocc tate.

superinre

di operazioni

all

a altezza

innalzamento

dei

vertici,

che

ed

possono

il suo essere

il primo

intern

abbiamo

che

due

A de zii un

i a u.

interi

dati

hu

ese

uitc.

vengann

VI

2

3. Inoltre.

h

l.

il4oltiphYando invii

di

per

in

di

a i

3

tot ile

di

numero

questo

per

l

V

arclti

degli

il numero

2V

jEj

tra

Quanda

il lemma

un

in

itstero

1 ultimo

ogni

intero 1 12

3

al

è quindi cle

otteni ussn

l

hi

hu u e i. per

4V

ir e

i vertici

tra

saturanti

invii

i vertici

tra

sequenza.

al massimo

in A è al massimo

crescere

deve

io saturante

quindi,

opru.

fatte

possa i a il, il

da

tlu so

avere

invio

4 V

2

V

lllt. ri

del

questa

l ultimo

avviene 2

di

è al massimo

s 1turanti

da

è effettivamente

hu

u e v. dobbiamo

tra

l

ogni

per

le considerazioni

il numero

cosi,

Il numero

coni ti .

di

u a i. Aftnsché

da inviare

prima

lunghezza

a11a

1. Quando

e v. ti

di 2. Analogansente

direzione

qualiia i

h

in A

deve

da lr u

superiore

invii

i

inviosaturante

almeno

cresca da

limite

in una

PEI

il numero

saturanti

gli

tra ir.

corollario

V

Sia

hi

che

in A è aln eno

comparire

pub

un

eseguilo

stato

w a i. l algoritma

saturanti

uno

almeno

llora

da

trovare

27.20.

invii,

sia

prima

invin

E.

G V.

di t1usso

rete

V. si considerino

i c

.

di vertici

che

la sequenza

il prinso

saturanti.

invii

saturanti

su una

w

di

al numero

superiore

di invii

ov -Pt

invio

invii

quindi

totale Lemiiia

altro

due

A è al tnassinso ew

limite

un

nsimero

di questi

uno

accadere

vogliams

u e v

Q. eccessi

al

coppia

ogni

un

di 2 tra

avviene

Gli

eseguite

2 VA jE .

Si supponga

effettuato

esiere

C

f V,

0 e essere

può

W

pnrre

per

di GzweRic-PRcFt

è al massimo

ione.

almeno f U.

r

s.

di innalzamentn

di operazioni

totale

V

u s

vertice

ogni

Quindi

ed il numero

superiore

Liurite

saturanti

che

fi

27.20.

è inizialmente

valore

il cui

innalzati.

essere

2. possono

V -

hu.

incrementa

2, V - .

2

è anche

Lemmn

un

conci.i-

ihe

eL

l

in totale.

in tutto

sono

t . che

s,

il lemma

1 jV

27.20

semplice

in questa 27.

di 2 V

è al massimo

di innalzamento 2V-

Lite n

1 volte.

2 V

2V

Dimostra

lemma

hu

l esecuzione

durante

t. Allora

s e pozzo

U.

d ill equ azione

si ottiene

di irtnal amento

opera ioni

di operazioni

in V-

I per

e da va w. Se vi è almeno implicita

p.

D

2 V -D jV -2

l operazione

al massimo

è al massimo

invii v. . ii

lemma

G.

V jiste U.

U

t

superare

puo

Il lemma Dimostra

27.16.

perii

il cammino

lungo

p è

1. perché

V f

e quindi.

E

cammino

un

l.

sorgente

il numero

i vertici

Solo V

ir e

innalzato

rete

V

alle

aI massimo

C

esiste

che

s e k

i,

n.

1

disuguaglianze 2

con

flusso

v

. dove che V

abbiamo

un

considerare

possiamo ci dice

27.19

importante

Sia 27.

di

rete

ed

v,....,

1

su Q,

vertice,

ogni

s,

v.

superiore

Lignite

è traboccante.

quando

r . Il lemma

V-

queste V

GENERIC-PREFLOV -Pt sv

che

l,

h js

una

E

solo

p

l. Espandendo

27.21

G

sia

1, ...,k

li

Dimostra -ione.

L8llll1la

u c

0,

lt s,

Sia

innalzato

u a s in G-

lt v,,

j

Corollario

porre

dei

lemma.

Sia

vertice

arbitrario

viene traboccante

vertice

un

Poiché

funzione

massimo.

effettivamente

preflusso

operazioni

innalzamenti,

O VE .

flusso

Ir è una

poiché

rete

hv

generico

al numero

tempo

minimo.

Inoltre.

da s ar

preflussi

Sfruttando

richiede

cammino

hv

dei

cioè

f è un flusso.

quindi

vi è alcun

taglio

l algoritmo

superiore

indipendente.

traboccanti non

massimo

metodo

mostrare

un

vertici 27.17

581

massimo

Flusso

Capitolo

tnai imo il numelO W

jE .

27.2fl G

l.

E

un

rete

ali

tlusso

con

sor

cnteve

pozzo

r. Adngni

istante

dur

inte

l esecuzione

Il

oritmo

27..3

I.numa l3inlrAVIra ,iolle.

L,lltell,.

-I,.,

lemm,

si,.uente

nell al

limite

tm

pc,ne

generico

ali

1.insite

superiore

l ciccuxione

totale

ili

invii

night

di i

lurrnti

Cit

invii

non

fluii

G

eseguiti

.,atur,.mti

profluvio.

al

l Duranlc

di

i,umero

al

s periore

r i. i c-Pe t t. ns i

al

n i.inui

nuore

n,

eli

-l L . t A

lj

in,.ii

mot

iu j

cattrravtil rete

uiu IFj .

I

di

l.

f .

il

numero

582

Capitolo

27

Dimostrazione.

Si definisca

vertici

dei

traboccanti

nalzamento

di

sommatoria

viene

che,

u

27.20.

è al più

diventa

da

u a v decrementa traboccante

durante

Quindi. corollario

V

invii

non

e dal

saturanti,

Abbiamo

ora

tutti

lemma

27.22,

D

oltre

invio

saturante

da

un

non

4V

per

di un

essere

V

che su

cui

un

massima

vertice

il vertice

traboccante

h/si

altezze vertice

v. la cui

altezza

un invio

dopo

di incrementi 2f V

del

non

l invio,

sul

l .

in termini

di

Teorema

V -

2

2 fV j 2

V

il numero

E

della

$1usso

G

E,

V,

Dimostrazio e.

Immediata,

GzveRic-PREvt

procedura

il numero

di operazioni

di

il corollario

27. 1

per

ov, -Pt. sv

base

è OV

ed

dei

27.4-7

preflussi.

su una

rete

quaIunque

di

I tGll

senza

danneggiare

del

pre flusso.

Sia

á, u,

i

Corollario

una

27.22

realizzaziane rete

qualunque

dell algoritmo di flusso

con

generico

e 27.23.

esercizin

V

6,

ogni

per

invio.

chiede

tempo

Da

al

addizionale segue

questo

che

preflusso

richiede

27.4-9

tempo

O VE

lettore

di

di O lQ

per

mostrare ogni

immediatamente

come

si

operazione

realizzare

può

27.5

Il tempo

s.

B, u.

s.

5 lu.

v

essere

realizzazione

6,

1, nj

u a i nella

da

che

G,. Si mostri

residua VA implica

hu

la distanza

la

che

totale

deve

pmprietà

què sta

Si mostri

che

il numero

su

rete

di t1usso

residua

rete

impiega

proposta

r

n.

per

O VE .

Si

mostri

un

per

come

0V

si

per

tempo

totale

realizzare

può

ogni

operazione

l enunciato

l algoritnio

del

genericn

di innalzamento

ed

un

del

corollario.

che

eseguire

per

dei

metodo

ungendo

pref1usso

tempo

per

ogni

suppnnga

usando minimo

di un in

algoritmn

generico

le O V-

G.

over

ci

pret1ussi con

di

consente

le

applicare la

e gestendo

l .ordine

attenzione

di

il problema

risolvere

pero

Gr Fmc-PREFLOl4 -PL SH

j V -

4.

V

per

E.

di

tUlcl in

massimo

tlusso

di

operazioni strut

dati

un

in

base

ordine.

qmslunque

rete

de11a

modo

in

efficiente.

minore

tempo

iin -

a

01

ri

invio.

del

-

-

operazioni

iinpic ,t

ptet1usso

di

in tutele

temp i

O

trovuto di

pret1usio.

un

t1usso Si

dia

-.

llarete.

L aleorittno

-.

Izansentntinchéunon -

.

...-

l

.

OSL tloiAtcstaalla

cri

ssiv

l. E

iimalznmento.

eassiino un

,

.

-,

i-. i

a

1

Si

da

eseguito

saturanti è al massimo

E

O V-E .

l ulgoritmo

tutte

V.

IR

uequi

Si dimostri

non

di invii G

lift-to-front

Scegliendo

tempo

di una

Algoritmo

possialllo

27.4-.3

generico

di innalzuitiento

Esercizi

27.4-Z

sia

iu

Il

27.4-1

V

precedente.

u.

che

a la proprieth

h

implica

rete

da n a i nella

di archi

numero presero

nell

h ii

E.

V,

27.4-I un

del

generico

G

L Esercizio

l algoritmo 01

dell algoritmo

asintotica

o l efficienza

27.25

una

Dii rostra io te.

e di

puo

1Il

CQmtllBLB

pUO CSSCIC

IilTIALIZE-PREFLOW

la correttezza

1

preservare

Esiste

arco

ogni

saturo

-

la distanza

hu

Come

27.4-8

E.

i lemmi

volte

quante

generico

Ge zRic-

procedura

metodo

t1

totale

e che della

5uggerimeirto

di divenire

prima

7 di

la linea

che

Si mostri

27.24

l esecuzione

e l.

g

siano

B

dell algoritmo

di esecuzione

i

GE iR,c-PREFio ,-Pt sv

Durante

V,

saturante

non

invio

un

V.

G

di flusso

rete

di una

archi

il tempo

Si analizzi

D è limitato,

di

e quindi

analisi

basato

in

massimo

abbinamento

proposto.

degli

le capacità

tutte

1.2....,

preflusso

subire

5

la seguente

un

trovare

per

l algoritmo

Si analizzi

che

Si supponga nell insieme

27.4-á

totale

grafo

efficiente

di preflusso

algoritmo bipartito.

1.

di decrementi,

algoritmo

un

la

cr ad un

che

un

Si dia

27.4-4

l in-

fE .

presentare

qualunque

V è l insieme

I insieme

si osservi

è più

al massimo

totale

osservi

la sua

e solo

e l v

il numero

X c

Si

poiché

Infine,

u non

lo era

dove 0.

27.4-5

cambiano

I poiché non

ad

2fV

traboccante.

0, il numem

elementi

gli

innalzato

di

se prima

è al massimo

e quindi

di

essere

le altezze

almeno

4

massimo

de11 algoritmo,

Poiché

fE .

PREFLOW-Pus

C

che

al

diventare

anche

hv

g,, ,.

abbiamo

può

Inoltre,

perché

l esecuzione

27.21

4V-

non

eventualmente

invece

inizio 4

ed ag.

di 2 g

4

potenziale all

incrementa

è lo stesso

2 Vj, puo

saturante

di

vertice fatta

D al massimo

è al massimo

dal

un

il lemma

per

v aumenta

la funzione ovviamente,

583

massimo

Flusso

il eoritmoet

di

uiia

ret t icit .l11C

di

t1usio pi

I

ll

Ci OV II

V.

E

li st .

.

in m

--

iii ,

C

lll11 lglii

C i 11111118fl .1110 i ci,.

I i l l-l

e

i

O-I TO Ill.

-, ,. I

L f Cl l/l llll. Lli

,

,

-

.uii . -. YC ll

-. tC llllCI1ll l t lllltcli

-

.. plcsillldlc. llll

sui eiierc

i i le

l

g

lt,e d

Jc

li

arclti

..lli..lli//cl 111, . tll

inviato aininisiibili. I

..ll OVltlllO g

del

584

Archi

e reti

ammissibili

G

E

V.

funzione

è una

altezza,

rete

diciamo

Altrimenti

u,

degIi

ammissibili.

archi

La

rete

v è non

che

i

u.

consiste

seguente

con

destra

sorgente

è un

ammissibile.

ammissibile

Il lemma

di flusso

arco

Larete

di tutti

che

archi

rete

t, f

ammissibile è Gg

f hp

attraverso

è un

è un

se c

ammissibile

gli

questa

s e pozzo

0 e hu

Ej

dDVC

E

essere

h f hp

jh

può

orientato

grafo

v

u,

V

i quali

in G e l è una

preflusso

del

che

che

mostrare

Per

flusso.

Le nnta Se

27.2á

rete

La

avvnissibile

E

V,

la rete

è una

rete

ammissibile

di flusso,

Gy

Dimostrazione.

La

f è un

Ep

è una

funzione

altezza

su G, allora

residua.

aciclica.

è

V

in G eh

preflusso

dimostrazione

è per

li v

I. per

i

l,

2,

....

assurdo.

Si

supponga

che

G,

contenga

un

ciclo

k. Sommando

lungo

il ciclo,

lift-to-front.

G

tlusso

il

E.

l,

l

ghs,

i vicini

contenente

lista

n in G

e

u

i. k

E. La

vertice

contraddizione

del

che

0

ciclo

p compare

una

volta

in ognuna

delle

sommatorie.

ne derii

a Ia

vertice

rete

-liste

quei

Vn

lista i per

vertici

iieir-sieigllbnr ,

da

è pumato

QUcilO

rete

una

Data

di

concatenata

lista

V, è una

nella

compare

esattamente

vicini .

di

ci c

se

w.

i quali

i

c

i

pUllLùlOlC

E o

esistere

può

LIL

SC

l

i

della

scandisce

ripetutamente

attuahnente

innsiderato

di vicini

lista

ogni

in un ordine

arbitrario

viene

assegnato

l.

lemmi

mostrano

come

le operazioni

di invio

e di innalzamento

cambino

la

al

vertice

di

Xw

di

un

i

all inizio

cnre nt n

hectd JV u .

Scaricamento

27.27

G

vertice V

E

V,

una

rete

u è traboccante ,

L operazione

di flusso, e ii,

non

crea

i

sia f un

è un.eco

nessun

pref lusso

in G e sia

ammissibile,allora i .,

arco

tmrnissibile

li una

PuLSH H ,

nuovo.

iuta

funzione

altezza.

v v g pUO

il,

far

puo

Cssere .

un

Se

applicat l i.

diventare

ir,

i

vertice

Un vicini

non

ammissibile.

rendere

ammissibili

archi

antmissibi1i

gli

seguenle

Il

n.

da

uscenti

archi

Dimostrazione.

Per

la detinizione

di

irto

ammissibile,

del

ilusso

11 ll

l,

snturante,ullora

l

Bl CO

inviato

da

n .

pseudocodice

è

arco

jr.

ii ,

mu

pniei é

1

Il

l.

al terminesi

hoc

ic,

i

Oe

l arco w.

i

DiSCHARGE tt

I

a n a ll l

essere

può

d

..

t

3

b i .

svltile

e lO

0 l

E

if i

C l11 l

C Itl I

wL Ln

tl en

Lemtiia

27.28

Sii

,

Cl l-I

G V,

di

E

n,

utia

111 l

rete

llnrl

di

vi

t1uiso.

.iono

si i

arclli

fun

prel1usso

.ll11i .1iiiihili

in

n lnii1li

G

e

ila

C

ll. CCI1

in

n.

li

un C

i tunrione C

ultczr ,i.

S

un

i

eli

if

f

r

r.

AH

I1

c,lill

l e

s

h

1 l/.

l

Ol I

I

Oi LI

illOI1c

7 $1

tlllll

Cl l

r twlnll l

Pl

SII tt.

I

teti-in iylil ri

.

Ii

cl i

i

flusso w di

innalzando

si ottiene

ciò

il suo

tutto

inviando

scaricatn

u viene

traboccante

attraverso

traboccante

vertice

operazioni.

uscellle

rete

ammissibile.

Le una Sia

due

rete

nella

essere

lista.

lift-to-tront

L algorith1o

punta I prossimi

vicini

di

lata

i in una

segue l ultimo

ogni

può

la

cambia

.

il

Poiché

vertice

per

contiene

iV uj

in

un

vertice

un

quindi.

vicini

dei

lista

organizzati

.V .

vicinati

dei

la di

sono

archi

gli

il

h v,

non

le cui

vertici

vicini

dei

otteniamo

k

hv

non

essere

doveva tra

residuo

vertice

di dopo

Allora

operazione

ragione

e a maggior

residua

rete

è nella

non

un

di

Quindi.

l operazione

dopo

rr

arco

alcun

l innalzamento

ammissibile.

è ammissibile.

dell

prima

esistere

può

in u

i.

v è

se

quindi.

ammissibile.

Nell algoritmo I

u

v,

Quindi,

Liste h v,,

più

per

subito

non

che

Dopo

Lim u . E,

c

u.

da

entranti

1 e quindi

1. Inoltre,

di

diventa

uscente

i tale

27.13,

il lemma

per

differiscano

altezze G

I. Ma,

hu

hv

è aciclica

hu

n,

v

ii.

da

uscenti

applicare u.

l arco

vertice

un

esista

hi

abbiamo

l innalzamento

poter

ammissibili

archi

sono

che

si supponga

innalzamento,

dag .

vi

non

deve

o

esso

ad

applicare

può

ammissibili

min h i

ammissibile

arco

un

vi è almeno

archi

si

insieme.

in questo

vi sono

l

li u

che

abbiamo

il minimo

realizza

l innalzamento

dopo

non

Se u e quindi

da

flusso

si

27.14,

il lemma

per

di innalzamento.

del

inviare

può

di innalzamento,

l operazione il s ertice

è l insieme

inviato

aciclico

l.

si

non

allora

o una

di invio

un operazione Se

allora,

u è traboccante,

Se

Dimostra ione.

585

inassimo

Flusso

27

Capirolo

IHI

l

I

I

in eccesso quanto

necessario realizza

a vertici per queste

6

587

massi

Flusso

27

Capitolo

58á

6 S

S

-es

1

2

3

4

g

4 S

3

lg

S

X

S

S

S

X

X

i2

13

s

s

g

.g

S

4

x

1I

10

-ca

4

x

x

2

2

g

5

11

z

l

i

0

0 Sry

J 19

z p

8

2

0

8

6 S

5

6

7

4 b

3

S

S

S

X

X

X

2

z

14

X

z

I 0

0

6

6 S

-xe

lr

5

8

9

S

S

S

4

c

3

A

3 X

X

2

2 Z

I

z 55

y

0

0 8 Figura

27.

IO

Scaricanrenro

di

un

ertice.

Per

inviare

tutto

il j7usso

in

eccesso

dal

vertice

y

si

i

á 5 4 g

0

p/ 1Q Q

I0

27,

cw tinac

la

aggiunta

in

che

mostra

lilla

In

tV n .

questn

di

i p erazione

i e

ic t

è.ipp

situazione

questa

clelia

lnse

io raro

g r si

sr Ila

testa

della

lista

lei

r icini,

al mn

is, gen

ra/c

iii

nw

nc

c

sscuicwtentc

igu a

7.10

mostra

diverse

del

ciclo

while

alle

lince

l-8

èun

i

quJle

tre

possibili

azioni,

scelta

sulla

b,se

deI

ver

ice

corr ntc,.

nella

li,.ta

dei

vi,.i ,i,S

nella

lift i

vicilli

dei

c .allorilalinea8avan aciirirvir fl

vicilc

ul n

n xlilic

.

,

C is C

r 1I

mo

il

v

lare

eli

.i

inizia il.i

juta.

rwi

l il

-

di

una

Vn.

v ni

sC

innalzu

erminutodallaverittca

..

.

., nlini ihilc. , ivcrco ccùivcrcodawLma ti. noni,

. tra

4

i,

vertice

Seici

poiiTinile iterazicini

i

,

ia. 3.

La

i

linea

innalz t1lento.

.. e

la

caso

w ,.

i

iu

un

ll/ tlllcl1ti1

,, . trubucc intuì

virticc

lli

1

t ilil/ llllellll

u.

al

iii i

CL

l Lrllim i

588

-

Capirolo

Bisogna

essere

corrispondenti

Eernrna

sicuri

rhe

operazioni

Pus

quando

siano

o

applicabili.

Ltd

vengono

Il seguente

chiamate

lemma

da

garantisce

Dtscv acE,

l

old-height

do

7

le

fatto.

questo

8

DiscwwRGE n

9

if l n

o1d-Ireighr

27.29

DtscwARaz v.

u,

invòca

Inoltre,

se DiscHwace

essere

può

Pt. ss a.

applicata

ad

v

alla

chiama

lineà

Lm u

7,

allora

alla

linea

un operàzione 4, allora

di

invio

è applicabile

un operazione

a

u e-

Il

di innalzamento

con

eseguita

solo

Per

alle

se è applicabile

dimostrare

dobbiamo

verifiche

e ciò

la seconda

solo

mostrare

linee

dimostra sulla

parte,

che

l e 6 assicurano

tutti

la prima

base

archi

gli

che

della

che

un del

pane verifica

escono

da

operazione

di

invio

venga

lemma.

alla

l e d..l

non

lemma

ammissibili.

scaricando

Si osservi

e ad

lista scandisce

volte

più

a

lista

JV u .

.

Ogni

comincia

passata

dalla

testa

di aV u

e termina

puntatore u. za,

v

deve

essere

possa riconosciuto

una

quando

non

avanzare

passata

ammissibile

in

un

oltre

come

non

termina,

ogni

qualche

istante

un

vertice

v e

ammissibile

arco

dalla

uscente

da

durante

la

Nu

n deve

passata.

durante

verifica

alla

essere

una linea

stato

passata, 6

riconosciuto

L osservnzione

è che.

invii

gli

termine

non

della

creare

possonn

tutti

passata,

alcun

a chi

gli

creo

uscenti

ammissibile,

da

tanto

zr rimangono

non

meno

un

arco

ammissibili

ed

che

esca

il lemmu

dimostrato.

tmo

alla

lift-to-front,

rete

come

ammissibile

al solito,

Lm-To-Feoxv G , l

2

L for

4

w

6

while

nevt nJ

lemma

ne

di

ricordi,

r tt.

liita

dal emma

se u è l ultimo

concatenata

27.26,

ve time

L contenente

che

la rete

dell i

ammissibile

27.30.

i vertici

in avanti

la tane

della

l eccesso

in

è un dag .

liste,

VG oeni

s, vertice CI I

che

che

causare

un

la lista

di ogni

fine

la

u c I Clll lt

in quulunCfLIC V GJ

Se

si

esegue

un

ordinamento

or lamell o

lli k/ iV ll

1teacl L n c wc

J

vertice

in

L

veruno.co es ere

Gev

se il puntatore

t . Cosi.

n raggiunge operazione

nessuna

di conceguen7. i.

0

istante

d ogni

applicabile.

v

Ltvw-To-Ft or

su

dei

tcipologico

C, Cilllc

s. I

ogni

si osservi

operazio-

nessuna L.

L contiene

la lista

una

vertici

rete

di

nella

11usio

rete

Ci

V.

ammissibile

E

snr

con

G,,

.,

r.

di

tale

oche coca

prima

termina.

che

gar n tisce

oppure

vertice

che

prossima

innvlz unento.

tra poco.

lungo

all i

dimostreremo

preflusso.

iunge

r rag

se

il vertice

usi

usato

Per

Liw-To-Front

quando

osservi

di

l operazione

27.30

Lemma

lista.

senza

in eccesso

più

Si

de

stato

decisione

lista.

massimo.

11ucso

generico

il vertice

nella

posizione Ull

algoritmo

dimostrerentn

flusso

di base.è tutti

che

nuova

CQ1CO1B

d ll

applicabile. scaricato

stato

essere

iud

nella

ii hile

ciclo

del liita.

alla

u era

Se

n dopo

di

L.

della

dell operazione

prima

l altezza

con

iterazione

in tee a

spnst ito

da mostrare

Rimane

è più

Il lemma

i

segue

realizzazione

27.29.

base

questn

Lr -To-FRONT

S

PREFLOlV G.

CIO

5

si

una

che

old-lreighr

ia ore

la prossima

che stato

.s. t

liNlTIALIZE

3

manterremo

è una

dal

dev

lift-to-front

Nell al ori

L e che,

è

L. Se

u era

che

mnitrare

algoritmo

R

Algoritmo

rispetto

da

in moda

è quello

iterazione Per

27.27,

lista

u nella

segue al

11 ta

variabile

di ti nella

e confrontando

8.

L. Questa

lista

alla

in testa

vertice

primo

linea

alla

scaricato

u viene

dal

ciclo

tale

di

la lista

lungo

avanza

3-4

di vicini

lista

nella

6-11

linee

alle

10 lo spnsta

la linea

l altezza

7

linea linea

La

9.

linea

come

chiave

procedura

vertice

un

ciclo

del

Dlscw RGe.

memorizzando

presa

scaricamento

l arco

di conseeuen-

uno

vertice

linee

Le

ordine.

qualunque

il primo

5 fa partire

la linea

Infani,

a11a volta.

iterazione

ogni dalla

innalzato

con

viene current u

i vertici

ivhile

il ciclo

27.11.

figura

in un

u con

vertice

di ogni

inizializza

linea

La

e

il preflusso

1 inizializza

linea

di preflusso.

generico

traboccanti.

potenzialmente

nella

La

seguente.

modo

dall algoritmo

usati

currenr

il puntatore mostrato

u. Come

27.28.

i vertici

tutti

inizializzano

linea

ic sono

gli

E con

la lista

valori

stessi

nel

funziona

lift-to-front

L al oritmo

Le

hert u

u.

le àltezze Dimostrazione

L

lista

alla

o in testa

sposata

then

10 Se

589

nurssimo

Flusso

27

top o

o

G

ente

K

,,

s e

pozzo

r.

allora

E,, .

,

Iyl

z

556

Capitolo

27 massimo

flusso

6 5 4

L

x

y

N

s

s

x

5

3

-

J

4

3

a

6

p

f

y

x

Z

s

s

x

x

J

V

g

Z

g

S

3

y

.l

2

t

2

N

d

l

2

0

l

I 0

6 5 4

L

x

y

z

N

s

s

x

3

b

6

2

z

X

5

X

4

z

p/

cP

S

CP

I

g

1 0

0 p,

p$aTQfQ

c ontim a

I l

6 5 4 3

c

Analisi

l-

Y

N

s

X

s

r

x Mostreremo

Y Z

f

c ontinuir

L efferro

di

Lm -To-Fno t.

Una

a

rete

di

subito

flusso

a pe gina

della

prinuv

w tità

di Jleisso

è innévl

vengono

aro,

essri

in iene

iate

a y e le

sg r stesto

in

imanenti

testa

7 u

od

L che

rirà in

in

qnesto

eccesso caso

engohn nmr

in

ecnnbia

iarde

nuinero oc

prima

.

di

totale

di

innalzamento

aal tempo

O VE

inn lzan1enti.

,.21

totale

t. Praie b

impiegato

per

rn ir re

un

limite

di

O VE

al

totale

numero

su

torrli ce

di invio

di operazioni

ed

up

rio edi

un l

03 O Y V-

di

liiniti

un

a Cli

cupe iure

Llll figli e

27.

d di innalzamentnedillemma 27.

le operazioni

.eieeuire

limite.

vertice

o 27.4-2

l Esercizi

eun

forni.

he

peer o ni

eseguite .

Inoltre.

Oi l

di eieiùt .One

Lttl teilipo

Ila

é

c ic

-

operazioni

Teorema

al po. -o

ssrutnrra.

.

G

seqt ente



x

di

lo-FiroiT

LIFT-

proceduiJ

flusso .

aal numera

27.11

lu

che di

e

T

0

Figura

ora rete

ualunque

wtur inte.

27.31



Il tempo

De po.v.

su

--, di Lt -To-FRowv

di esecuzione

rna

G V.E è

eretediflu o

qualunqu

OV

.. o

er. ioni

i

er il se ucn eri ucnte lállll l

Lrtw

To

FRost

ha

è un

prepuzio

eaggi urrr

flussi

ta

fine

clelia

lista

L e

er nincr.

JVon

i sriru

piir

srte ssimii.

ertii

i naboc

c cmri

il

el

em mojvo.

Q

un

vertice

tCit

1ll id

l ordinamento

L.

è

stato

II,

I11CtltlV

inn.,l ato.

l ilguritinv

Cl

il

p S iÈH10 irun iicv

lemma

7.

CYSClt . che

Jl lll

R

che

g.,iantisce

illlllllissil ili

qualuitcpie

non

uscenti reo

ammissihilc

vi cl i

i

. Se

..- non

DiscHwecr-

Utl

eiCQLlc

loc,

.

.

.

iaeati ci

i

.,

iinnalz.imento.lapros ima .. VQ

..

.

..

t.

-

..

lli llll

àV ll111

ni

sono

p

llClla

listo

la

Le

1.,1

QIIOl,l

lllllDIZdl11ClllO.

P

Vi

oiché

faii.

O Y-

OpCI lZIOlle

.

1

llll CZZ ,

..

.

.

.

l

pro,iimac

Clltfilllll

a

in

fasecontieneal

.,inno,rA,i,.unmis,.il ili w.

Quintali. uscente

ipiist incl cle

n

n

ill

ciclo ci

n

m iiiino

iodcliili

svhile svsi

e 0

in

l

in -T --Fi wr. -

..

il

esclud n lii

. f tt

1 Ivnrn

eli

ill interno

w.si c r .

Drs

è

1 .

topologico. 8

CUOIO colui-,lllc

I csccllliollc

ckll

..ll,,oriti11A,

0,.

lti

ilcr..l/i Ile

c

L l tcttu ilo aie

A

tll inlcrno

eli

l3I ll

iI t

i

592

Capitolo

27 massimo

Flusso

esegue

una

tn

eseguire

per

tre

Cominciamo limite

volte

per

liste

dei

che

viene invio

ora

che

l azione

volte

Di conseguenza,

vicini

di tutti

tipo

di azione

il numero eseguito

riduce

volte.

cosi

invio

non

vertice

totale

di lavoro

saturante,

necessaria

abbiamo

totale

impiegato

VE .

Si

OV

un

invio

la procedura

effettuare

b

che un

saturante

non

che

Sappiamo

inoltre perché

non

invii

VE

nelle 5.4-1 .

7.

linea

Discv Rcz

degli

OV

grado u

Esercizio

osservi

se tale sono

griglie

ogni

per

biatrchi.

...on

Una

a

griglia

wa

fi

mostrata

ga.

dai

cammini

Una

b

grigi.

se,ca

griglia

fughe.

viene

invocata

saturanti

è uguale

4

azione

i puntatori

immediatamente,

al massimo

un O

8. Questa

avanzare

di invio

è O

ritorna

è quindi

linea

di mano

è un operazione

per

di Ltd-To-FRONT

stretta

fornisce

innalzamenti.

quindi

far

per

delle

osservato,

già

alla innalzato,

saturante

essere

27.4-2

O V-

gli

necessario

DtscHwRce

ci può

L Esercizio

current a

il iemma

per

4-5 . eseguire

u viene

totale

di invio

a 0. Quindi,

il tempo

un

da DISCHARGE

di operazioni

di esecuzione

che

è O VE

come

ad

il puntatore

il lavoro

effettuato

di DISCHARGE

Il tempo

volta

ogni

i vertici

I eccesso

la quantità

linee

necessario

aggiorni

totale un

ora

di innalzamento il tempo

per

vertice.

chiamata OP

O VE

O grado u

Il terzo gih

Analizzeremo

azioni.

le operazioni

di

Supponiamo avviene

di queste

con

superiore

mioni.

possibili

ognuna

593

è O V. .

a OP.

D

Problemi Esercizi 27-I 27.5-E

Si

illustri

l esecuzione

di

procedendo

in modo

simile

dei

vertici

in L sia

AV

N v, N v,J Wv

27.5-2

v,

v

v

figura

27.

e che

le liste

i,

di

I I. Si assuma dei

flusso che

i icini

della

figura

27.1

l ordinameisto

iniziale

bordo.

traboccanti.

sono

consiste

nel

partenza

ad

t,

t.

ma

è stato

che

vetsgono

scaricato, che

massimo

in tempo

Si mostri

che

questo

Si

mostri

il

metodo

dei

scarica erano

viene

si

pret1usii

Dopo

dello che

la coda

quando

una

i vertici

prima

coda.

essere

puo

si n antiene

ripetutamente

alla

rimo sn

realizzato

dalla

coda testa

scaricaissento, il vertice

FIFO della

nella i, j

punti

è vunta.

l vlgoritmo

in modo

da

trovare

che

alla

Si consideri

i

lo

coda

vincolo

rete

con

funzion i.mcor i h iij

scarica

se Lirr intluenza

Q rie

u ha

QLICsto

su

una

in cui

netto

che

e vertici

archi

.y

ha

ad

di vertici. viene

come con

denotato

sul

di quelli

eccezione

j n.

nellapiglia.ilproblemadeflafuga vertici

con

la griglie

dai

disgiunti

figura

della

e ierc

un

vertice

realizz,tu

trahoccanlc in

mo

di da

altc .a

t1ui o

b.

Si descriva

fuga.

i vertici,

oltre

entrante

ridotto

nd un

hanno vertice

qualunque

il f1usso

di determinare

il problema essere

archi.

ag1i

in un

ordinario

una

capacità. ad

è soggetto

in una

mussimo

problema

di

flussn

comparabile.

un

algoritmo

eft ciente

per

rioni

vere

il prnblenla

fuga

della

e se ne analizzi

di esecuzione.

27-2

COp81fllM

llllllll lQ

CQIPtl1Illlf

COI1

cambiamento

ni rssim,i.

Illof t minimo

richiedere

1emp ,

di

punti

ha una

27.12

alcuna.

anche

può

vicini,

m cammini

di dimensione

di.flusso

j-esima

1 oppure

,.... x

positivo

Si mostri

rete

ne

e it colonne

e colonna

termina. un

calcol in-

ginrn ili w

V

non

di flusso

il tlusso

n, j

o meno

di n righe

quattro

Ad esempio.

27.12 b

rete

i-esima

.

sempre pui

I.

figura

capacità

siano

sul bordo.

di capacità.

su

tempo

c

distinti

una

massimo

l. i Y

vi

consiste

riga

esattamente

hanno

percui

se

precisamente,

un

alla

VA

i punti della

che

orientato

Il vertice

griølia

determinare

la griglia

Più

coda

ma

in testa

di

OV .

Llvw-To-FRowl

se

in cui

traboccanti

in tondo

algoritmo

li n

di

che

di preflusso

l algoritmogenerico

sémplicemente

sull anslisi

non

posti

esso

Si mostri

do

algoritmo

L algoritmo

vertici

dopo,

dei

non

27.12.

figura

i vertici

cioè

fi ga

grafo

Datim n-puntidipartenza lj

i

un

nella Tutti

i. j .

siano

della

n x n è un

griglia

mostrato

,

i,,

realizzare

ed eventuali

27.5-4

li,

s.

,.

rete

SUlla

Problema

Una

a. Si vuole vertici

27.5 3

S,

v,

alla

i ,.

i,.

V

i,.

Ltm-To FROnT

O

mrmern

urie il

lt to erat o

aciclico Ci

di

possibile

l .

Ci V.

E .

V.

c mmini.

L. dove

Strggc

riv ro ,.t ,u

liendo

elle

V

t.

,....,t ,i

co.,truicia

il

Capitolo

27

E

-n V

i c

xe,x,

u

V

i c

yy

u

i,

x y,

Per

b.

c E

j

un

un

algoritmo

di flusso funziona

proposto

anche

per

orientati

grafi

che

cicli

contengono

variante

seguente

Si motivi

di

K,

almeno

di capacità

aumentante

cammino

un

che

si mostri

K,

se

OE.

in tempo

trovato

essere

può

massimo . La

L algoritmo

CE.

al più

capacità

di G ha

minimo

taglio

numero

dato

esiste, e si esegua

un

V

3i

Po

che

Si deduca

a. t

o

b.

595

massimo

F/usso 594

FoRo-FucmRso -Matvoo

usata

essere

può

flusso

un

calcolare

per

in G.

massimo

la risposta. s, t

Max-Ft.o -BY-Sc uwa G, 27.3

Esperimenti

Il Professor navette

E

pagare

alla

navette

I,

R. c

sottoinsieme

I. Il costo

consiste

professqre

e quali

effettuare ricavato

netto.

strumenti

volo,

ogni

commerciale

peri

risultati

dell esperimento.

ogni

su una

trovare

un

algoritmo

il ricavato

totale

per

lo strumento

efficiente

E

insieme

strumenti

gli

in

effettuati

meno

da

i vertici

E .,

while

in

totale

rete

ed

E

G.

vertice

un

rete

La

contiene t. Per

pnzzo

un l

vertice

l. 2,

sorgente

s, i vertici

I,

...,

vi è un

n,

arco

I

s.

l,

n,

a.

se f, c

Si I

mostri c

R,

vi è un

allora

che

se E

arco

T per

c

un

E

I, tagli i

di capacità di

T

5,

gli

....

l,

return

finita,

Ic

allora

T per

valore

ogni

R.

c.

Si mostri

valori

Si

un

dia

deterhsinnre

come

G e dai

strumenti

netto

massimo

dalla

capacità

del

taglio

minimo

tempo

di

che

efficiente

trasportare. r

determinare

per

Si analizzi

il tempo

esperimenti

quali

di esecuzione

effettuare

dell algoritmo

proposto

e

in termini

che

Si supponga

v

c u,

superiore

IRA 1-

g,,

a.

G

Si

Si

un

supponga

arco

al

supponga

r

,y w.

i

la

c

cvpacith per cnpacitb

algoritmo

per

iac reuientrrle una

E.

ri.te Si i

C

di

con in

oritmo

Cetlcolri G

la

che un

alle

interno,

più

Max-Fxov,-Bs -Sc uvc

linee

5-6,

viene

essere

può

di

mai,

t e capacità

pnzzo

interè.

Si supponga

a.

di aver

di

un

brolo

sin

arco

il flusso

un

in

a j iorriare

con

Si dimostri S,

aggiornare

del f1us,o

sorgente.s,

G.

il

w.

in tempo

i

ii.

F

s

m esimo

f1usso

E ven a

c

in

venga tempo

incrementata OV

I.

ente i .

s.

porro

f ed

una

c pacitè

intera . ,

b.

Si

di

l.

Sia

Si

l

E.

per

op,i

G

arco

per

il tlusso

di

volta

ogni

2K E

G, è al più

eseguito

ogni

OE

volte

per

in

realizzato

modo

da

richiedere

f siilla

che

se f è un

che

il valnre

rete

deve

che

non

lr .

soddisfare

f

su G, allora

flusso

v

f u.

i . Per

c ii.

una

solo

capacità

b u,

inferiore

capacità

una

quindi. di questo

rete

flusso.

alcun

esista

v

non

abbia

V. una

anche

u a v, ma

da

G

di flusso

rete

in una

netto

inferiori

ed

superiori

T

c 5,

b T,

5

se

esiite.

un

per

taglio

qualunque

G.

b T,

T V.

v

u.

succedere

Si dimostri c 5,

E.

decrementata OV

di

massiino

J tssso s r,

i

massimo

arco

olo

n.

T

capacità

con

ogni

flusso anche

può

inassisno

flusso

di t1usso

mas imo

che un

27-5

ete

flusso

fornisca

g.gi,

una

E

V,

forniicu

b.

del

Aggiontamento

calcolato

while

massimo

Flusso

27-6

quali

tipo.

Sia

residua

IgC ,

O E-

un qualunque 27.4

rete

prefissati.

p

algoritmo

di m, n, e di

il ricavato

della

K.

di

concluda

Si

minimo

eseguita.

il ciclo

che

Si deduca

f. b.

4 viene

taglio

di un

la capacità

che

la linea

massimo.

flusso

un

calcola

M,ex-Fio -BY-Sc uxa

che

Si mostri

e.

p

K/2

f

Si dimostri

d.

di capacitò

f lungo

il flusso

aumenta

K

almeno

p di capacità

aumentante

cammino

un

esiste

K-

8

infinita.

G di capacità

l hite do

che ...,

K do

7 il

per

I,

f a 0

2

6

esperimenti

massimizzare

il costo

u, il flusso

un

c.

la seguente

E.

K m

4 5

trasportati.

Si consideri

3

Il compito

quali

modo

C-

inizializza

v

l

di

un insieme

usano

determinare

per

E.

convenuto

ha

max,

1 2

di

strumenti

I, è di c, dollari.

volo

certo

un

esperimenti

gli

un

esperimenti tutti

di voli

serie

e qua1i

E

richiede

E.

di

considera

Gli

navetta

a bordo

portare

effettuare

dell esperimento

esperimento

portare

una

organizzando

la NASA

sponsor

strumenti

cioè

Per

sta

commerciali

esperimenti

volo.

per

nel

la quale

e lo

strumenti

di

NASA

quali

di ogni

dollari I

...,

della

decidere

a bordo

NASAp

spaziali

consulente

di esperimenti

I,,

del

e deve

essere

E ...,

I

è un

Spock spaziali

devono

con

E

S

una ed

.c e r la sorgente

c pacitè

funzione

di

l

l

E

EU S, V

u

su

calcolato di tlus,,o

rete

il puzzo

flusso

di un

di

superiore

tutti con G.

tn issirno i tagli

5.

T

nella

rete,

della

rete. superior,,

di capacità

turioni Si co truisca

c e pozzo

c...,.orgent,

di

la rete t

tlusso modo

nel

s ,c , U

C

V U ll.l

51

U s.

.S

è il valore

eci inferiore ordinaria ie,enle

G

di

minimo

c e I e siano V.

E

Con

596

27

Capitolo

Le

vengono

capacità

c u,

v

Per

ogni c t,

v

c u, vertice

u c

d.

gli

archi

Si

dia

che verso

un

V, si pone

esiste

archi

nel

modo

cos ,

u

b V,

u

un flusso

il pozzo

seguente

e c u,

per

t

o che

ogni

arco

V.

Inoltre,

v

u,

c

E, si pone

b u.

r

cos,

poniamo

esecuzione

che

algoritmo

deI1

un

flusso

in cui

in G

massimo

tutti

saturi.

trovi

determini

se esiste

in G se e solo

t sono che

algoritmo

superiori,

Note

agli

v.

.

s

Si dimostri

c.

assegnate b u,

un

tlusso

non

massimo

esiste

alcun

in

flusso

una

rete

capacità

inferiori

e

Si analizzi

il tempo

di

con

ammissibile.

proposto.

al capitolo

Even

Laivler

65 ,

riferimenti una

rassegna

bella

Il metodo molti

in grati

trovavano

che

sviluppato

veloce

l abbinamento

o

d .

di tempo

tra

usando

pref lussi

preflusso

massimo,

a Food

il metodo

visita

dei

proposto

sinora

O VE

1g V/Q .

scoperto

buoni

forniscono

83

Edmonds

dovuto

a

Il migliore Hopcroft

e

e Karp

a Goldberg

l

e Tarjan proposto richiede

19

Il più

82 .

Goldberg

101 ,

hanno

63

Karzanov

algoritmo Karp

e di

massimo

di Ford-Fulherson

in tempo.

è dovuto

formalizzato

flusso

metodo

polinomiale

preflussi

hanno

di

del

in ampiezza,

è

da

i quali

71 i problemi

realizzazioni

a goritmo

sono

188

e Tarjan

flusso.

compresi

le prime uha

di

Tarjan

Tardos

e Fulkerson

flusso,

un

produce

d esecuzione

bipartito

di

e

154

Goldberg, di reti

problemi

Molte

strategia dei

l idea

un

reti

delle

aumentanti

questa

algoritmo

ottengono

per

Steiglitz

relativi.

algoritmi

è dnvuto

bipartiti.

i cammini

dimostrato

ed

di algoritmi

nell area

problemi

e

Papadimitriou

132 , di flusso

di Ford-Fulkerson

abbinamento

ha

reti

per

che

85 sinora

per

ten po

Introduzione

Complementi

ed

este nioni Questa di

affronta

parte

libro.

questo

combinatori

una

limitazioni

al

teoria di

progetto

dei algoritmi

tecniche

e introducono

efficienti

come

la geometria alcune

discutono

capitoli

due

ultimi

iniziale i circuiti

come

calcolo

specialistici

argomenti

Gli

numeri.

di

modelli

nuovi

coprono

Altri

paralleli.

la

o

il materiale

e completano

estendono

introducono

capitoli

o i calcolatori

computazionale

che

di algoritmi

serie

Alcuni

note

affrontare

per

queste

limitazioni. Il Capitolo

28

molti

raneamente che

Il Capitolo capitolò

29

usando

un

vedremo

circuito come 30

calcolo

dei

semplici

dati,

calcolo

inclusi

parallelo,

dimostrato

il teorema

randomizzuto

di l l

metodi lineari

i

3 Lstedia che

Strasien

con

il mctndo

decomposizione di eèiminazione

l inveriiòne

e la hloltipiicuzione

ugu rlnwntc

ctTicientc.

generale

di

calcolo

del

discute

anche

concorrente

alla

memoria

e un al

calcolatore

possa

un efficiente

del

generali

Viene

condivisa.

simulare algoritmo efficiente

nntevnlmente

deterministico

ori tn o

del

utilizzando

aspetti

parallelo con

si conclude

Il

PRAM. puntatori,

descritte

sono

tecniche

dei

salto

Molte

un

Inoltre

chiamato

parallelo quelle

Il capitoio

come

O lgii

riporto.

O lpi .

alberi.

I capitolo

Questo

in tempo del

previsione

in tempo

comprese

combinatori.

di Eulero.

mostra

che

con

binarie

e l accesso

dei suffissi

moltiplicare

di confrontatori

rete

addizionati

essere

di n cifre

e gli

combinatnrio.

algoritmi

puài

generali

Brent

in una

la simmetria

Il Capitolo

l

di

il calcolo

per

rompere

per

ciclo

l efficienza

un circuito

efficientemente

del

le liste

incluse

una

i circuiti

parallelo

possono

di base,

par gliele

e la tecnica

prefissi

strutture

mode11o

un

le tecniche

contempo-

di eseguire

costruire

addizionatore

numeri

due

introctuce

presenta

binarie

chiamato

moltiplicare

Capitolo

capitolo

di calcolo

modello

combinatorio

come

In

di confrontatori.

reti

consente

che

o mostra

di n cifre

numeri

due

le

parallelo

algoritmo

O lg -tt .

in tempo un altro

introduce che

capitol

Questo

n numeri

mostra

è un

di confrontatori

confronti.

ordinare

possa

Il

rete

di calcolo

modello

il primo

presenta

una

povere.

parole

lista. efhcienti

per

operare

due

matrici

nxn

LU

matrici.

tempo

in tempe

i p iisui o

essere

On .

ese

Mostra

uite,

con

Comincia

per

risolvere anche

l algoritmo inoltre

Presenta

O ir - . LUP

e decomposizione

di Ciauss

di m tric

ielle in

che

asintoticameiite,

due

equazioni l al oritmo

in modo

á00

VII

Parte

32

capitolo aq tipqe ppu er

eprja

gp gn

studia

33

f gzp $plo

RSA.

pppp za

I euristica

Io stato

dell arte

un altra

e che

strin..a

pz zz

ett ciente

polluzione gqq d 1j

elegante

raggiunge

qpz ipe insieme

tra

a stati ottima

in codice

Il capitolo

in

presenta

può

essere sistema

RSA.

interi

in fattori

usata

trovare

per

Infine,

il

Nella

e

n1acchine

primi

in modo

all interno

dopo

Quindi,

aver

l algoritmo

presenta attraverso

la presentazione

una

delle

Viene

esaminato

base

della

itltersezione.

in un

qqzq

àanno

come

iOIBAlecsO zp fpl p

q gp qtp,

si

luogo. a

un

conosce

un dato

V1 lgglQtOIC 37

qiiluzioni

mostra

trovare

algoritmo

mostra

come

insieme un

over

di

efficiente

un

convesso

trovare

algoritmo presenta

ciclo

se un

valore.

che

dato

di

sono

Hamilton, insieme

ll capitolo

risolva

stati

di

qualcuno

per

determinare

dimostrati

determinare

se

Come

algoritmi

approssimate

che

si.mo

questi

comincia

h a un sottainsiet1se

dintostraehe

il famoso

vicine

essere

possano

a quelle

ottime

sono

usati

abbastanza

della

costruzione. una nel

insieiric

e il pr bl ni t

dCllacon1m.t

di

sola

sul

basati

calcolatori

per

operazione

seriali

alla

volta.

In questo

di

calcolo

a rete

modello

essere

possono

macchina

confronti.

empiere

può

RAM

RAM

eseguite

su

carat

una

rete

le operazioni

di

contemporanea-

teristica

importanti

consente

come

aspetti.

- cioè

seriali

eseguite

sort

In secondo un dopo

l zltra -in o

simultuneanxente.

la costruzione

In

il counting

di confrontatori.

sono

essere

possonn

in due

un algoritmo

Quindi

realizzato

in cui

di confront tnri questa

eli reti

di confrontatori

sub-lineare.

2S.I

anche

data

con u

la definizione

definizione

fortemente ettata

pm

rete

delle naturale

presenta

Si

tasodifica

28.5.

valori

rete

del

compito

che

reti di confrontatori .tempa di esecuzione

analizzme

e delle

reti

di una

leggen sente

due

sequenze reti

queste

che

l.3. . La -bitonico

paragrzfn

l ordinature

fondere

correttezza

la

efficiente

di un ordinatore

si assernhlzno

in tempo

de

il progetto

puo

di

di ordinamento

merge-iort

28.3

di tusione

il

una

dell algoritmo

paragrafo

ordinare

puo

di rete

di fusione

costruzione che nel

bitonico

in una

ordinate in una

delle

reti

è. essenzialmente.

rete

di uno tre

prevede

è il blocco paragrafo sequenza

di base 8.4 per ordinata.

di ordinamento

che

O l ,- .

i cui

prohlcma

per

Reti

di confrontatori

trnvare

facili

da cnntront tori

C it. .QUC

di

rete

facilita

parallela

mostrato

b II opertura

non modello

paragrafo

Sarà

Il paragrato

di

pr plenl

al

dalla solo

in tempo

Viene

passi.

Infine.

NP-

28.1 approssimati

di confronto

9.2

si vedrò.

che

produrre

forn ula

di nti meri

inoltre

di ordinamento

d.il

n valori

ordinamento.

quando

una

algoritmi operazioni

differiscono

in una

zero-uno

più

essere

ordinamento

di una

un

computazionali

problemi

le tecniche

classici

problemi un

interessanti

di

algoritmi

gli

l esecuzione

eseguire

possono

il paragrafo

ordinano Si

metodi

la coppia

e i

ordinamento.

di

dei

C NP-COrl1plLtO. come

di

presenta

la potenza per

che

le

metodo

segmenti

inviluppo

- mostrano

discusso

molte

diversamente

versione Molti

capitolo

hz

grafo

un

di Jarvis

aicun

e determinare

somma

per

NP-completi.

Alcuni

se

un

se

Dopo

esaminati

consentono

confrontatori

- le operazioni

piano.

Questo

NP-completo.

cleterminare

nel

i problemi non

con

35.

il capitolo

e algoritmo

si chiude

Capitolo

efficiente

algoritmi

di Graham

polinomiale.

j.Q jQ g Soddistattibile

va ori

interessanti

di punti

ma

i

p pQlem l

completi

in modo

Il capitolo

in tempn

problemi

computazionale,

insieme

NP-completi,

del

geometria

36 considera

Il gapitolo

l argomento

determinare

algoritmo

dato

veda

si

di

parallelu è

Due

di punti

in cui

luogo.

priino

di Knuth-

dovute

stati

che

si affronteranno

reti

Le

una

pre-elaborazio-

euristiche

sono

n ente.

di

di testi.

II RAM

confrontatori

inglese

in

stringa

di scrinura

astuto

Parte

capitolo. di caratteri

di una

il capitolo

con

una

a chiave

del

programmi

e Karp.

finiti,

lineari

presentata

messaggi

stringhe

le occorrenze

Rabin

le equazioni

in fattori.

nei

si chiude

compiitazionale

pg5Qg fállllLllto.

vicina

/CI

di

automi

Il capitoIo

possa

g j

tutte

frequentemente

rassegna

la crittografia

numeri

di confrontatori

il massimo

e Moore.

di pp p ive rastre lamc.nto

pp

di interi

trnvare

l efficienza

a di input.

strin

veometria

gj

su

scomporre

per

comspondenza

approccio

basata

che

ppqtt

nel

che

essenziale

Reti

n in tempo

una

È qu indi

numeriche.

di Miller-Rabin

Pollard

Dopo calcolare

scrivere

per

di Fast

parallelo.

per

numeri

firme

richiesta

della

consiste

usato

grado

tecnica inglese

circuito

numeri.

numero.

dei

fornire

per

scomposizione

si presenta

un

presentato

di

il problema

che

mztching

essere

può

anche

grandi

ro della

studia

34

Qpit010

primi

teoria

di

risolvere

per

nota dall

un

dei

un altro

sulla

di primalità

numeri

al tronta

solo ma

teoria

algoritmi

gli

ben

FFT,

polinomi

di Euclide

modulo

basati

non

leggerli,

randomizzata

efficiente

czpitpfo

sistema

sulla

mostrati

una

compreso

l algoritmo

à potenza

di algoritmi

possa

fa veriAca

mggo

g ng

vengono

due

dell FFT.

si basano

rhe anche

detta

moltiplicare

presenta

un numero

Questo

nessuno

p che

g qqute

seguito

elevare

di Fourier

per

che

e mostra

polinomi

efficienti

numeri,

interessante

zpp icazione

qp pJi

dei

Nel

usata

algoritmi

presenta

divisore.

sui Veloce

realizzazioni

elementare

jAri e per

pgg

operazioni

essere

può

Inoltre,

gg jg

Bover

le

la Trasformata

Transform

g p gn .

mog

studia

segnali

dei

c c itit iita nella

I,l

.

inin .t.

y

in ts .v.

sottoiniieme.

l i .uri

iCQllClllv .

fllll/lOlll.

v

y

escluiiL ,li11c 28.1 ..il.

. .

i.. u

lllC di,poiiti ,

li

t ili

clctlrici coA

dui

e c I1 rnntatori. il put.

x

e,

Un e due

costfrr lttntore.

output

s

e y

. che

602

28

Capitolo

di

Reti

7

-

.r

X

3

min x,y

confrontatore

x

min x,y

y

max .v,y

3

V

max x,y

y

a,

b

na

come

Uir

a livrea

confronratore

verticale.

iirput

con

Sono

mostrati

x e

e output

i put

gli

x

bey.

7,

Lo

b 3 e gli

y

stesso

coi

b

disegnato

frontatore

ourpur

3,

5

6

6

b,

Cl

28.1

9

c Qq

b

Figura

8

y

6

a

7

3

D

b

nella

valore sull

output

due

input.

di disegnare

figura

di input

28.1 b .

più

in alto

figura

una

sulla

sull output

pertanto

con

appaiono

input

appare

Si può

nella

i confrontatori

Gli

piccolo

in basso.

di un confrontatore

grafica

la conv nzidhe

mostrato

b

à

la rappresentazione

si adotterà

semplice

sinistra e il valore

è troppo

linea

e gli di

ad un confrontatore

pensare

28.1 a

verticale,

output

input

come

grande, come

sulla

più

destra.

9

9

il

Q.

9

5

a un ordinatore

dei

5

6

che

ogni

confrontatore

la comparsa

operi

i alori.x

dei

in tempo

e y di input

01.

In altre

e la produzione

si assume

parole,

dei

valori

x

che

e y

di output

all altro.

rete

ordinare rete. b.....,

sia La

riferissi

figura

un

confrontatori.

si connette

confrontatore

input

un

i alore

a,....,

Analogamente, di

output

requisito deve di

principale essere

un

indietro

figura

altro.

aciclico a11 output

formando

del

del input

output

oppure

di un conti rete

Cl

1

si SLgue

iran ciclo

dei un

cammino

ilI iilplll iu

ic

stesio

e cosi

è

si userà

5

6

9

9

insieme

Si

fili

input

i valori

Figura

28.2

distinti

che

confrontatori insieme

un

I I

linea

una

E

confiv ntcttore

di

non

di

i loro tempo

A,

il filo

che

connette

l

l output

Ir,, che

esce

a un

filo

che

di input

i

in alto

del

dall autput

è o uno

di

citi

altro

a un

confrontatori

di

telo

che

un

altro

è che

il

rafo

dall output

n . passare

il cammino attraverso

di un

dbto e

degli

al tempo

uno

stesso

D, ma

mostrati

nello

è o uno

degli

2. essi

che

rere

nna

tempo,

tutti

i loro

diordinameirto.

del

o

confront tore

questi

E ha

2. il confrnntatore

i suoi

ai fili

di output

hn li

valori

i loro

quindi

di ponihili

confrontatore

valori

di input.

Il che

esso

fili

di output

all input mai

conducono

ultimi

i funi

produce

b. Qe ,

valori

di output

al tempo

di output

e la sequenza

2.

S. 6. 9

al

Un

i

1

tempo

tempo

unithdi

Anche

28.2 c .

in

C e l output b, e b della 2. Nel

condotti

di

rete

frattempo, mostra

28.2 d

e la figura ono

al A e

i confrontatori

tempo

al

valori

3. Questi

un risu1tato

Quindi,

del

in alto

unità

richieda il loro

nel la figura

mostrato

come

L nutput

che

disponibili.

di inpot

rispettivamente,

D si connettonn.

controntatore

finale.

confrontatore

28.2 b . Si noti in parallelo .

valori

output.

in parallelo.

tctlore

loro

A e B producnno

iigura

nella

il

ogni

i confrontatori

stesso

il loro

producono

C e D operano

n tili

cunfrontutore.

deve

rara

portano

Supponendo

E, hanno

non

r fili

di interconnessione

non

e b

confrnntatore.

confrontatore

uito

è in tenltà

clte

I

I

vi .

b.

di output.

sono

valori

i loro

del

al tempo all input

e 4 ourp rr

4 inpur

ourpr t

li

disponibili. i valori

risultanti

Ce

controntatori.

è connesso

connesso

di input

i valori

producnno

basso

a11 output

con

I fili

3.

calcolare

i confrontatori

è connesso

fi ontatnri

con

i vari

il filo

dopo,

di output

di

a profondità

valori per

I

8 fili

rete

Una

a

nome

contesto.

connettono tre

3

output

tempo

rappresenta

2

d

da

dal

che

2

1

calcolato di

come

noti

l

profondità

in

tutti su i

2

p

c

che

lo stesso

chiaro

un

altro

il risultato

2

I

un

confrontatori

ontatore i

che

di

è connesso

oppure

sempre

esempio,

C e il filo

dell interconne siune

e poi

serie

confrontatore

rete

sarà

di un

e di sequenza

Cioè,

di confrontutori

per

confrontatnre

a

da

si assumerà i quali

producono

a ...,

verticalmente.

una 28.2,

input

capitolo

attraverso

e di output.

di un confrnntatore

f della

se

rete

a.

b che a,,

disputi

piuttosto

input

b ....

input

all

In questo

a,.....

ccurfiontatori una

ma

a della

b,....,

di

della

input

confrontatore

Il significato

filo,

ciascun b,,

rete

a,.

trasmette

filo

rete.

di input

i confrontatori

C. Ciascun a,,

tili

sui

in alto

a un

A ad un

confrontatore di

singolb

input b,,

trasmesso.

una

della

di

Si rappresenta

coh

La linea

di

di output

ai valori

fili.

orizzontali

n fili

di seqaeiva

nostra

di un

o di output

e n fili

il valore

per

tramite

i linee

che

che 28.2

rappresenta

a,,

rete.

b

interconnessi di

nella

semplicemente

l output

di input

contenga

si parlerh

il filo

per

fili

Inoltre per

anche

connettere

possono sono

confrontatori

entrano

dalIa b,,

essi

di

chiameremo

che I tili

contrario

una

2

b,

a

sia

profondità elettrico

filo

posto

5

il

costante.

caso

6

suoi 5

tra

Un

9

l

assumerà

tempo

I

appare

grande

Q,

Si

1

l

profondità

Poiché

á09

confrontatori

sulla

ai

rete

completa.

è or

tornare due

di esecuzinne

di una

cuntront ri.

Ia

rete

di contront tori.

cioè.

richiesto

il tempo

tutti

perché

i fili

di ocrtput

a destra.

pr f niditè

Ji

un

lihi

i

hai

dclinila

i

ii

ùclini c

Ii

proliinùiù

di

un

604

28

Capitolo

Reti

confrontatore

come

dei

confrontatori.

di

output

della

output

per

e se gli output

ere

input

si

sono

reti

di ordinamento.

che

dopo

in alto

2. perciò

il minimo che

confrontatore

essere

rete

giusta

di conf

eseguiti

numero famiglia

una

di

mv

tili

di output .

SoRtcR

dipende

Per

è chiomata

della

che

b

di

valore

a4

bq

a

b

as

b

di

d produce

la rete

6

3

E ha

profondità

dal

numero

di

reti

della

di

impiega

rete

del

di

che

ne

che

le reti

il perché.

28.3

Una

28.1-á

il tempo

dal

elementi

si specifica

nel

di input

senso

e di output.

esempio,

obiettivo etTicienti.

i

numero

di

Quindi,

in realù. capitolo

Unu

data

di input

che

con

n input

ordinamento

devono

di questo

di fili

di

ordinanre to

basata

sul1

inserrion

sori

da

usare

nell Eserci io

28.

J-6.

la rete

è una

rete

di confrontatori

di ordinamento

quella

dell insertion

Si puo

rappresentare

mostrata

in figura

e si descriva

sort

rafo

para

come

28.3.

la sua

Si mostri

struttura

sia

che

in etfetti

in relazione

con

1. 1 .

medi

come che

rete

Si consideri essa

simmetrico prodotto

i due

Figura

o

prodotto

è stato

che

bg

a

28.1-7

procedura

e il numero

capire

è stato

B. Dopo

input

di

assicurare

ordinamento

tutte

C. In modo

3.

Per

di

input

confrontatore

senso

è monotona

non

Io è. Per

282

al tempo

di t li

famiglia la

Naturalmente

i alori

quattro

una

di output

confrontatore

quindi

da

la sequenza

valori

in alto de

procedura

esempin, Soma

alla

figura

quattro

di ordinamento.

il nnme

rete

il suo

produrre

al tempo

di input.

si verifica

è diversa

SOR1ER

con

rimane

una

di reti

f mi lia

è individuata

dei

dei

il che

è come

in essa contei uti -famiglie

ii ilupp re

famiglia

contatori

La

605

b,

di un filo

il confmntatore

per

Q

conpontatori

b

in alto

E non

posizinne.

le profonditè

massima

confrontatore.

è uguale

in cui

la rete

2 il massimo

i confronti.

si de .criveranno

ma

sull output

i1 tempo

rete

A o dall output

essere

mostra

3 perché

di tempo

sequenza

il minimo

confrontatore

deve

la loro

conirontatori

è di

1,

un

0, un confrontatore della

ogni

per

D. Al confrontatare

occupino L na

il tempo

del

dopo

b

di

profondità

di confrontatori

..

28.2

di output.

rete

b.

dall output

si mostra

è una

fili

figura

è la profondità

unità

al tempo

b,

osservi

ha un

la profondità i suoi

La

massima

esempio.

cioè.

di confrontatori

di output.

di confrontatori

richiede

appaiono

in tutti

ordinamento

cente

profondità

per

d. quindi

i valori

recedi

rete

fili

la 28.2.

della

suoi rete

confrontatore

al tempo

produrre Una

figura

3. Se ogni

profondità

dei di una

equivalentemente,

o.

confrontatori

il suo

la profondità La profondità

di

rete

di

di

comune,

1 ordine

dine

delle

una

interi

nell

rete

di cnnfrontatori

intervallo

nella

coppie che

seriale

rete

nella

dei

lista.

determini

da

l a n.

Se

cnnfrontatori

Data

c confrontatori

due

coppie

c

una un

lista

si descriva

la profondità

di una

rete

di

intero

è determinato

rappresentazione,

On

come

contengono

corrispondenti

questa

in tempo

con

in

dall orun algoritmo

di confrontatori.

una

è uguale

e ii output

c coppie

28.1-8

al

Si suppoitgu decrescente

nella

tR i .

massimo

Esercizi

di introdurre, che sul

che

usa

che

usa

oltre

filo

in alto.

un numero

totale

al confrontatore

il suo

produce

output

iXlostrare

come

standard.

sul

un

standard, filo

in basso

trastormarequalunque

confrontatori

edi

e confrontatori

di tipo

minimo

standard

Dimostrare

che

confrontatore e il suo

rete

output

di ordinamento

crescenti

e decrescenti,

il metodo

di

in una

trasformazione

è

corretto. 28.1-I

Mostrare data

28.1-2

Sia

i valori

Iz

che

equenzu

n una

ii input minimo

appaionn

di input

potenza

esatta

e n output

di

valore

su

tutti

6. 5,

9.

i t li

come

pn

i. quello

in input

rete

della

ti

uro

28.2

baia

quando

28.2

di 2. Mostrare protondità

della

2.

in cui

in ba so

costruire il t lo

una

sempre

porti

rete

di output

di confrontatori

in alto

il massimo

v flore

il

Il principio o

in input.

Il

Sielseis

professor

ordinamento

in

radodi alla

ordin ire. rete

dell,

ftern a

una

ci

qualunque

Xloitrvre t,.cri

i h R

in

e

se

si

iun

ag

e

un

posizione.

allora

anche

il profl .S iOIC

Y l St J

liaa

hi, do

ta1

che

la

confront tore la

rete

iun endo

rete

ri.,ult,. ,te

cle

ud

una

ne

risulta

rete

di è

iin

i. onfrdntatorL

non

ordini

in

daqualinsque

una

o,ni

rete

Si

diino tri

ch

guaivi tii

rete

di

rdin usiinto

di

n

input

lu

profondiù

lrncno

lgo.

Li VCCi,l

28.1-5

Si 52 i

clin oitri I

n.

lie

il numero

ali c n

f ani tori

in

qu llii lii

r le

afi i rcliillllllCI1

I

tlr ,1

11

essere

sp

se

rete

di cotlfrontatori

0.

I , allora

funziona

interi,

rea

tntalmente

di cnnfrontatori,

di

utilizzcrè

orcfinansintO

una

ordinato.

il principio

sequenze

il principio

valori 2h . l-4

insieme

reti

che

dall insieme posarono

con portamento

J ll in aut.

permutazioi e

è preso

I numeri

èd altre

dice

ero-uiw

ni input

input. 28.1-3

zero-uno

con empre

porti

II principio

C

i o, ii

di input consistenti lVCl Cile pfOV llCI

ZCIO-Ullù

pel

gener le.

Dunque, zero-m o

fllOYitt JfC Cile

funziona

nella

di reti

ulizzare

tutte

ordina

le

arbitrari di valori

sequenze

ippropriataminte

di presi

di ordinamentn

l attenzione

di 0 e I. Dopo

Ordinare

quando

numni

insieme

costruzinne di fo

esclusivamente

l L 1 te

su

qualunque

perinette

pLIÈ

correttamente

correttamente

sul

ave

loro

costruito

zero-uno,

si

sequenze

di

arbitrari. prova ll

p.lt

de Ji l ,1fO

zern-uno

principiv .

.

si

baia

culi i

nuzii rre

di

finzione

monotona

crescente.

Si

Capirolo

áM

28

Reti

di

confronratori

507

C

f.

mW z / y

fb

f .i

da

9

a

f min x,y

5

2

9

6

5

f max x,p

bI 5

Figura

28.4

II coinporramento

det

confrontatore

nella

dimosrra ione

del

lemina

28.1.

La

ione

fiw

crescente.

3

3

5

3

b

3

f

9

a Lemma

una

di

output

rete

di confrontatori b

trasforma

trasforma

b .. ,

b,,

la

f

b ,

sequenza

f i ,f

di

, ...f

la sequenza

allora

input

per

di input

fa

a

f a, ,

a

monotona

f

f a, ,,

a ...,

a,,

funzione

qualsiasi

nella

fa

nella

sequenza

crescente,

la

sequenza

di

Figura

28.5

a

questa

rere

ha

Si comincia allora

e f max x,

l affermazione,

superiore

applicare

del

del

max f x ,

fr

Di

fy. min f x ,

agli

fy

max f x ,fCv

cf y

si consideri

un

confrontatore

è min x,y del

ordinamento

della

28.2

figura

ccm

sequen -a

di

input

9.

2. 6 .

5.

La

b

stessa

output

va1ore

il

di f applicata

alore

del

è una

rete

al

corrispoitde re

in

fi1o

a.

una

inferiore.

si hanno

i cui

e l output

f min i.

y

confrontatori importante

Teorema Se

di input

siano.s

è maxi-,y .

risu

28.2

di

ordinamento,

il lemma

e y.

una

rete

sequenze

nella

figura

28.4.

superiore

di

di

confrontatori

con

di 0 e l. allora

n

ordina

crescente.

r

input

ordina

correttamente

correttamente tutte

le

tutte

le sequenze

2

possibili

di numeri

arbitrari.

Il e il

Dimostra -iosze. esista

y implica

le identità

Si supponga

una

sequenza

sequenza

di input

a,prima

di a, nella

di a,.

assurdn

per

numeri

che

arbitrari a

a,....,

sequenza

se.i-

0

.

y

consente

zero-uito

la rete la rete

che

contenente

di output.

ordini nnn

tutte

ordina

elementi

gli

Si detmisce

le sequenze

a e a, tal i che

una

zero-uno.

correttamente.

funzione

ma

Cioè a,, ma

a,

f monotona

y ,

f max x,

28.1

tato.

Principio

Si supponga

sull output

fy

è monotona

f

di

monotnna

output

valori

mostrato

min f x ,

Poiché

funzione

gli

inferiore come

il valore

se f è una produce

rete

il seguente

i1 lemma.

confrontatore,

produce

siill output

f min x,

che

inputf x dimostrare

input

conseguenza

con per

confrontatore

fv

l affermazione

l induzione

confrontatore

e fv

fx

comportamento valore

dimostrare singolo

si userà

Quindi

dimostrare

L output

col

un confrontatore

y .

di

, . Quando

Dimostra-ione.

b

rete

La

b

rete

dimostrare

crescente.

3

4

a

28.1

Se

di

CQ

1

5

è monotona

Per

b,

I

5

Cl

che tm

esiste la rete

crescente

pone come

a,,

f .v Pertanto.

il confrontatore

e fy,

fx

il che

Si può per

usare

risultato

la sequenza

quando applicata

segue induttivo,

banalmente

confrontatore

minore i valori

portano

è applicata

quando

di output

Poichi

essi

si consideri

un

un

in una

del

lemma.

rete.

allora

rete

di confrontatnri

se un

filo

assume anche

il Valore

f a,

i fili

è

la sequenza

e applicato

alla

rete,

à profondith

d.

dove

di

a

input

di questo

fa

input

fa.

sequenza D, Ila

portano

e max a.

a

cioè

il filo

di o itput,

di

i fili

input

a.

affern,azione r

un

di

o

t,

ni

uro

tito

I rete

lemma

28.1

è

mostr,. .

è f applicata

conia

il

esempio

valore

che

di a

la stessa

nella rete

sequenza

mette

non

ordina

di output

fa

u

la rete

porte

prima

la sequenza

nella

è Cl j

sequenza

Cl

a, .

...

di output

dal

quandn

i

g

correttanieate

l input

quando

di / a

zero-uno

f a, ,,

/ es,

Rl

f a g.

sono

a una

di

input

al

è l output

di

7g7

Ia scqtienzadi

dinsostri

pg

7

Si

cti,ipplic,ir.ione

lellu

stiano

del

filo

nella

lentma

ti

ura

S.

28.2.

I,

rete

applicando

dinsoitri

che

una

una

una

funzione

sequenza

rete

ùi

monotona

crescente

o una

sequenza

ordinata.

ci nfrontatori

con

n

input

ordina

corrett unente

la

uno

di

input

....0,0 ,

l.0,0,

I,

. U, ...,0.0 .....

l.

l,

I.....

l.0 .

. input

la

che si produce

e /ta

precedentemente. . a

Si

ordinata

profonditè

fa

J

un

confrontatore

portano

provata

Il

. Per

fa

Il filo

allnra

a.

a. il lenmi

i

28.2-.3

Si

usi

tv ura

8.5

a prima

pone segue

la sua

di input

i.

e f ntax c

applicata

filo

di input

d

se

f min ci,

quiu d è

0,

confrontatore

induttiv i,

supplicata di

a profondith

f ci

confrontatorc

min a.

fiIo

dull ipotesi

Quindi

quando

Poiché

a,

quando

è dimostrato.

La

i

sono

eenerale

assume

il valore

riguarda

proprieth

filo

d e i f li d.

di questa portano

tale

quando

di

a, e a

alla

Poiché

consideri

a profondità

strettamente

input

Esercizi

la base,

si

telo

dell affermazione

fa.

i suoi

quando

il lemma.

proverà

il passo

di ogni

a è applicata

di input

riguarda

quanto

risultáto

i tlli

di input

y

dell afferrnazione.

profondith

forte

più

la sequenza

dimostrazione Per

sulla

e f max x.

f min rg

la dimostrazioise

l induzione

un

provare

i v ilori

produce

completa

ce -

di

ordiiia,i tnt,

il principio 24.6 i. una

eerc -inno vtc

di

per urdin uucnln.

Jiino trarc

che

la

i te

di

c nl ront itori

issostruta

in

6M

Caput

28 Reti

di

conpontatori

ál8

b b, CS

b

0

0

0

0

bitonica.

p

plJF3

bq l Una

rete

di

ordinamento

ordinare

per

4

Si definisca di

e si provi

decisione.

un

analogo

Suggerimento

del

zero-uno

principio

assicurarsi

di

in

gestire

un

per modo

0

,

0

modello

ad

albero

appropriato

0

l ugua-

Figura

Si

dimostri

che

confrontatore

28.3

Una

rete

una

tra

rete

di

l i-esima

ordinamento

e l i

di ordinamento

1 -esima

28.7

n input

linea

d

ve

ogni

per

contenere

i

l, 2,

almeno ...,

n

un

output

l.

La

nella

entrambe

nella

passo di confrontatori

spostamento

forma che

Per

bitoniche. 010

sia

Le

oppure

monotona

L ordinatore di

ordinare

l Yl

che

sarà

bitoniche

di

i, j,

numeri

arbitrari.

una

k

2

e

sequenza tale 8,

9,

struttura

0. Si noti

una che

7 età

sono

3,

rete di

di

Vi 6

sono

che

che

Hanno

la di

caso

bitonico

confrontata mostra

è formato

è una

con

la linea

rete i

una una

produce

sono

grandi

neùa

metà

O odi noti

Si

queste

i

Ordinatore

può

con

dei

n/2.

I in

suppone

Si

8 input

è chiamato

quali

profanditè

che

cui

la

n sia

lialf-cleaner. linea

i di La frgura

pari.

di

differeeri

assicura

output

esempi

che

nella

ntetn

di

input

og Pt i elemento in

basso.

di

Inoltre,

è pura.

confrontatori perdita

situazione

HALF-CLEwsER n

confronta

di generali

tt

si supponga

l input

è nella

forma

in cui

che

input

gli

l input

I I ...100..

sia O l I...

di

0 e

i

28.7

copie Ja

e entr

i vaiori imhe

l -ed

tutti he

tutte

più

come

input

piccoli

sono

sono

bitoniche.

le metà

è cb questa

nella

pure

bonn

half-cle ner.

meth

deriv

questo

in alto.

In effetti

che

proprieth

Ie sec uenze

a un

i valori

alnieno

i il nome

bitoniche.

forma

l è simme-

casi

a seconda n/Re

di quale

uno

ulteriormente

di questi in due

il lemma

ia

cesi casi.

il blocco

di 0 o di

in cui

quello I quattro

casi

1 consecutivi

il punto

sono

di mezzn

mostrati

nella

in cui cade

va

l input

iC

LICllt1 in

di pl Opl alto

un Ct

è minore

h lf-cleaner I

Sfll

IQ I11Cl o uguale

è l ill

una

sequenza

lltù

ali p

lit ni

l I ill

elemento

bitonica l t tl de1l

di

l4ti iO n tè

0

YùtlV in

e

I.

illnr i

t1gura

288.

In

è valido.

ricorsivamente

di

alcuai bitoitico

half-cleaner, che

Bnovtc-SORTFR n

bitoniche.

lun

elemento

nella

di Bttosic-SoRvw nl2j

come

rete

di

tali

che

in basso. per

ogni

elemento

Pertantn.

si può

ordinare

le due

mostrato

ordinamento

è H t.v-CLEnwER n

he n/2, metà

è una

ntetè

che. nella

nella per

dal metà

figura

28.9.

sequenze

lemma

28.3,

in alto

una half

parte

più

il due

è minore

o ugual2 usando

Nella

figtiru

viene mostr sta esplicitamente c. nella f ura 28.9 b , Iu ricorsione per mostrare gli hai f-cleaner prore. vivamente i che costituiscono piii piccul dell ordinatore bi termico. La profundith D ii di Brrowc-Snw re i è data dallas

due

28.9 a . è stata I altra ricorren-

met5 sc n l

cleai er

ll prossinso

può

produce

completare1 ordinamento ricorsivarnente.

si

bitoniche.

Zál

D ii

se n 2,

D n/2 I c ui

.

0

leinm

I

output

i 1cliil i

s luzionc

i

Dn

e

I,.

I .

Igu.

I iegue

hltOI11CIIC, hahnio

e alincno

Ill

CIClllèlllO

una

a

t1el blocco

ricorsione

e S output.

J i applicata

e

i

nella

28.3

Se

meth

di Senza

ordinatore

stadio

di ogni

input

la

Eemnta

elemento

due

clealrer

bitonico

un

dell half- .le ncr.

proprietà

la a

rete

La

mostrato,

sequenze

ognuno di

I, 2, ...,

ih citi

in basso

di tutti

e alineno

ogni

molati

ltalf

s v i luppat i

di output

semi-purificatore . dimostra

per

bitonica

sequenza

stadi,

confrontatori

l half-cleaner

sequenza

èpura-coissiste

da alcuni di

n/2

H Lt-CLEANER 8 ,

Quando

di

Un

sequenze

bitonicu

primo

half-cleaner

Sono

bitonico.

o uguale

izl2.

di mezzo

va suddiviso

I

sequenza

ordina

l ordinatore

La

possibili

il punto

Combinando

Ogni

minore

bitoniche

1, 2...., 100...0.

tre

sono

ogni

confrontatori

mostrare

Ol I...

cadere

una

i

per

costruire

ordinatore

sia

sia

trica.

Half-cleaner

Un

alto

l.input

uno

Z, 4,

anche

ione.

n/2

00..

cresce

mediante

semplice.

che

rete

è bitoniea.

è una richiede

8, 3.

hanno

decrescente

28.à-6

6,

una diventare

può

4,

l,

qualche

costruito

0 e 1. L Esercizio

sequenze

per

è di costruire

bitoisica

oppure

bitoniche

o monotona

efficiente

sequen-a

le sequenze zero-uno ,

a forma

bitonico

bitoniche

esempio

i

di ordinamento

monotonamente.

sequenze

crescente

rete

qualunque

decresce

circolare.

entrambe

di una

ordinare

possa

e poi

in

pura

0

H LF-Ct.eAxea S .

che

bitonica.

l

corifrontatori

suppone

1

bitonica

bitonico

costruzione

che

monotonamente

di Si

metà le

Dimostra Il primo

rete

.,ero-u o.

e output

con

0

l

glianza.

28.2-5

l

bitonica

0 28.2-4

bitoniea

I

numeri.

0

1

0

bitonica 8.6

Figura

0 0

inetè

lltill I è pair

i.

cle

qualunque

., guani,.t

hitonica

..li

lut, iri,,rbiti .tri

pui,

iiscrc, r,lin,t.,l

cLi

c uv.,t.,

ret .

E

Reti

0

-gi

- -

0

BFIONICSORIER frù2

.

pUCR

0

l

ordinata

l 0

0

0

0

1

1

1

1

0

l 1

b bitonica

g

Figura

/ i-

289

La

rete

di

confroittarori

R none-SoR

... ,. ,.lg CLEANER i

0

0

fondo

lo

bitonica.

fondo

J seguito

da

della

ricorsione.

si ihippo

mostrati

sui

b

due

copie

di

Ogni

pER n ,

cot

Bnowc-SoRveR nl2

n

8.

che

l alf-cleaner

ha

m

La

a

operano

sottofondo

costruì.ioite in

ricorsiva

l

grigio.

valori

Ha..v-

La

b

parallelo. da

rete

dopo

ordinare

sono

fili.

0

Esercizi

28.3-l

cima 0

0

sono

Quante

bitonica. 0

le sequenze

bitoniche

di 0 e 1 di lunghezza

n

dove

esatta

pUéG

28.3-2

0

Si dimostri 1gn

che

Blvostc-SozTEa n .

n è una

potenza

di 2. contiene

8n

confrontztori.

bitonica

fondo 0

28.3-3

0

Si descriva

come

0

28.3-4 cima

cima

0

0

0

ill

0

Si

pUIQ

basso

n di

che

se

l output sono

l input

non

di

soddisfa

bitoniche

costruito

input

un ordinatore

è una

un

hz f-cleaner

le seguenti

e ogni

nella

ogni bitonica

fOll lQ

28.3-é

elemento

Si ronsiderino

della

metà

due

sequenze

0

sequenza

d

delle

28.3-6

Si

due

2S.4

Una

La

rete

rete

fottdere

L

di due

Esercizio

arbitr iri

0

sequenze

è pura.

una e

sequenza

sia

la metà

metà

in alto

I pu6

di

ordinare

bitonica in alto

è piccolo

di

che

numeri

la metà

almeno

in

quanto

in bx io.

di 0 e i. Dimostrare ogni

quanto

u

an 1o

principio.

rete

0 lpi

contrnntutnri

al

che

nelI

se ciascun altra

zero-uno.

principio può

sequenza

quahrnc ue

che

elemento

ordii are bitonica

elemento

sequenza,

per

reti

di

di

numeri

una

ordinamento

sequenza

qu Iun ue

in una allora

bitonica

arbitrari.

di fusione

ordinamento

vidllC

sequen/e

4.4di

almeno

il seguente

provi

bitonico di

è piccolo

di profondith

di 2.

è una

proprietà

elemento

bitonico

esatta

potenza

l

0

p

dimostri

arbitrari,

bitonica,

essere

possa

il numero

quando

è purir.

0

l

0

cima

bionica

0

Q

I

BITONICSORTER n/2

0

...I

0

0

0

1

0

0

bitonica

a

bitònica

U 0

0

HezCrz a n

1 bitonica

cima

U

-, Iii-

fondo

0

á l l

0

bitonica, 0

0

conponratori

0

0

cimà

C Ill

bionica

di

combinazione

confronto

divisione

input.

C sllllli, l

orclinate

I

richii.cle

di

li

m ,tr,re

I input

I. i

p ll llil . in

c , ic

trv

reti

cèquemu

I,

li,nostrazione

di

fumide

che

ordinata

di

p ss..i

sono oLitput.

ci., rc

reti Si

c.,tein,i

capaci

di

rtlodittca

i efori

ai

aea42

Reti

risultante I l,

gg01I

y

seguente

seconda Per

esempio.

inverte

Y per

avere

che

eseguire

un

intuizione.

sequenza

è bitonica. si

l I I l 1 10000

gg001 sufficiente

sulla

della

l ordine

nafte

qqnza z

è basata

fusione

g gf

è bitonica.

date

due

si

due

ordinate

le due

su X concatenato

0

di input.

sequenze. X

0

X

0

bi

Y

si

0

bitonica

I

bitonica

g

ottiene b

sequenze con

Y

613

0

00000111

e

conpontatori

la b

Concatenando

fondere

per

ordinate le

zero-uno

l1110000.

bitonico

sequenze

concatenano

le sequenze

Y

Pertanto,

ordinamento

Date

e quindi

di

di

input

X e Y. è

bitonicn

I

b

.

bg 0

Si

costruire

può

chiave

punto due

al primo

a ...,

a,,

cleaner

stadio

della

cleaner.

stadio

rete

del le

pertanto

di fusione

aIta

l output

produrre rete

iMERcEz n la stessa

di

ordinato

fusione

rete

delle

di

è

da

fondere,

6

Q

i, per

i

1. 2,

...,

i

I. La

figura

28.10

output

della

parte

bassa

comune

half-

è bitonica,

modo

output

gli

le proprietà in

à

...,

di un

nel

bitonico

b

.

n/2. Figura

28.10

Confronta

tra

il priino

sradio

di

MvacEa i

e Hoc -CLEANER n ,

per

n

8.

a

fl primo

in alto

lemma

in

b

lo

a,

output

bitonica

soddisfano

ottenere

a,

i e n degli

degli

ordinate

bionica

b

Date

si vuole

a ,

input

l ordine

sequenza

bitonica

Il

implicitamente.

i e n/2

all ordine

fusione

input

a ...,

input gli

è che

Bnowc-SoRvzR n .

bs

a,

gli

di

dell

a,,

confrontati

es ere

reti

...,

sequenza

rispetto

possono

risultante

J è diverso

a ,

,

di una

della

e bassa

metà

confronta

è invertito

stadio

seconda

sottigliezza

l inversione

poiché

half-cleaner

della

saranno

L unica

primo

parti

e a

SORTER ll

di iVERcsR n

Tuttavia.

e in basso

a

di Brroivtc

il primo della

bitonico

la corrispondenza.

primo

La

l inversione

dell ordinamento

I half

mostra del

ordinate

effetto

Poiché

modificando

è di eseguire

sequenze

stesso

MERcER n

28.3

parallelo

seqnen e

e

bironiche

h......

b,,

b

e b .h ,

...,

b,

.

per

di fusione.

mostrata

nella

da Bttoitc-SORTER n .

figura

28.11.

Di conseguenza

Soltanto

il primo

la profondità

di BtTowc-SORTER n .

stadio

di MERGER ll

di

è Ip .

B

ITONIC-

0

ordinata

soRvsa n/2J

0 0 ordinata

Esercizi

0

BITONICSORTER nl21 28.4-1

Si

il

provi

si mostri

precisamente, sequenze

monotone

monotone

28.4-2

Quante

ordiAati almeno

28.4-4

per

che per

Si P provi f n

/am

distinte

verificare

che

rete

qualunque una

di cnnfrontatori 0

e

I,

può

reti

per che

fusione.

fondere

può

fondere

di

due

due

rete

sequenze

devono sia

he

una

essere rete

-he h con

u siasi .qua frontatori.

di tusione

interessante

rete

l

e

qualsiasi sequenze

qualsiasi

ordinata

applicate

all input

di una

un

elemento

di lunghezza

con

u deve

n

con

input

Da foi dere

limite

di fusione.

rete

di

I elementi

avere

e ,, a ..., siano

i feriore

a, n,.

con

a,....,

Suggeri,ne lo

u,

n prescindei

e c4ll orditte

28.é

profondirit

Una

Si

n potenza

esatta e a,,

di

ci,.....

dcll input.

partizioni

rete

hanno

ora

di ordinamento

tutti

. ii

gli

struissenti

necessari

per

costruire

a . rete

si

insiemi. -

I

Piii

di fusione

fondere

possa

sequenza

monotùllC

h un in tre

l

Of ltllAL1

arbitrari.

zero-uno

produrre

una

le due

Ruesk confrontatore

28.4-5

rete di

zero-uno.

principio

lgn.

Si considen cui

una

di nu neri

sequenze

Si nerastri

che

al

crescenti

crescenti

confrontatori

28.4-3

analogo

principio,

1

il

richiecl

i

di

ordinamentci

sono

mostrati

nell i

ti,ura

28.i .

una

rete

che

possa

ordiiure

qualunque

28

Capitolo

di

Reri

6I5

confrontatori

Esercizi

b

Quanti

28.5-2

Si dimostri

28.5-3

Si supponga

di

liste

di lunghezza

sono

che

ordinate

più 0 0

suo

che

supponendo

k. le fonda min *

output con

i k più

sia

che

modificati lista

una

input

come -max

prenda output

Si mostri

piccoli, cosi

rete

delta

che suo

sul

1 12.

Ign

1gn

modo

e restituisca

confrontatori

input

ogni

in

confrontatore

un

modificare

su n input

ordinamento

è esattamente

di SoRreR n

la profondità

e sul

grandi

in SoRraRjn

i confrontatori

28.5-1

nk

numeri. I .

di lunghezza

ordinata

di

rete

qualunque ordinare

puo

due

i / elementi

0 0 Si supponga

28.5-4

0 I

e gli

0

1

costante

0

l 2

I

profnndiù

2

4

3

4

4

4

5

5

28.5-5

Sia

La

a reri

fissione

sequenza

rete

un

elemento.

clelia

coi rbinando

ricotsivne. di

profeanditèi

in

sequenze

ricorsii

Sostitu-ione

c

r gni

dei

confros tatorè

di

ordinamento

tutti

amenre

reti

di

fiisio e.

moduli

11eRoaR

mw

e i t àlori

ordina valori

sequenze

ordinate

k

1, 2, ...,

per di

sequenze

sequenze

Neilo

input.

Si

zero-uno,

fare

una

ulteriore

a,.

a,.....

separatamente

ordinato

gli n più

ottenere

con

ciò

piccoli

profondità a

la profondith

di SORTERfi j

è data

sotto

conseguenza,l..i

da le

la

contengono

ndi,

rete da

è già

n/2

di

sequenze

di

un

elemento

è

costituito

da

n/4

copie

di Ip,,

2 elementi lo stadio di

I,. è costituito

per

il principio

una

ordinare

elementi

gli

profonditè

una

di

Zhl l

S4

x

m

matrice

1.

Si ordini

ogni

riga

dispari

2.

Si ordini

ogni

riga

pari

3.

Si ordini

ogni

colonna

che

rete

questa 28.2 .

Teorema

le l iterazioni

sono

Quante

ordinata

è la contigunzione

di

O1

crei

io1uzi

che che

mostri

si

.

m

la

ripetendo

seguente

I volte

procedura di

gli

ordinare

possono

con

n nuit eri

Si

l ordinamen o.

secondo

coivettu

pocizinne

di n numeri

l posizioni

delle

all interno

si trova

la prnfonditè

Mk

iequellZD

una

crescente.

monotono

in ordine in ordine

monotono

decrescente.

in ordiiie

monotono

crescente.

producendo

sequenza

induzione zero-uno

Si

da ria/2 copie

elementi

è prodotta

28.5-6

di

sequenze

producendo

2

una

copie

coppie

finale

per

della

secondo

dimostrare

puo

qui

Il

ordinate

stadio

input

sua

numero

ogni

e sia

/ input

di avere

Si supponga

input.

che

e di sapere

ordinare

con

di ordinamento

rete

2l

con

ch esenrpir

.,ero- wc

è costituito

di una

di fusione

di questa

richieste

procedura

l ordinnmento

per

e qua1

ordinato

dell output

può

due,

deJ1a

dalla ma

0

se

D nl2 I n

scii 2

SoR t

I

di ordinamento

tr i a

operuno di

profondità

rete

somma in rERf,.

in modo D n/2

profonditè e

parallelo j è data

dalla

la

di

profondità

ricorsivo.

1pt

Problemi

Laprotondith

Sr RvEv irl2 di

le

copie

MsRc Fe n .

di Di

Reti

28-1

ricorrenza

rete

Una

di

ordillallten10

onaé nella

adiacenti.

.

di

controntatori rete

t1usposi..io1re

per

di

è una

rete

della

trguru

se

trasposi io e

connette

confrohtatore

ogni

28.3.

Dn



e

arbitrari.

analizzare

SARTkR nl2

di

2.

singolo

SoRTzR

fondere

per

2. di

di

lunghezza

coppie

lunghezza

Ogni

stadio

di

4. In generale,

i valori

SoR rER n .

parallelo

fendono di

ordinate

consistente

rete

Il primo

coppie

di lunghezza che

nella

ordinate

fondo

che

iMERGER 2

Dn

cosrrnitn

possono

sequenze

MERcER 4j

Si può

iluppo la

staài

lavorano

che

producendo

ordinare

5i

b

indicata

Ipr di

ordinata

Il, IERGER 2j

di

Sovtee n

si,ri fili.

attraversano

ordinate

a. È

effertivè.

m istrari

I dati

nnlitternteivo

di

ricorsii

costrir-i me

di

sono

ete

l 2

aver

e di volere

a,

puo

a, .

la profondità

5 1-

di una 28

dopo

si

6

tc

Figutg

Si

a ...,

a,. che

dimostri

grandi.

n ,,....,

a ,

2n elementi

di avere

n più

nne

è Di

O lgn .

/r

Pci

tantu

f

ii

a.

.

paiono

ordinare

ne fumari

in

panllelo

ll

Si

mostri

che

rete

qualunque

di

traipnsizioiie

ordini

che

n

ha

input

confr ntatori.

Qn

lclllpO

i l. induzione Una

J

rete

un..tlo,.,i lli

orelinasnerslo

a quali,

dell..t

guari-diq ari

del

dimustrazionc .iu

si input

a

H. I.

lemma CI...

tl

ll l

ll

I1VL ili

eli

controntatori.

linee

6l6

Capitolo

28

Reti

di

confronratori

á17

b b, I

b

1

4

2

7

b 3

3

n 4

5

ri 5

l

rc 6

6

z7

8

7

ri 8

2

8

3

bs

t

Z

b

Figura

La

28.13

figura

dalla

Una

Z8.13

figura

ordinamento

una

che

di traspásizione 1, ,

n ed

linea

i

j

su

pari-dispari

rete

1, 2,,

d alIa

Si dimostri reti

di

mostra

peri

di profondità e.

rete

l

la famiglia

se

di reti

su

n, la linea l

8 input.

è connessa

Come

tramite

si può

vedere

E

unconfrontatore

n.

j

di ordinamento

è in effetti

pari-dispari

una

famiglia

di

di ordinamento.

b Figura

28-2

Reti

Nel

28.4

bitonico.

In questo

n sia

potenza

una

linee

si

è visto

costruire

si costruirà

di 2 e che

a,

con

ricorsii amente

due

La prima

fonde

la sequenza

a,,

gli

elementi

pari .

Per

reti

gli

una

linee

rete

sulle

che

fonde

fusione

basata

a

a a ....,

con

si pone

Si

sulle

linee

ci ,

a ,.

b.

c.

rete

Si usi

il principio

input

è in effetti è

Qual

la

dl fusione

con

2n

input

n

per

...

a. tra

Si

una

per

rete

gli

elementi

a.,

e a,,

che

rete

di

uosa

rete

di

fusione

fusione

Sia

Una

rete

di

connettere La

di 2

pari-dispari

a.

28.14 a

su

ai suoi

mostra che

oche per

n

input

la rete essere

può

e n output

rispetto

a una

di permutazione fissato

civ

per

ha

dei

d. input

deviatori delle

qualunque P.di

2 input

trasmettere

che i

è

Qual

la

inpu

accesso

se

qualunque

si

n

permutazione

connesso

costituisce

all output

ogni

vi è un

eonfrontatore

ntodi

di fissare

in

i des

una

i tori

rete

nella

che

coneiite

direttamente

che

usa

due

cupi

cosi

Note

ai suoi

i. Oll

ch

8 eleviut li.

I elevi i ori

winii

st, ti

liii iti

per

8

4. e il P

1

di

w singolo

ri arsi

vi

di

P,

COll

7,

3.

5.

l.

z

permuta ione

7, 3. 5.

l, 6, 8, 2

in basso

realizzi

4,

che 3,

2.

3. 4,

5.

6,

eseguite

di 2. Si definisca

dei

iatore

cle

S

6.

8.

iatori 2.

richiede

1. 8, 2, 7 dai

due

rieorsivamente

P

vamente

ricorsi

1. 4 . su

un

P disegnando

la

P.

in termini

di due

in modo

P ,,

P,

algoritmo

che

specifichi che

diretto

in tempo

devono

eseguite

essere

calcolare

le disposizioni

2, qualunque

pern

usando

due

ogni

P per

una

comune

una

i deviatori.

diverse

ad

accesso

e all output

di P qualsiasi

è corretto.

solo nella

macchina

compresi

di permutazione-non

combinazioni

input realizzare

impiega

Quanto

macchina

agli

l algoritnso

di tutti

rete

comune

connessi

che

di P

una

su

da

Si dimostri

e la dimensione

penuutazione

On

di ir deviatori

di n elementi.

per

perché

opera

la disposizione

la profonditè

ad

dei

quelli P -deve

P

realizzare

disposizione

dei

deviatori.

al capitolo

Ill

KAL th

1 23

il

l ii1pul

O

COllllUT.

C 111t 4tl

sl

Nei

,.tllCI1c

c ilire,. rc

I.l

B uriciu.,

fi,ronn anAi

primi

COI11C

gllc

iicl

prsiCnt to I 95A

tTClVHIC

pUÈ3

esse

zi.

di f e

la

consiste

di un

eli ordiil 1lllèl1h

rete

esatta

data

Si spieghi

qui-Ilo

e b output

are

P che costruì -ione

di

permutazioni.

incrociarli.

perché,

reali

e le permutazioni

si è definito

un che

sono

Quali

su

consentono

gli

possibili

e 2 output.

i suoi

La

b

la permutazione

deviatori

permutazioni

qualche

output

di pen nira ione

nosrrati.

pei

..., 2, 3.

4,

potenza

a come

Apparentemente

Spieeare

i sia

ione

input

deviatore

output

n una

permutazione

ione

penntcta

i suoi

figura

unico

di permuta

nodi

fissari

realizzare dei

Si descriva

e. Reti

rete

per

2n

di

pari-dispari

chre

dei

. 42 ,

nl realizzi

come

casuale

qualsiasi

imo

e i P sono

n alto

simile

di ordinamento.

di

profondità

dimostrare

iarovi

mostri

e le zero-uno

in

La

a

....

4.

dimensione

28-3

f dei

disposizione

a ,,,

a,

un confrontatore

b.

e. una

e fissato

il P,in

in parallelu.

i 1,2...,n. Disegnare

esse

P

di permuta ione.

Reti

permutazione che

sulle

coitmiscono

ordinate

la sequenza

che

di elementi

a, .

sottosequenze

con

ordinate

Si supponga

ordinata

a,,,...,

a,

fondono

I4

sull ordinamento

pari-dispari.

la sequenza

a,

sottosequenze

di

di fissione

litlee

a n,,....

La seconda

rete

fondere

pari-dispari

sulle

le due

una

si desideri

elementi

di fusione

dispari .

combinare

e drie

come

problema,

28. gauò

di Batcher

pari-dispari

esatta

a ...,

a,.

che

di fusione

paragrafo

a.

5

8 input.

pari-dispari

...

4

hi

60.

Sl t

p ragr ito lo

UllQ

ilil ustri

K.

brulle

dlSCLl1Nione nel

pro .ettate E.

ICCI11C.,l

Si .3.

P.

tlllC

cisCI

C ll ,.ll ,l

attrihuiscc eli..

li

alhcri

ordinansento

di N.

lI

pl O

Kn ith a,nte.,t

reti

cle l .ll

BatcllCl

p 11tt.

nel

l 54

e

Armstroiw . lllC

pl llll I

pCI.

il di

OfCIIIl..ll

principii devi.,ione.

R. i. lpilCC

c

ll

ll

J. di

IllllllCI

r ru-unii

loro

storia.

Nel.,on

e

foitdere

I Ill

a

D.J. due

lCI11j30

1V.

C.

á18

Capitolo

Per

28

molto

modo

tempo

Nel

Komlás

La

e Szemerédi

migliaia

aperta

1983.

insoddisfacente.

confrontatori. molte

rimase

O lgn .

profondità

8

Sfortunatamente e pertanto

la questione

è stato

mostrato

rete

di

puo

ordinare

ordinamento n

le costanti la rete

sulI esistenza che

non

può

numeri

di

una

rete

la risposta

è affermativa

AKS

nome

dal

con nella

essere

considerata

dei

suoi

O lgn

profondità

nascoste

di

notazione

ordinamento

anche

O sono

di

Circuiti

se in qualche

usando piuttosto

aritmetici

Ajtai.

progettisti On

lpi grandi

praticabile.

Il modello

di calcolo

aritmetiche

di

eseguite

in tempo

su una

che

ad

addizionano se gli

anche

asintotico

con

che

comincia

che

blocco

esempio

tre

29.1

lllOlti

p ir i ramli

le

reti

di

eh, ill . tltt

r ifii. po s ino

ii

riporto

che

riporto

circuiti

combinatori.

del

Capitali v,ilii

i circuiti cuilruili

24 i

p rtirc

Ii

in base

circuiti

al Problema

29-

come

in tempo

i ciiiuili

in .iludi i

lstncnt iri.

i i

che

impiega

tempo

È presentato

0 lp .

il prnblema due

opcr ino un

usato circuiti

presei tu

comhin tori

sarh due

tempo

01. 29.3

la

comple-

presenta

riporto

solo

Il puragrato

capitolo,

29.2 del

richiede

l.

2 di n bit.

di questo

paragrafo

propagazione che

ii p ri

e la moltiplicazione.

combinatori. Si vedrà . L addizionatore

iii lih Inc in ente

c ii liiii iti ri a

Il

ridurre.

può numeri.

seriali capitolo.

di esecuzione

di molti

con

del

due

CdlCOI iri

i circuiti

tempo

processi In questo

è demandata

espressi

combinatorio.

di sommare

deliniic ini ciierc

29.1 -tempo

le costruzinne

previsione

confront,tinri pOsSOlll

l suo

naturali

l addizionatore

con enza

combinatori

numeri

richiesti .

tramite

l addizione

si

passi

Il miglior

di meglio.

fare

come

in 8 n

di passi

numeri

e la divisione

para rafo

circuito

si può

n cifre.

aritmetiche.

due

velocemente

eseguire

siano

per

di

al problema

Circuiti

in parallelo,

elementari

di

il dalla

dipendono

scuole

al numero

le operazioni

uddizionare

per

alle

di base

si progetta

quando

de in ali

essere

operazioni

le prestazioni

si impara

le operazioni possano

Tutnvia, che

importanza

che

molte

poiché

numeri

eseguono

operano

nel

l addizione

riutilizzando

danno

corrisponda

l addizionatore

numeri

come

un addizione

di base

l hordware

Come

l

per

subito

esempio,

possano

input

gli

e I addizioi1atore

anche

che

iniziale

combinatori On

che

presentando

è un

come

tutti

paragonabili.

di ottenere

circuiti

di un circuita

profondith to.

sperare

costi si scopre

Per

che

sull ipotesi e divisione

è ragionevole.

espressi non

è essenzialmente

Si assumerà

D

solito i circuiti

circuiti

sottrazione

Si

di

i possa

Tuttavia.

operare.

si basa

moltiplicazione

hanno

naturali.

presenta

si progetteranno La

cui

insegnanti

che

è 8n.

su

calcolatore

astrazione

operazioni.

numeri

capitolo

Questo

comune sottrazione,

diretto

queste

numeri due

un

Questa

accesso

realizza dei

grandezza

da

addizione, costante.

macchina

circuito

fornito

base

unic i circuiti

di somissare ntoltipl

ic tori

it pe rallelo pasw . ion l itt, t ri

ln

quesito pii

29

Capitolo

--

*Z3 x

y

.zny

X

g

0

0

0

0

0

0

0

l

0

0

1

1

l

denotare

0

T

0

1

0

b

XOR.

Quindi.

Gli

elementi

XVg

di

un

per

non

denotare e 8

la funzione

per

n.

BOOT, la funzione

denotare

dopo

una

diventano

lungo

si è sicuri

quantità

fissata

ritardo

abbiano

cioè

che

il valore

di tempo.

i valori

Quando

slabih

Si assume

dell elemento.

di propagazione

istantaneamente.

operano

combinatorio

sufficientemente

combinatori

elementi

reali

circuiti

e corretto

stabile ritardo

si chiama

tempo

la funzione

l.

elemento

tempo

per OR

il simbolo

denotare

I

dei

in un

Si usa

input. v per

0 8

combinatori

diventa

elementi

due

esempio,

entrano

valore

1

gli

dei AND,

per

che

input

stesso

c

esclusivo la funzione

l QR

calcola per

T

a

x

-

62l -

antmenn

Crrcuin

mantengono

lo

di output differenza

Questa

di

che

capitolo

in questo

degli

tutti

costante.

di propagazione

combinatori

Circuiti X

UD

2

circuito

X

X

S

0

0

T 0

1

1

1

0

1

1

l

0

XAp

f

0

1

0

T 0

1

1

l

0

1

1

1

0

x

y

0

0

x

v y

che

ne

Sei

iche

di base,

il comportamento.

esclusi

OR

lag

porte

descrive

XOR

o.

La

a

La

e

con

T

i rpur

binari.

PIVOT.

porta

NAND

porta

e r urpar

La

b

output

di elementi

combinatori,

esso

di

di elementi

connessi

1

0

0

0

Il numero

1

1

0

uscita

del

NOT-AND .

La

f

ogni

La

c NOR

pana

vi è la

porta

OR,

porta

eli verità

non

La

29.4 .

tabe1la d

rorta

input Se

filo.

che

eiresrito

il filo

filo.

Aii1D.

aritmetici

intercon

nessi

abbia

un

i lorn

numero

rappr- enta

singolo

pub

fornire

filo

non

nessun valori

accetta è un

output

cicli

di

che

circuito

hanno

zn

filo

nessun

Se

input del

i risultati sull output

di memoria

elementi

a un

del come

filo,

dei

è un

del

input

a un

è connesso circuito

I circuiti descritti

i registri

di

collegamenti

il filo

del

circuito.

di un

combinatorio.

di elemento calcolo

un

come

a più

connesso

elemento

numero

è chiamato è connesso

fornisce in uscita

collegarsi

può e non

ad

elemento

un

dall esterno.

di input

del

interno

filo

Un

contengono

output

di un

di

elemento

primo

essere

possa a più

l input

del

output

al mondo combinatori nel

paragrafo

completi

Un elementn

e output

a partire

sono

esegua

capitolo

una sonn

dall insieme

presi

da

elementi

0,

elemento

29.2

mostra,

che

esempio,

ad

di circuito

ha in input

tre bit x, y,

che

un -

circuito

e restituisce

combinatorio, due

chiamato

bit s e c in accordo

alla

addizionatore seguente

tabella

di verità

funzione

ben

elementi I ,

figura

combinatori completo,

è un qualunque

e che

in questo

presentati

output

costruiti

sono

combinatorio

di input

saranno

combinatorio logic.a.

elemeqti OR

e laporta

La figura

il cui Ciascuna

che

sono

valore

29.1

mostra

in questo

XOR.

pnrta

richieste

altre

porte

c.zlcola

capitolo

inqual

Alcuni

precisa.

combinatori

dove

i-. csF

.

À

booleasri

0 rappresenta

due

di base

o

invertitore .

due

porte

lo

Lu porta

NOT

, il cui

valore

binario

richiede

logiche

funzinne

1YOT

altre

esercizio.

iran output

semplice

porte

la pr rta anche

che

loeichc

una

le quattro

mostrate

Sono

è 0 o 1, e produce

delle

che

booleano

combinatori e I

iVOR

binarior. in input.

reali

1

e

C

S

X

0

0

0

0

0

0

0

l

0

l

0

0

1

1

0

TRi E.

chiamatoporta

la porta

fili.

e i loro

elcl11ento

come

calcolatori

costante che

input

Un

dei

tramite

élementi

input

binari.v

che

saranno

usate

la porta - la porta

iche prende

è

bnoleana

A D.

0

1

1

XAXD

I

0

0

1

0

1

l

0

0

1

0

l

l

l

un u nitrii

è l oppoito

del

e y e pr duce

1

0

input

Il eomportumeii o

di o

ni porta.

e di qu ilunquc

elemento

bonleann.

pui

escare

XOR

alice

che

cju iirlo,1i

input

i nu

i

0 c y

I. il v ilor

zii output

l

val ire

cl i

descritto

L i lll ill

pnrta

-W

Lltl ùBICO

binario,

I

un

Sebbene

di

l output

connettere

puo

NOT-OR .

La

per

il valore

in modo

interconnessi

combinatori filo

Ln

combinatnri

I circuiri

output

secondo.

elementi fili.

cosi

fornendo

di input

1

porta

del

altro,

un

valore 0

Sotto

di

Addixionatori Elementi

degli

o più

chiamate

l

esterno. 29.1

sono

interconnessioni

all input

elemento

0

Figura

di uno

consiste

combinatorio Le

aciclico.

.Y

0

Un

x

i

I

cl J

s

p iriti .v.

dei

s i I l jPaeitèt i ..

.v

8

bil

y 8

ill itlpLt. j1g

f

- -

622

Capito

29 Circuiti

x

z

y 1

0

X

l

1

1

collegamenti

Z

ogni

1

0

do

A

le porte

A S

Per un F

esaminare

G

C

1

l output

1

1

la

G

porta

S

nel

ha

0

0

C G

c

un

rispetto

in input

un

è 0. Se

di

un

elemento

i loro valori 29.2 b

F,

ma

G

porta

mostrati

appaio o

prochrce

il

r utpnt

sull

suo

r rtput

delle

à anche

che

E

porre I ouq ut

cc

F

del

clre

sono

i pn

id

2.

fo dirà

circuiti

e

naggtr rat za

e solo

oinmv

funzioni

inpuL

I se

della

piii ..

e

y

rappresentavi ,ne Ciascun

di i

meth Per

...

binari, input

.v.

circuirri.

eIemento

il ritardo

y

le

urne

.

n

e di

pariù

e

e solo dei

ma I

al tempo

2 e produce

. la

so,n,n,

è

di.r.

Si

y

e

noti

OR.

c

un

numero

in che

I,

numero

dispari.

i bit

0,

y

un

unica

stabili

in quel

1. Si nati

hanno

input

gli

della

l output

il suo

e

le porte

A-D

al tempo

l e

E è il bit

porta

c non

output

al tempo momento

che

stabili

2. L output

richieda

porta stabili

è ancora

c, mostrato

s

pronto. in figura

c ed

di

presi

.

s

di

1

/f Ill.

ll

il

ti

lintciiii

i suoi

output

hannn

è la

L

si

dei

Più

precisamente. nel

1 alle

caso

d

La

protondith

d,.....

d

profondità

di

un

Poiché

di

la

di un tilo

1. La

combinatorio. nozioni

di

elementi

peggiore.

d,.

profondità

d ....

input.

le precedenti

di

La profondi

.

elemento

il ritardo

si definisce

di esecuzione

X

suoi

misura numero

grande

tnax d,,

di qualunque cicli,

28,

più

di interconnessione.

input

protonditè

contenenti

Capitolo del

agli output. -tempo

tlli

profondità

m ssis

insieme. 10

di

danni che

è

attraverso

sua

input

nel

è che

caso

profondith

circuito non

sono

sono

ben

dal

proveniente

valore

sottocircuito

vpplicuti circuit i

è

eisere

un input

abbia

costante

mostra

nel

la

protonditè

a

runde

di output.

ca o

ogni

è lu polta

tempo

è

peggiore, di

profonditè

piit

è proporzionafe

valori

i suoi

combinatorio,

29.2 con

calcolare

per

circuito

porta

G.

richiesto

dal

anche

circuito

peggiore. p in

torniscu

AND

specificisiano del

la porta

cc mbinatorio

port

un figura

profondità

funzione

grande

de1lv

esec uzione

Poiché ha

tempo

La

profottditè.

completo,

0. L output

gr mie.

al circuito. bh iit.inrz

più id uno

veloce dei

della due

della

In generale. pertanto

ua

imput

sarh

porta

port i

AND

m 1 cile

0, indipeitdentemente

non

perh.

l ustrazione

Si supponga

prnfonditè. di una

si puo

cnnture

sul fatto tempo

di profonditècome

ra. ionevole.

ii

Dimensione ha

XOR

clc1I l

suoi ha gli

richiede

la sua

input

il

amenti

i colle

numero

ùi

ali

input

si

uscita.

diLC

sl. i tll .Il/ I

lJllllllEI

lit. ll

Llllll

1111.

dei

circuiti

Qu lll.l

lllllllCIÈ

I. pr eclta

Il

input

dei

prnfonditè

nel

termini

al suo

combinatorio

un circuito

dal l input che

maggioranz i

COllll ll1, ltOIL l1ll tlOllt

dagli

propagazione

iottociscuito

un

l altro

qualunque La

s.

allor t

in

-.

completo

AND,

avere

possono sono

I. l,

x

dill , ddizionatore

funzioni

l

lll 1TI.//. 1 LI

ogni

diventano

input

2. Però

discusse

combinatorio

completo

eseguire

che

l

bis input

input se

-

n

gioranza

eli in

hi

- v i-

alle

alla

Talvolta

in input.

esempio di

e

bit

.i- n y v y

y,

parità

se di

dei

-

gioranza v, le

la G, al tempo

al tempo

comsponde

combinatori

l addizionatore per

La

non

è pronto

cammino

elemento

nell addizionatore 2 i valori

input.

di

che

al tempo

29.2 c

combinatorio

combinatorio

prnporzionale

PCI

figura

di input

figura

confrontatori

è laprofonditè

Se ogni

d

allora

generale,

G con

de fi ni te.

2

c

scuoi

E ed

nella

che

allora

combinatorio

profondità

l

di

circuito.

c

l

profondità

la

tutti

porte

circuito

induttivamente

previsti

in

che

si assuma

un insieme

nella

stabile

reti

un

rispettivamente,

I

G

l

è

input

su qualunque di

0

F

In

Le

delle di

combinatori

0

ma

Fe

circuiti

caso

profondità

0

c è la

OR

di

sostituen-

3.

dei

propagazione

0

0

e l output

ingresso

0

0

E

3 la

di completo

e le porte

completo,

mostra hanno

mostrati

al tempo

Come

tempo

a 3 input

l addizionatore

A

teiirpo

di collegamenti

l addizionatore

7

A

bit

XOR

porta

292 a

s dell addizionatore

Profondità X

C

il numero

riprogettare

b

X

c

unica

mostrati

in parallelo.

29.2 d ,

a

ttgura

i valori

i valori

producono

Infine,

Al

un

e nessun altra,

producono

e cosi

profondità

c

Sebbene

2, si potrebbe

funziona

La

A-D,

porte

funzionano

c

l

D

Al

Econ

come

di tempo.

quindi

c

C

0

ed

elemento.

sia

a 3 input.

unità

0. Le F

1

dell 29.2

623

S

0

G

ingresso figura

XORA

OR

potta

E

di nella

porta

aritmetici

ciil

circctilo. Ile

CE1lll1Cllt. .



di ttesrriolte Illlll

tl

eli l t

lllli. 11lC.

utl

cilcuilo If

ClllllCt151 lllL

u1lllhiil iloti i lCI

il

i Cl

i

llllO

Ci l

nutl ero I

lif lllLIC

Lli lli

elcnleilti Np

lli

-624

eolo29

di memoria

usato

dimensione

definizione

Questa

tutto,

Dopo

output

e

di

dimensione

una Un

combinatorio

ha

che

esempio

di

un

funzione

addizionatore

un

In

l addizionatore

circuito

non

addizionatore

completo

ben

esso

definita,

completo

1.

dimensione

definizione

Per

7 porte.

dimensione

quindi,

La

algontmò.

usa

dato

calcola

combinatorio. ha,

da un

7 poiché

piccoli.

rispetto

ha

un

un

di

elemento

ha

circuiti

di

definizione

solo

29.2

per

costante

definizione,

questa

figura

utile

numero 1a

usando a

della

è particolarmente

soddisfa

costruito

realtà,

completo

input

e

sommare

può

tempo

riporto.

anch esso

in tempo di un

elemento

due

Questo

prende

due

di

famiglia

input

va

di un circuito

definizione

zione

di n bit.

di

appropriati

esempio,

di

applicata

molto

ma

anche

una

di silicio.

caso

di circuiti

per

un fattore

più

complicate

non

01

elemento

29.2.1

che

significato.

coinvolgono

solo

richiede

piuttosto

di

n

definire

le misurazioni

la scelta

a ga,.z

si sostituisca

l inputy

con

il valore

integraro

su

la

iI valore

risultante

29.1-3

Si mostri un

29.E-4

Si mostri porte

2P.1-5

che

circuito

la parità

per

di n input

con

n

1 porte

XOR

di

elemento

qualunque

di porte

combinatorio

AND,

OR

boaleano

e NOT.

essere

può

costruito

i bit

in

s ,....

di somma

colonna

i

a, e b, e un bit c, ,.

della

Sia

che

a cascata

un

funzione

circuito

NAiSD

con

booleana

combinatorio

i

l -esima 0.

ogni

bit

Pertanto

29.2 .

29.2

Si assume

binari. n bit

di

combinatori.

non

intero

dove

a, .

Poiché

è il bit

della

somma

della

dei

un

i-esima

a h,,

essere

s, e un

di somma

di ingresso

per

di

bit

di riporto

è il bit

posizione

veda

e c, si

di maggioranza può

bit

dalla come

si prendono

la posizione

somma.

s della bit

di addizione i riporto

posizione,

vi è riporto

non il bit



s, è la parità c,

i-esima

c, e si produce c,

esempio

propagando

di a,, b e da

eseguito

l equazione c, si

veda

29.1 . l equazione

addizionatore

può

essere

costituita

che

completi

esclusivamente

la funzione

del

propagazione FAg

in serie

FA

FA

al

riporto

del

di

riporto

ingresso

di ingresso

c dell addizionatore

altri

L output

input.

è i

di n bit.

di

è la minima

ir input

e n output

è la nsassima

cotmpleto numero

s

s,

di

or esclusivo

profnndità

profonditi

di prnfonditè possibile

di

bit

co npleto.

un addizionatore

è costruito

fornendo

il

figura

29.4

riporto

La

mostra

di uscita

dell addizionatore

da destra

si propagano

ècahlecto s ,,

...,

Prillava

si esan ina

un

1 bit.

di n

dove

FA .

completo

7

copie

circuito

possibi1e

addizionatore

6

5

4

I

I

3

2

l

i

0

1000 c a

0

l

0

l

l

l

10

1

I

O

I

O

l

0

I

b

l

l

ù0

1

1

s

100

con

prnpa

irioiie

clel

di

n

in cascat

mettendo u citB

un

rip irt 1

cllc

1 assei,

i cr,.

I,

d

pcr

q irsl

lie

i. Il

rip i v rcli

il glCAi J

È

verso

FA

di

C

con

addizionatore sinistra.

è 0 a prescindere

a 0, cioè, s,

usando

I. Se due di questo

FA,,,

I bit di riporto

S

con qual

riporto

con

ripnrto

esegua

cou

la tabella

il

circuiti

un

...,

g .sidesideraprodurne un

mostra

a sinistra.

1. Nella

di uscita

di uscita

di somma

29.3

da destra n

posizione.

stadio

figura

Addizionatori

tre

che a,

a ,,

p ...

j

La

di ingresso

di riporto

di uscita

ogni

bit.

l, 2....,

i

Il riporto

2 input.

combinatorio

connesse Qual

numeri

sequenza

ap C

I

n

di riporto

Il bit

di riporto

propagazione

qualunque

C un circuito

di C sono

una

le colonne

1, per

c,

che

il bit

di

110 29.1-6

riporto

dei

da

binario

...

sp Si sommano

di uscitu

direttamente si realizzi

Suggerimento

Si AliID.

4 porte

metodo

di 8 bit.

addizionatori

dell elemento.

che

e

di n bit

numero

I.

costante

Si costruisca solo

un

di un

del che

riporto

8n.

del

a ,,a,

i alla

si assume

Un

numero

di verità

costruire

I 1gn

il comune

s,

numeri

Si osservi

come

senza

e

s

Inoltre, Si mostri

somma

On.

previsione

.

somma

0,

filo.

profondità

addizionatore

alla

di n bit

dimensione

propagazione

Datiduenumeridinbita

elementi

degli

viene

1. Si mostri

un

dimensione con

i0

della

di ingresso

29.1-2

ha

di

n-4

input

di ogni

di 3 numeri

circuito

addizionatore

si presenta

Il circuito

rappresentato

1 l

llg a

riporto

292,

Infine,

la somma

con

con a sia

di due

figura

un

usando

la

realizza-

qualunque

quando

8 ne .

un

usando

Qn

che

contesto

Consente

in pratica, non

il circuito

ma

questo

di una

Naturalmente,

che

circuito, In

tempo

calcolano

addizionatore

di un unico dell input.

la dimensione

esse l area

circuito

Esercizi

Nella

1 bit.

Addizione

colonna

29.1-1

ridurre

può di n

in

a O lp

di dimensione

numero

negativo

si parla

maggior

influenzare costante.

quali

un

n bit

abbassato

combinatorio

qualsiasi

a famiglie

paragrafo

dimensione

assume

senza

aspetti

prossimo

ogni

per

dell input

se non

sono

nel

in questo una

di circuito

combinatori, piastrina

In effetti

dimensione

del circuito,

dimensione

si vedrà

circuiti

elementi

di

essere

l.

di dimensione Per

simili.

numeri

può

Cominciamo funzioni

una

aritmeriei

Circuiti

SCIII/1IY

ù.



dai uguale

Il riporto valori a c,

degli il bit

di

626

s

al

S

SA

SA

C6

C7 1

0

l

li

I

I

0

0

I

l

0

Figura

29.4

a

addi-ionatore

Un

rip0110

di

a

b

az

h

cvir

a

c he

riporto

def

propaga iw e

di

o 0 e i bir

è cablato

il rontbo,

con

Cg, indicato

h

a

h

a

la

esegue

si pi

riporto

k

p

g

k

k

k

g

p

k

p

g

g

k

g

g

p FA,, l

0 a

b

sogna

S

CO

0

il b,

il

b

a

F ci

C,

C-3

CI

CI

FA

fA

FA

FA

FA

FA

FA cs

á27

FA, I

I

0

0

i

0

0

l

0

A

A

Il bit

aritmetici

Circuiti

29

Capitolo

b

della da

opagano

figura

29.3.

destra

verso

Figura

29.6

ten tini

dei

Lo

stato

loro

del

stati

riporto

combina.io te

della del

individuali

riporro.

addi.ionatori

degli

di

dall aperatore

dato

FA,,

cotnpleti stato

riporto

del

FA,

e

8

in

donrinio

sul

k.u,a -

sitlistra.

considerino

S i bit

Poiché

da un

richiesto

riporto

di

è t . La

addizionatore del

dimensione

del

propagazione

completo

nel

perché

esso

è 8n

circuito

Più

è 8 .

di n bit

riporto

FA ,

Poiché

circuito.

n elementi

contiene

combinata.

precisamente.

che

è a profondità

completo.

dell addizionatore

la profonditè

circuito.

il tempo

completi,

n addizionatori

gli

1 nel

i

è a profondità

FA,

completo di qualunque

maggiore

con

addizionatore

l addizionatore

tutti

attraverso

si propagano

l unità

FA,,

combinatori.

combinata

riporto

se FA,

con

Addizione

combinati come

con

L addizione bit

del

di tempo con

addizionatore

informazioni

Per

a,,

sia

se a,,

mente,

del

propagazione a, e b,. pronti

con

dell addizionatore

a,,

questo

riporto,

a 0 senza

c, forzandolo 1. si può

b,,

c, è la funzione

il valore

che

aspettare

c,

il ripor rto di uscita

generare

c,,

sia

se a,, ,,

si propaga tigura

eliminato ,

il riporto

allara

c b,,

è il voto

poiché

29.é

riassume -riporto g è il

msg

nell elezi ne il ripnrto

queste

di uscita

è i

in ternsini -riporto

relazinni

e p è il

venerato

C,

di

riporto

determina

del

propri

tu .

riporto

b,, cb,,

g

sea,,

b,,

0

0

del

l, 2....,

Il riporto

i.in ir

rimpleui

FA,,

nelia

.vcvmrur

stati

esso

8

sul

riporto

del

vedere

siano tabella

questa

dominio

k.

come

l Esercizio

è associativo.

L unità coinpleti

p.

Una 29.2-2

g.

del

di stato

riporto

per

ogni

esprimere

bit

dei

c, in termini

di riporto

k e

0,

k è il

29.

3

l,

n, il valore

1. 2, ...,

i

per

di. ,

è lo stato

del

descritto

riporto

nella

di uscita FA,

c, di un

dato

0,

l,

per

j

completo

addizionztore ....

i-

I. Sidefinisce

FA,,

stato

dallo

dipendere

puo

del

k e

y .v ,

di

il riporto In questo

caso

i-

.i

i

If

riporto

XE

O

8

9.4

X

Sipuopensareay,comei,un

peri 1.2,,n. di

calcolo

valori

dei

prefisso chionut i

,y,,....y è

dei

il signific to

fornisce

Lemma

P

in

è che

definendo.r

n. Pertanto,

di ogni

X O

dove

gli Si può

valore

lemm i

P

0 l

arkli .

c,.

addizionatori

valori

y, per

l l iOlllllTù

del ealcvlri

prodotto dei

. ,8,,8 Capitolo

Il

prefini.

CO 1 plc .V1YIOllC

8i-

JCI

il 30

riporto.

k

U C,-

o l

I

perché

riporto

lo propaga.

gli

29.5.

processo

ripi rto

II

sea,, sea,

figura

ingresso.

di .stati

stati

c ,,

c,

In particolare iocit ria che

di c,

c, dipende

decisivo

K-I

Il

l operatore

k

i

per

Analogadal

l, indipendentemente

del

stato

operatore

questo

Si comincia

p

riporto

Tuttavia.

La

input.

si

eliittinare

dl C,

ingesso

usare

Si può

di

di maggioranza,

ca1colato.

completi.

se un

sfruttare

è di

0. si può

b,,

Se a,,

c,,

di

operalore

come

riassunse

addizionatori

oppure genera

l,

i

per

riporto

29.6

figura

i due

combinata

e FA,

riporto

entrambi

se

addizionatore riporto

di verificare.

richiede

O lpi .

il riporto

che

in

c,,

unità notare

Si piiò

singolo il suo

l unità

un

genera

c,,

un

elimina

FA,

un

come

c ,.

Un

albero.

in tempo

prima

del

previsione

uscita

di ingresso

riportr

dal

di

il ripnrto

Poiché

$ ,.

a prescindei e

b,, di uscita

il riporto

con

di input.

valori

dell di

proprietà

parziah.

esempio,

ha c,

di n bit

numeri

due

ad

definizione

importante

evita

riporto

circuito

un

tabella

La

se FA,,

oppure

se

Analogamente.

lo propaga.

ponendo

si connettono

quando la

riporto

come

riporti

riporto

sia

dei

propagazione

suoi

somma dei

del

previsione mediante

riporti

omrnare

può

nella

ha due

L idea

pronto.

riporto

che

FA,

completo c, sia

queste

è

chiave

L osservazione l addizionatore ingresso

del

previsione

dei

della

a causa

8n

con

L addizionatnre il calcolo

accelerando

On

tempo

richiede

riporto

il circuito.

attraverso

riporto

ritardo

del

propagazione

e FA,

il riporto,

i riporti.

propagano

riporto

del

previsione

un

genera

propaga

il suo

insieme

di uscita

e il riporto

c,

o propaga

genera elimina

riporto

sia

e FA,

FA,,

consecutivi

all unità

elimina, combinata

il suo

elimina

completi

addizionatori in ingresso

L unità

combinata 29.2.2

due Il riporto

Si lllO

K

g qiaqa ic ir

c1 ,

rip irlr .

29. XE

V tl

OI10

I.

i,

.l

/ l , ...l

k

llllpl1C l

l

C

IC SC LICnti

indizioni

,

0.

...,

l CIClinile

d Ilio

ec ù .Izioni

29.3 I

e

9.4 .

Pei

i

.

I.....

o

aritmerici

Circuiti

i

8

a.

7

6

5

0

l

0

4

2

l

0

l

l

1

1

0

0

1

0

1

p

g

p

p

k

k

k

0

0

p

q

Jg

y

y,

g

g

k

g

g

g

k

c,

1

l

0

1

l

l

0

O,i-l

i,k

1

1,0 x,

3

fO,i-li

O,i-l

29.7

Figura della di

somma

a

e b, da

1 valori

di

binaria

della

cui

y,

g

implica

3.

y

p

non

1.

implica

Oe

c

che

co

8 c/re

di



valori

ai

corrispondono

valore

valore

del

a,,

su

or

di

sottofo tdo

e c nel

a b,

insieme

grigio

problema i valori

con

che

si assuma

x,. la definizione

O

che

k oppure 0 e pertanto

w b,,

la base

su i. Per

induttivo,

i

x

0, si ha y valga

il lemma

k per 1. Vi

i

per

di y,.

y,,

b,, a

induzione

il passo

0. Per

a seconda

. . bollore

j

....

è per

dimostrazione

La

... allora y, poiché 9.6 implica che.v,

figura

2, Ogni

si verifica.

casi

Se y

I,

29.3.

l e

e anche

tre

i

per

fig ra

c,

Dimostra ione.

sono

e y

dipende.

2.

definizione

.

e. per

x,

dell operatore

p e y,,

c,

maggioranza

induziOllC

C

di stato

8

k, allora

k. Sex,

b,

a,

del

Se.v,

.j

C

Figura

1.Se.r, pe ,,-g,

cheimplicac,

è.

29.1

riporto

01

allora

p,

y,

Il lemma

implica

ottenuto

in parallelo

8

Calcolo

somma

s,

del

bit

ogni

l ipotesi

di riporto

si può

b,, c

parità a,,

due

ogni

c, calcolando

i

per numeri

a

induttiva.

l intera

calcolare

velocemente

di sommare

stati

contraddice

che

p,

i bit di riporto,

i bit della

y degli

,,

degli

Usando

del

stati

un

circpitn

per

del

propa aziiine stati

il

parallelo

riporto

riporto il

per

asintoti .niente

somma

y ,.

riporto

tempi

di

c ircniro

tm

rie

foglie

diversi

el alrro

parallefo

vi ano

durante

0

di

inpirt

0,

i-

da del

j-1

dei

il calcolo

per

i i alo i

il fiw-iomrmento

elententeoealcola

per stesso.

0, 1....,

n prendendo

si riduce l

calcolo

i,

I

i,

circuito

parallelo

il calcolo

per

dei

che y,.....

i iS l

dei

i funi

produce y piil

di li

utput

uno Ill

di

invece

parallelo. volta,

alla

si

un

Il

di

circuito

di

un

iva

con tutti

un

di nensione

x

circuito.

l

8

ll

prefissi. Il riudo

a ..

di

elen errto

Un

l . f valori

i j-

mostrato

nodo

consiste

due

è lo ele nenri

calcr fa

i,

sono

cafcolati

lj

nrostrati

costruire

i

i

Ii ii

n.

.r,,

il circultO

u nlptvniiullC

C ll

II

1pdl

il c* ilcolo illll1

dei

I CI ICuili.

si

prelievi, Per

li

introduce

interi

una i e j

ncll iittel

Ox.v

.

i

0

t, si ha

k

j

anche

stato

riporto

del

l identità

29.5

di stato

elemento

organizzate

usato

parallelo

per

di

un

nel

dei

SClno

V

di un prefissi

colle prodotti

i

per mostra

brulle

binario

foglie

foglie

il calcolo come

dei

che

è un

prefissi

coppie

di elementi

e la t gura

completo

nel

i tili sia

benché

e input.v è

e l oiitputy è

l obiettivo

n.

...,

albero

è un

sulle

I,

8. Si noti

h

per non

ati

0,

29.8 albero

notazione.

questa i

per

parallelo

figura

il circuito

ma

r....r sono

outputy ,yj...

circuito

interni

il calcoln

albero,

Utilizzando 0,

y,

G . La

i nodi

formare

input.v,

Gli

è associativo. calcolare

l uperaiore

come per

struttura

la

ripnrto

combinatorio

si comporta

il circuito

del

è, dunque,

prefissi

puramente

collegato sulla

prodotto

29.9

circuito

sulla radice.

Ofir . del

propagazinne

variabili

crescono

questo

da

sinictra

a destr i

oche da destre

piuttosto

a inistra

come

nelle

altre

Agure

paragrafo.

notazionc l

Ill

divari ahhr iccia

definiicc

8

pr. r

j ll ll l J1

di un unico

la contposizione

soddisfano

I,

j,

combinatori li

di

t i ili i

8

dei

che

seguono

radice.

circuito

1

calcolo

O siano

prefissi

circuito

progetterè

con

addizinn tore

un

x poiché

n, si ha fi. i

i. j e l che

l operatore

poiché dei

calcnlare

po onn

si

particolare,

O lpi .

prntè nditb h irJa are

in

open

veli cenTellte.

prefissi QUillllltll

che

pretissi

1, ..., Per

j

L unico

un

i 0.

Pertanto,

riporto.

con

il calcolo

dei

ca ci lo It

Primordi l.he

j

ione le cui

stato

in tempo

l 1pOl 10.

i.

in k

j.

.v, è esso

illustra

0

sottoalbero

fifi.

circùito

gli

n

Organi

wi

operano 1

i j sui

di

che

1,

1 cheimplica

bob,,e,perinduziOllC,C

di calcolare

tutti

il problema

i .. y,,,...

pretiss.

implica

la pnssibilità

aver

Pertantù.

b 0.

9.6

la figura

y,. Dopo

calcolando

a

alloraei,

- n

Al

k

l.

Se

del

6

j

g,allorasihachex goppurech-.v, pey,, g.Sex, g,alloraa,

c,

29.8

radice

i c, 0.

Se ,

X

i

e

p

l

Q

X

X

29.3

0.

c,,

maggioranza

0. Quindi,

della

riporto

l equazione

S

.

629

nel

circuito. un

intervallo

Coinc

nti itr lil

di inj3Lll. l

.h.

li uu

llCllil

X

...,.E,

ll.ill

ie il soltoall croradicitto LOl OJlhero,iinistro

inun thbr u cia

lato

nodv

l interv lllo

á30

Capirolo

29

aritmetiri

Circuiti

0,01

X

á31

V

Q

circuito

per il calcolo

parallela

dei prefissi

ii,s1

o,oI 10.01

5,81

1,4

0,6

0,01

0.0 fl,l

2,2

1,2

3,4

fo. l

0, f

P3

z

Yo

03

to,4

0 ál

fo. l

0

0, s

41

l.

i

4

3

4

T,

7,7

5

5

6

8,8 XE

6

VA

o

0

b

l

7

I

0

e

0

a

0

SA

SA

1

l

b

q

o

0 b

a

l

SA

b

$4

a

0

0

yI

SA

0

0 a b,

bz

SA

b 1

l

SA

1 bo

w

s

$

a Figura n Z

29.10

La

S,

$01111110

Se n è una

verso

in maggior g

k

g

p XE

9

XE

V4

g

Figura

29.9

Un

circuito

e i va1ori

parallelo ogni

il

per

c/a

portari

l alto

-s

....

s,,

e il suo

generare

Poiche

per

si puo

i, j

I

i. j

1

e

k,

dei

sresso

j,

prefissi

n

per

circuito

cr n

8.

valori

La

a

strrimrra

del

globale

corrispondenti

alle

che

Ora

29.3

figure

dopo 1

a sinistra.

Il nodo

abbracciato

dal

figlio

sinistro

deve

preùurre I fdat

i, j

tigur

vulnre

.v

calcolare

di tutti

figlio

gli

i figli

x,, x ,,

input

gli

sinistro

uno

dei

..... allora

abbracciati

e destro suoi

del

dal nodo

elementi

circuito

ù,

sottoalbern.

suo

più

abbraccia

modo

noda

a iini tra

calcola

e che

i valori

è ancora

il nodo

i.

.s, c

/

x

il nodo dal

il valore

semplicemente

figli.

tiglio

I

da

L input

0.

i-

uo l JS

è s,,

0.

padre

coii

risultante.

iOlllC

il valore

lllpllt i,

0.

incluso Il

n

r iice 0.

0

il caso

limitC

Che

e viene

usato

un

O

sor ai altro

tutti

mostrato

,i

per

nelle

mostrati

quelli

dei

studia

usa

prefissi

1 prefissi.

n

gli

29.2-5

L Esercizio

Zn

l

il calcolo

poiché

la profondità

circuito

del

I

riporto al per

il nodii

...

l

y,

l.

cuitante.

c,

Penato.

dimensin w.

cablati

dei

0 e y,

di in

re so

l ddizionatore

di O lpi ,

Z9.1.y,à.

g implica

con

non

b

esterni

essere

può

p.

s, atei

previsione

riporto

dei

tempo

I

niticé.

elemento

Q

Il

indica

senza

in KPG, in tempo e ha

O lgn

riportr

pr

I, n . Fi I

iOCpl

À. pll

CllCll f

C

Cile

lI

Mlllll11, I

Cll

tfC

lllllllCI

I

Cll

I1

t ll

I

ILlllCCI

I

CUOIO

llll l

lillillllll

il del

O ahi .

Addizionatore

29.2.3

gli

prefissi

propagazione

è prodotto

richiede

del

di tutti

di y, è c rie to b,. c,

p rilè a,.

X

calcola

valorem,

con

il v ore

1. Quindi.

di somma

il calcolo

Ogni

nell addizionatore

Xj

esterno.v,

II calcolo

o per

pmalle

Xg

KPG,

input

come

ciascuno

a, e b, e produce

la scotola

è ignorato.

di.v ,

FA, c,

ae

Un

KPG. input

con

input

ia ore

il circuito

k o g

C 3lllpleto

e, e il bit

Dati

costruzione.

1 scatole

prefissi gli

questo

valore

Il

pretesasi.

u n ritardo

a 0.

e nunda

dei

prende

la descrizione la

mostra

di n

il calcolo KPG,

completare

si può 29.10

è composto

per

La scatnla

293

addizionatOfr.

il riporto

di n bit

b sono

lemraa

DB1

3eimplica

indicare

ae

il calcolo

dcll

figun

parallelo i,.

I . Dopo

prefissi,

La

riporto

e mand i

i. j-i

per

O

dei

riporto.

riporto

l equaziane

per

tempo l

circuito

del

previsione

il calcolo

del del

input

Gli

di ingresso

ripnrtn

e il valore

pudre

s,.

paralleln

produce più

i

e un

econdo

g

per

e outputy ,y,...,

il

a sinistra

più

il valore

destro

l j da

suo

dell input.x-,

pria

palesa

i

0,

0. j-

riceve

vengono i suoi

per

e cosi

abbi . ciato

riceve

p,

k,

circuito

i

il circuito

fOlllltC

bit

a

il calcolo

per

parallelo

con

previsione

previsione

81. a k

di somma

il bit

i prodotti

calcolare

coi

.s , è cablato

destro.

mostra

generale

esso

esso

stesso

clel

Poiché

sinistro.

OJ

allo

L input 1.

j

che

il nodo

il basso.

parallelo

con

di dimensione

il nodo

generino

per

corrisponde rti

esempio

calcolare

per

dell addizionatore

si ha un

r, richiede

-verso alto,

di calcolo

input

sinistro

al figlio

i 299

fase

calcola

ora figlio

0.

in

che

l intervallo

di tutti

semplicemente

questa

immutato.

valore

La

induttivainente usa

abbraccia i, k

di

il circuito

O lgii

verso

e poi

dell addizionatore

I

i

0.

destro

il prodotto

padre

il nodo

tempo

prodotto

sottoalbero

ussumere

Ox j

Qualche

questo

suo

di,t

v

addi -suonatore

deve

ripo,.ro

dettaglio.

Completamento

calcolo Lo

b

filo.

alori

di 2. allora tempo

solo

e 29.7

.v,, x,,,

del

co previsione

P

s

b

circuito

addi,io arore

mr strerti

Srmo

esatta

potenza

O . Richiede

procede

P

w,

e 29.9.

elementi

x

c, .

parità a b,.

29.3

figure

P

di

8

k

yo

cos ra ione

8.Essoconsisredin 1.scatoleKPGperi 0,1,...,n.OgniscarolaKPG,prendegliistputesrerni

1

COSl llllt .

-

7

6

5

4

3

2

l

0

i

0

0

0

l

l

l

0

1

x

l

l

0

0

0

l

0

0

l

0

0

1

0

0

1

1

1

0

U

0

0

1

0

1

0

1

0

v

8

I

l

0

l

due

I

I

impiegando tempo

y

0

z

tempo

O lgn .

81,

e poi

Sebbene

addizionatori

con

vedremo

nel

paragrafo

algoritmi

per

la

eseguire

una

metodo

questo

29.3

che

con

la

riporto,

non

esso,

somma

in

senza

sia

633

riporto,

impiegando

migliore

del

metodo

è molto

piii

veloce.

pratica,

riporto

animeizn-

del

previsione

asintoticamente

del

previsione

somma

Cánuri

è centrale

di usare Inoltre, veloci

rendere

per

gli

moltiplicazione.

Esercizi

29.2-1 8

v

r

u,

vs

ll

1l4

VA

V

VA

MA

4

Il

V

R

V

Siano di

l

ll0

a

degli

x,,...,

x,

-I

1

0

Si provi

29.2-3

Si

che

a

sono

grigio completo

a

ioni

fiut FA,

cablato

Sormna

ha

riy orro.

sen.-a

di

.v,

e

y,

input

conte

,.

.a

Dati

Un

b e,

1re

nunreri

addi

di

sr bit

ionaror e

e procluce

ut

sen

bit

di

x,

n

y e

--,

riporto

somma

n

si producono

a

e un

8

bit

mostri

come

mi

dir. di

Ogni

numero

di

n

11.

l

, II

bit

Dati

tre

solo numeri

sen -a

numerosa V

è di ridurre

il pmblema

di sommare

tre

numeri

x, ,

x x ..., di

i bit

produce

n

1

V di

V

y

y,, un

bit

tali

y

q -

-,,

u ,,

u,

...,

y ...,

numero

u

sul

Si mostri

la costruzione

M

X

1

-

nella

ttgura

.Y,. l

pQfltd

,

maggioranza

V

i

per

0,

i....,

n

L addizionatore FAp

ÈA

11 bit

..

di ii bit

di somma

Poiché in parallelo. 8n.

Per

Per

di output

i calcoli Quindi, sotnmare

di tutti un i tre

senza

riporto

che

figura

29.5

del

circuito

assume

gli

per

dato

8

nella

è associativo.

esegue

parallelo

siano

del binari

il calcolo

per esatte

potenze circuito

dei

parallelo

in tempo

prefissi

di 2 esaminando

il caso

il calcolo

per

n

per

dei

prefissi

arbitrari.

x, sia

della

Si assuma

p.

scatola

rappresentato anche

ECPG,

da che

ogni

a livello

se x,

00

k,

di porte da

l

l

input

y sia

rappresentato

della della

figura

profondi , 29.9 a ,

logiche.

Si assuma

g e da

se x,

che o 10

01

da 0 se y,

k e da

1 se

9

Si associ

un etichetta,

parallelo

per

con

il calcolo

il calcolo

è il cammino

con

all output.

Si identifichi

lunghezza

è O lgn .

tempo

8 lgir

l indicazione

dei

prefissi il più

il cammino Si

mostri

Vi

a parte.

numero

grande

critico che

è un

nodo

di elementi

nella

i cui

figura

nodo

qualche

ad Un

elementi

ogni

filo

nel

cammino combinatori

29.9 a

ha

elementi

8

funzionano

circuito

critico

e si mostri 8

in ur.

dall input

che

che

la sua

richiedono

contemporanea-

mente ,,

y. i ,è

riporto i

l addizionatore

filo

il valore

con

riporto.v ,

BSUltRlltl.

pg

riporto

circuito

non

di aIberi

e

che

,

x, I. Il bit

senza FA ,.

29.ll a ,

ogni

del

, 29.2-5

u

V

mostrato

modello

output

circuito

Come

,...

del

le prestazioni

costruito

fi

riporto

un

di n che

Si caratterizzino

se x,

a1 problema

numeri.

di n bit x

un addizioiratore un

Il trucco due

di stato

f

ad

con

e riporto

somma

stati

gli

un etichetta 29.9

la

v , è

29.2-4

addizionale.

p

Si mostrino

figura

di somma

eseguita

caddi .innarore

riportO

0.

di sommare

output

costruire

valori

per

ogni di tempo

si associ

i bit

viene

sequenze.

della

prefissi

gli

l operatore

due

a e b

8. Si mostrino quando

0

O lgn 29.11

ad dei

x, e si mostrino

29.2-2

su queste

iI calcolo

per

e n

completi

-Q

YI

b Figura

riporto

comspondenti

parallelo input

addizionatori del

propagazione

00000001

b

01111111 ,

output

0,

29.2-6 sempre di n bit I, ...,

di FA i 2n

uguale mostrato n

in tigura

di output senza

di input.

29.1

l, l addizionatore

è ir, e il riporto I bit

addizionztore numeri

a 0.

i bonn

uscita

di FA,

indipendenti.

riporto per .

l b

bisogna

consiste

completn

richiede

FA, .

è essi

tempo

eseguire

Il bit

i

.v,. i,

è oblato

e

ii di input che

circuito

,.

omm,i

ha

profondità

eseguiti

Qual

il

massimo

è

una

ricorsivo

del

il circuito

circuito

esatta

potenza

esegue

nella

un

calcolo

29.12

figura

di 2. Dedurre

e dimensione

8 lpi

es ere

eseguita

numero con

dimensione

seiizu

sia

in effetti

Tia

nell iddizionatore ed

a blocchi che

sulla dei

base

per del

Si

prefissi.

qualsiasi

diagramma mostri

che

Ign .

8n

a 0. 29.2-7

essere

possono 01

una

input

un diagramma

numero a blocchi

di st addiziongtori ha

Si dia

prei isione

in tempo

O 1 ,n

riporto. l

a restrizione

che

le porte

abbiano

di

collegamenti del

riporto

da un circuito us

numero

di

uscita

Si mostri di dimensione 01

che

di

On

di collegamenti

filo

qualunque

la somnsa

può

anche

anci ra

se si pone

di uscita.

il

634

29

Capitolo

Q

aritmetici

Circuiti

rf

x.

13

3,

Y5

fg

fz

l

I

635

10 a

1101 b

0

l

l

l

l

0

0

0

D

I

1

I

1

l

0

nt

0

m mm

10110110 p 29.13 Figura

l/

a

1110

di

inetodo

i posi -ioidi

110l

ottenere

per

I bit

a sinistra.

della

moltiplica-ione

di

b

per

cile

non

scuola

inr srrati

sono

cle

elemenrat e

valgono

vietate

esegue

Si

l0110110 .

p

tostrato

qui

la

.so nma

moltiplica m .

g

dai

0 indipeiidenteine rre

valori

dove

a e b.

di

n-l Cl

p

l1

l g iO

Xp

l

Figura

1p

9.12

XE

X4

U circuito

XE

parallelo

.L

il

per

calcolo

dei

termine

Ogni

.17

da

prefissi

usare

nel/

Esercii ir

29.2-6

n

vannodallaposizioneOallaposizione2n

è il bit

finale

In questo

Un

circuito

lai y

binario,

il numero

l output

è

ha n input di

essendoci

101 .

dimensione

binari

e in

1 presenti

l Ig n

nell input. á bit

a

1l

Per

output.

esempio,

1 nell input.

Si

Gli

se

output

l input

descriva

danno.

un

circuito

ad

in

è 10011110 .

I

tally

di Wallace

albero

Si mostri

che

la somma

di profondità4e abbiano

sri n bit

dimensione

collegamenti

stessa

cosa

ma

Si supponga

essere

può

ottenuta

con

un

circuito

in n se si permette

polinomiale

di ingresso

con

che

arbitrariamente

che

numeri

riporto,

Si mostri

probabilitè. di

piii

elevati.

AND

i mostri

Op io baie

Lin

e OR

moltiplicatore

prodotti

Circuiti

b

la

terza

stadi con

sempre

quasi

con

di n bit

ogni

bit

In del

prnpagz ione labilizn

sommati

almeno

pr ibabilità

consecutivi.

si

siano

almeno

con

un addizionatore

è indipendentemente I

altre

riporto

0 o

l/sr,

nessun

siu

in tempo

8 it ,

può

algoritmo

di

i

prodottu

calcnlare

a

a,

la,

con,alt re

8n

in tempo

opera

81

numeri

. Anche n.

di n bit.

Il

il moltiplicatore i circuiti

Entrambi

a

29.14

. a ......

p c I

O.,i,omma

delle $ , ,.

b ,,

0.

P rtanto

scuole

numeri

sirlla

..

p

l .....

IA .

pvncncln

Si

n,

mostrato

sii

/7

2n

ci.w11insno

c,

. I,,

hi i hit

..

ii

di ùi

c,l ola

nella due

/,

ùi

fi

numeri l a

b ,,

un

e b

o con

a b .

I valori

parti.

prima

senza

del

griglia a

La

un addizionatore somma

previsione

moltiplicatore ...,

tre

dalla

risultanti

riporto

b,

b ,.

di usando

parziali

per

passano

parte

forma

senza

riporto.

si

riporto

usando

destra.

a,

2 .

u di Vr

n

I 3 bit iii

l

J

I bit

piii

, tl ,

senza

Cl

peri,

Ir ,.

eh

j

vengono

significativi

addjzionatore

0.

1, ....

calcolati

somn ando

un

due

numeri

di

input

e i valori

verticalmente

i due

di

numeri

output

ripnrtn.

l ,,.... n

1 . I. si ha

i bit del

prodotto

p irri ile

i

riporto.

casuali

Oln.

elementari

del

mostra a

numeri

i due

propagazione

consiste

i prodotti

protonditè

ct

moltiplicazione

somma

parte

a.

e .

concettualmente somma

seconda

si propa a

la

due

per

figura

La

c n steiss

la

riporto

sebbene

parole,

I con

moltiplicatori

comune

ma

On

due

moltiplicare

per

visto.

riglia

a

con

In particolare. Il

circuiti

ed ha diinensione

On

a griglia

La

parziali.

dell ultimo

29.3

dimensione

appena

Moltiplicatori

Infine

casuali dove

che

O lie i

dell addizionatore I output

con

significativo

combinatorio

le porte

3. j

profnndità

due

del

propagazione

per

sommare.

di

addizionatore 29.2-10

da

parziali

O t. 29.3.1

29.2-P

ha

sull algoritmo

basano

due

in tempo

opera

Vi sono n prodotti -2.11riportodiuscitade1bitpiit

l.

si esamineranno

a griglia

iale.

par

2n

in posizione paragrafo,

moltiplicatore 29.2-8

è chiamatoprodotto

bitche

sorto

facili

d

calcolare.

I,

Circuiti

0 I

hp

0

0

0

0

0 i

0

0

0

m nz

I

1

0

0

ii,

1

1

I

0

m-

1

i

0

1

0

I

0

0

i

u

U-

0

I

o 0

l Pp

Figura

29.15

Per

l

di

io ic

a a e b.

m.

Prima

Poiché tutti

dei

di valori prodotti

esplicitanaente

riporto m

3

numero

Il

3

29.15

v

3 3

ni un

u,, , ,

1

l

prodorri

I bit

c/ac

0

I

U.

0

0

p

arrra

par -iali non

sono

w

erso

mostrati

,. ,

m-

v

, .

tvc .

somnre

i algono

u

poi

m

sei -a 0

riporto

riyrerure.

indipendenteinenre u -

nr -

Si,ria,ri

n

che

-,

, m,

p

di

e v, , ,

1

bit

e

u

in un

prodotti

il moltiplicatore

un

n

sono

0.

un

numero

Allora

figura

numero

di

1

dai u

poi e p,

-

v -

u.

1

2n

bit

per

numero

senza

2

-.

v

...,n-

di essere

senz

riporto

insomma di

senza l

n

riporto

di

Ancora.

i

v

bit

di 0 e di m

.

i

bit -

2,3, ,

bit

ARD,

porta

AND.

porte

sonava con

l -esimo

- u

v

bit

la

e un

somma

di m

tn

n

esegua

una

necessitano

Si comincia

l n la

con

non

usando

passo

29.13.

n

si ha m v em peri

di

0 che

griglia

nella

parziali

direnamente

valgono

I bit, non 2, perché . v Poi igiene eseguita e 2 bit w un numero

u

numero

calcolati

che

quelli

essere

cnme

e 0, ottenendo solo

essere

eccetto

lasommasenzariportodin 2n

0

dei

nr

possono

n

bit perché

di

I

11

m

i prodotti

ha

ottenendo

con

0

di uht bit possono

tal

Pertanto.

I

m

illustra

si sommano ,,n di m

quando

I

parziali

calcolati

figura

2 1

0

m

p

l La

0

m

I.

i prodotti i bit

I

I

1101 .

valuta

e i ifine

...,n

0

j

sonrma

e b

si

j

della

I IO

1

rd ,. ,

i 1,2,

p

Valuta

esempio,

valori

1i I

b

l

0

0

Ittri

b

0

1

0

0

b

0

aritmetici

sono v

u ,

ha solo

Il moltiplicatore

0.

e m . r

2

continua.

l. Ilrisultatoèun

numero

dove

0 n-I n-I

i -l.

Pg i0

p

Pp

In effetti,

Pg

p

di quelli m, Figura

29.14

Un

moltiplicatore

a grigliaehe

ealcola

il prodorrop

le somme

p, ,.p. ,

..

p,

diclrie

nnnrc

ri

strettamente 0

i

t

somma

riporto 0 a

l

l 0

eh

1

lO l

e il prodortr p

J 0110110 .

corrispo dà

irri

c l/i

.13 figure

ora

ripetute. i

n

della

nella

tintura

Si osservi

traslazione

l e j ietiza

Si esamini

input

riporto

necessari.

a cau a

I. 2.....

Ogni

gli

senza

29.15

su

operano

un numero

di bit

ma

p4

0,

l,

riporto

dei

...,

i. i

allora

l e 0

j

il

1110

è etichettata

2. Laporta

G,

I. 2....,

I,

n

Si

parziali.

n

AND

porta Rii

tra

i

per

prod tti n, i

necessita

la corri pondenza O ni

che

....

2h solo

tiplic ture

a griglia

con roduci

i

osser I.

di uperari,

Si

su

-

O.I....,

i anche vedè

che

i, .

i e j

prodotto

addizionatorc

paiviale

complet

m

. cioè.

FA, ,

n,, ,, ,, ,,...,.ni,

richiede

tre

ali iirput

l1Ig

ll

per

hit

dollari

C

l

amenza

neroli

intervalli

eiimo

prodotto

.

hi

0 293-1.

di cuoiame

e 29.15.

del

giare I. si ha

1 bit.

qualche

il jesimo

i

l Esercizio

e lo schema

per

ni, ,

l e j

C pA ClllLl

638

29

Capitolo

sc.

di output

bit

m

eOe

l

0,

i

l,

e

che

i bit

poiché

gli

l e j

n

l. I bit

somma

del

gli

completi

di addizionatori riga

in alto

i

1. Pertanto

p, ,,

degli

addizionatori

l. m

di ogni

significativi

1, ...,

si è osservato

Come 0,1....,ir

j

per

prodotto

output

nella

richiede

0

sono

p

p. ...,

valgono

e v

-- m

pz

completi

induzione,

l uscita

di un

dell ultima

addizioaatore

senze

m

14

13

15

riporto

si ha

u, .

0, si ha

e, per

12

t7

61

m

m

11

10

9

per 0.

m

poiché

5

m

m

n

639

0

v,

prima,

Inoltre,

S

Q

1

m

m

input

gli

8

llj

meno 0,

il I

v, ,.

moltiplicatore.

p

a sinistra

più FA,

completo

e

del

l output

..., n

2....,

n bit

u, .

1. Pertanto

2, 3,

colonna

nella

che

addizionatore i bit

infine

111

i

noti

Si

Ogni

l....,

llj

per

v ,.

produce

Esaminiamo j

e

in,. ,.

u,. , ,m

si ha

aritmetici

Circuiti

u u,.

p

per addizionatore

di

addizionatore

senza

sddizionatoxe

riporto

senza

riporta

riga 15

-

-z

P, -i-P n-I

Pn n-ll

èddizionatore

n-l , n-ll, n-l

h-1

n-g , n

n- ,

senza

riporto

.

....,v

n- ,v, ,

Analisi addizionatore

attraverso

si propagano

I dati

del

e tempo

prodotto con

è quelln

On

p, ,,

Vi

del

p, ...,

sono,è

che

e n

a griglia

ha

tempo

8n

nel

aggiunge

tipo

con

rimane

p j

i bit

addizionatore

di

èporto

16 a

moltiplicatore altre

8n

griglia. porte.

8n .

il

albero

ad

di

previsione

del

previsione

del

prel lAiolte

iVloltiplicatori

29.3.2

con

piii

O ir .

solamente

riporto

in basso.

f

appaiano

perché

è del

completi

significativi dimensione

p ,.

Se l addizionatore

complessivo

adàizionatori

più

a destra

significativi

l addizionatore

Se

in alto

sinistra

dell addizionatore.

il tempo

ma

n

meno

ancora

prodotto.

i bit

da

i bit input

gli

è richiesto

8 lpr ,

produce

il moltiplicatore

Pertanto

del

a griglia

produrre

pronti

riposo,

tempo

AND

porte

L addizio satore

per

siano

p

solo

è necessario

riporto.

8n

perché

propagazione

significativi

moltiplicatore

un tempo

richiede

Il moltiplicatore

senza

Pif orfo, t

li

prodotte

fallace

ill

l cl sa

srl111n a

wl

ttlmtel

o

li

1

21I

bi1

11lll lelvP

a l vr

di

I il

2n

t llellere

/ er

bit.

Analisi di

albero

Un

di numeri

l insierne molte

Lafi

di

solo

a un

senza n bit

8n

riporto

in tempo

bit.

di

n

ac

ridotto in parallelo,

8 lgn

usando

hit

associatn

ad

di 2n

numero

ogni

linea

con

L addizionatore bit

i hit.

ilei

n numeri

addizionatori

Lirl3J

d.

somma

risultanti. snlo

rimangono di Wallace

alberi

un

circuito

di n bit

al

riporto

in

senza

I 2nl31

sui I 2nl3 numeri

numeri.

in

di moltiplicare

permettono

di dimensione

a due

Eseguen-

nuineri.

8

treccia di bit

riporto.

rappresenta che

iomma

di 2n

intero si

un

ncm

numero,

i pui

veda

nome

vc lerc

d i

.,r wico.

ill

a

t igur ,

un

nlhcro

li

W

illai

v

11 lt1

i

i ct

di

Zn

llhCBl.

e al più

di

due

numeri

Pertanto

Wallzcc

di ogni

lisce

con

livello

dcll albero,

sono

ir input

con

clallv

dipende

o ni

dalla

gruppo

successivo di un

Dn

profondità

è dat

input

al livello

pressati

la massima

n

come

degli

profondità numeri

di tre

è ridotto

caso

nel

di ni

ienza

addizionatore

riporto

ricorrenza

piutinstn

0

se

n2

l

SC

Il

se

n 4

un

rato

l

. 3

.

l che

ill1

Ad

l Esercizio

bit.

l111C11lc

albero

D n/

numero

ha

C1t . uiti n

i.

soluzione

in sono

D,

8 lgnl

par illelo

in

-.ibl.tti

0.

per

tempo

il

I l. ICili

8

L addizivn it re

caso,

i

Jc-.l

I bit con

teorema

iigniticativi

menu

del

previsione

4.1 .

Teorema

principule

di

riporto

in ,

per

richieJe

i

tempo

Ogni

....,

I.

O lgn .

iirienulii Yl

Il

un

riporto.

livello .

albero

Di

j Come

numeri

.

un

da

senza

al primn

in un

I

aciclic, .

richiestn

.

rappresenta

in h sso.

tempo

addizionatori

modn.

In questo

due

Il

Quindi

chesomma8prodoniparziuliiu .ni .....i r Ogni

il prodotto

ottenere

di sommare

finché

vi è il numero

previsione

per

nella

eli

e di n

usa

Esso

numeri

di W ll

albero

m consiste

parziale

29.3-3 . bit

un

il problema

riduce

ura29.16mostraunalberodi all

Il prodotto un

di

somma

è progressivamente

addizioni

numeri

che

numeri la

rirorsivamente

costruisce

circuito

due

convertire

per

parallelo

due

è un

di sommare

problenm

do

fallace

pilli

addizional ri

Vt ICIV

Il I

1110 l l

scnrrrip irl .

st

llCI1li. .

Ull

liiuiv

51

l1lllll I

inlirii re

Cl, lppt

eli Q c

/lli l

Ill

i

IJII11LI151 11C

f cile

al

CICI

ollcncri.

1Cgll

CliVlltlO

poiché

vi

ioide

e

addizionatori

Lnl3J

Per

completi. ogni

2n bit,

senza ottenere

riporto

addizionatore

riporto.

riporto

mostrare

vi

Cn

il numero

totale

Si ha

la ricorrenza

di almeno

consiste che,

si osservi di Wallace

nell albero

che

di input.

Sia

n numeri

di O iP ,

superiore

senza

È necessario

completi.

l e ognuno

a profondità

il limite

poiché

contiene

di addizionatori

riporto

senza

in un

un

un

binario.

numem

x

di Wallace

albero

Si descriva

con

29.3-á

se

n 3,

I 3

ha

che

soluzione

Wallace.

di

dell intero

se

n

non

viene

che

con

pres

totale termine

riporto

è 8n

si verifica

isione

è un

con

senza del

riporto

più

della

po

tra

una

asintotica,

l altra

singola

dimensione

On.

Pertanto

un

del

ad e

8n

del

che

una

tutti a

griglie

la

29.4

sua

elementi

piena,

più

questo

che

n

1 e j

un

1, ...,

0,

moltiplicatore

i, i

t,

a griglia

i

l....,

si

2

i.

ha

0

per

i

Si

mostri

che

completi

nel

tranne

rivedere

moltiplicatore

1. 2.....

uno

nella

la connessione

linea dei

in alto

non

sono

29.14,

necessari.

tutti Ci

gli

bit

addizinnatori di

la necessità

sarà

Si gli

supponga output

perdita

che

un

s e c, cnn

n n,

di generalitè,

alte

se

l,

se

,

senza n, e i , bit

s,

n,.

n,

riporto

prenda

gli

rispettivamente. Si mostri

input

x, y,

Si supponga

che

n,

Addizione

Si

mostri

che

dimensione colle

In O nl

amenti

di

solo

nel

circuito,

usare più

si

l hardware dei

piccoli

volta

una

usati

durante

possono

volta,

una

di

più

gli

i circuiti la

calcolano

che

combinatori

circuiti

calcolo.

un

riutilizzarne

con

i circuiti

sequenziali

per

circuito

sequenziale

di

un

due

sommare

può

di n bit

numeri

di

numeri

n

in

bit

in tempo

0

tempo

e

somma chiamato

,

On.

si

Quindi

di dimensione

a catena

un moltiplicatore

Si presenta

di

l eseeuzione dimensione

8n

8n.

la nozione

ritornando

sequenziale

mostra

si possa

come

ae

b.

di

riporto

l output

di

senz

a,

poi

Dall esterno e cosi

ingresso

di un

un

due

di sommare

al problema

usare

numeri

completo

addizionatore

singolo

per ...,a

agli

nella

sequen

fornire 29.17,la

figura formato

da

che

c,

in

che

è

arrivino

input

un

di

problema

completo

deve

esattamente

nello

scorretto. un circuito

nell usare

consiste

e uno

combinatorio

un circuito

Vi

input.

il

sia fornire

semplicemente

puo

essere

puo

in input

bit

posizione

nell addizionatnre questi

l output

soluzione

un

dei

di una

uscita

si

non

entra

A meno

in input,

di

volta

alla

coppia

di riporto

successiva,

ingresso

a, e b, appropriati.

ial

il bit

direttamente

completo

da

una

presentata

Sebbene

posizione

di

riporto

riporto

mostrato

o circe ito

délla

input

del

viene

via.

addizionatore il

istante

Come

n. e che

6 . e b,

b .....,

b ,,

stesso

- e produca anche.

di circuito

29.17

n piii

registri

tempnri

-at , di

elementi

n

.

n.

non

moltiplicuzioiie enclave uscita.

modulare,

seriale

figura

La

c permesso

Ogni 29.3-4

molto

a catena. due

temporizzazione.

fili.

addizionatore

sono

possono

studiano

che

moltiplicare

corrispondere 29.3-3

si

seriale,

può

e b

figura

di x di s posizioni.

i bit

produrresun 1bitlasommas s ,s ,....,s diduenumeridinbita a ,,a,,,

l.

della

a griglia

ruota

di moltiplicazione

ulteriore

prima 29,3-2

che

comincia

i moltiplicatori

Introduciamo

in

y èspecificato

In termini

temporizzati

essere

spesso

Si

esaminano

di n bit. che

e

x ....r

x ,,

ciclico

traslatore

memoria

Dato

paragrafo

29.4.1

dimostri

x

il traslatore

1. Cioè efficiente.

combinatorio

di

possono

addizionatore

Due

circuito

un

elementi

moltiplicazione.

la metà

O lgn .

Si

un

input

due

funzione.

In

metà

Esercizi

293-1

n

ciclico

realizza

combinatori.

stessa

di propagazione un

di

sequenziali

un

usato sommi

è solo

Il ritardo

a griglia

1, ...,

0,

traslatore

ha

I. Il suooutputy y ,,y ...

I Ign

sequenziali

Circuiti

elementi

senso

nel

parziali. gli n prodotti 2 numeri e l addizionatore

iI prodotto.

moltiplicatore

i

per un

funzione

Introducendo

moltipli-

è spesso

pratica

di propagazione

somma delle

ottenere

per

di un

In

x 1.01

la dimen-

realizzato densa

cosi

in parallelo,

Il ritardo

le 4 uscite

di queIlo



circuito . griglie

che

griglia

viene

quando

3 di

per 0.01

limite

moltiplicatore

veloce

più

a griglia

due

metà.

i 2 numeri

somma

ha

asintoticamente

moltiplicatore

è di usare

riducono

metà

sia

elementi

gli

sommi

riporto

un

parziali

dimensione

cosi

ottiene

di

Gli

di un

L idea

che

ha

fine

dimensione

quella

spazio

alla

riporto

n prodotti

gli

Si

principale. senza

di Wallace

stessa

progetti.

e una

parzia1i che

la

teorema

.

ad albero

come

i due

addizioni

ulteriori

del

poco

tra

prodotti

di quello

previsione

abbia

sprecato

3 del

addizionatori

gli

generare

ed

.,

che

circuito

dovem

x,

s

quale

per

è regolare

compromesso dei

per

moltiplicatore

a griglia

strunura

4,

il caso

pet

8 ir

il moltip1icatore

Sebbene catore

di

è un

ciclico,

Si descriva

11 circuito con

l addizionatore sione

8n

Cn stretto

asintoticamente albero

I 3J

divisione

0.010101...

in binario

.

traslatore

Un

Cn C 2ir

che

si noti

della

il quoziente

calcolare

per

g erimenro

Sug

s s, ,,s, ...,s, , da

l

x

1.0001

efficiente

circuito

senza

addizionatori

On

ha

finale

2n addizionatori

al più

complessivamente

sono

29.3-5

n addizionatori

il prodotto

641

aritmerici

Circuiti

ancora

puo se

ii

pnne

h

restrizione

essere

eseguita che

le

in porte

tempo

dchh mn

Oll avere

ri.

istro

che

il circuitn

in un

circuito

di un

combinatorio sequenz

iole

ieqiienziale

circuito Ja

controllato

un

segnale

contenga perindico,

dei detto

icli. look.

c l

tra

due

globalmente.

impiilii

di o ni

iloch

iucccsiivi

ivgislro

riceve

ii lo steisu

dice

cielo iegnalc

eli

clock.

di clvck.

In

iran ciraiitu

tentpr ri.

alo

á42

Capuolo

79

Circuiti

Sp

SA

$1

SA

impulsi.

SA

Sebbene

mente

l 0

circuito

tempo

Quanto 01

1 La

a

b

Figura i

II firn ionameitto addi.-ionarore I

29.17

0.

1, ...,

n.

regisrro.

dal

e il bir

L addi riporto

di

di

cloc/.

di

cl rc

Il

d

di

registro

che

la

FA

completo

somsnzs

a

c,

i bit

prende calcola

i cl

.aro con

di

seriale.

quindi

è menv ri

è isti-iali -.aro

durante

addi-ionatore

completo

ionatore c, ,,

im

registro 0.

inpur di

che -

a

e b

1011

di

e

1001

a,

Lei

del

ciclo

e b, dall esterno s,

essere

stato

per

l i-esimo

sonnna

dovrà

in

s

clock.

bit

clock

ora

maggior

è da considerarsi si presenta

gli

in

sull nutput altri

del

registri

ciclo

istantaneo.

in quel

moinento

registro

dove

al prossimo

di clock

sull

ora

di un addizionatore

quanto

il

ritardo abbia

mostrato d ll

nella

escono

di

all esterno di

dei

registro

al prossimo giungono

dimensione

produce fino

gli al

ciclo

Dall esterno

di

registro,

completo

i bit sm t

addizionatore

vieee

s, e c,. clock

giungono

All inizio

esterno

n,

all

Il bit

Confronto

tra

a

la

0,

di sonante salvato

5

noli i cosi

due

da

c

con e

ciclo

di uscita

dell intera

e c, va

almeno

il

circuito

di clock de

il bit

c,.

ciclo Il bit

.v

al re

di clock.

t gura

29.17 b .

c.,

istro.

del

s. Il filo letto

i ella

dul

Il ciclo

si che

circuito

Cile

o ci circuiti Inoltre.

il circuito

ciclo

il

registro

ti

combinatorio

si

di clock

Poiché

eseguire

per

di elementi

richiede

sono

richiesti

la somma

combinatori

riporto

del

connessioni

seriale

è

il numero

più

e addizione

è come

riporto

dirette

riporto

tra

corrisponde

seriale

L i-esimo

un addizionatore

elementi sviluppo

gli

a uno addizionatore

realizza

l i-esimo

circuito

sequenziale

seriale ha

cii lo

di

seriale

combinatori.

Cioè.

nello

completo clock

rispetto

spazio

del

nell addizio-

dell addizionator

sincronizzati

per

tutti

veloci è

29.4.2

Rfoltiplicatori

gli

input

deve

i bit

che

insieme,

aspettare

del

circuito

- non

di

input

Le

per

un

quanti

bilancio.

fattore

un

di

si

i valori

attraversano

ma

c è bisogno i bit

di

tipicansente

velncith

maggior

in

riporto .

asintotico.

i valori

Il

8n

e memorizzare

di tempo

veloce.

più

fare

propagazione del

ritardo

aspettare

si stabilizzano

si.nza

possibile,

controllo

presentare

leggermente

circuito

con

minor

Io stessn

abbiano

non

nel

cnmbinatorio

in anticipo

vi è da

Naturalmente

all uddizionatore

circuito

un

i conosce

se

rii elementi

di un

è. in pratica.

can

di ten po

funzionerè.

il vantaggio

combinatorio Se

asintotico

inferiore

i circuiti

combinatorio

di clock.

ogni ritardo

numero

esterni

massima

Il

registro.

è possibile

stabilizzino

durante

ogni

il circuito

ali

il clock.

a catena

moltiplicatore

numeri

del

parallelo

di

h

bit.

29.3

paragrafo

Presentiamo

due

ora

richiede

dimensione

moltiplicatori

che

8n sono

continu t bidimensionali.

di

cle,menti

combinatori.

moltiplicare

per

lineari

griglie

.ri .lia.

il moltiplicatore,

Come

due catene .

o

il

c.

contiene

ct thilizzi

un

sebbene

il circuito

piuttostoche

cui

usa

combinatorio

veloce

di

tr

ùue

moltiplicatnre

L

L,ltiil,

prociotto

a catena

a catenu che era

fondano

col nn t

dueguoltiplicatori

questi

c.

il circui

ciclo

Ogni è 81.

totale

del

propagazione

sequenziale

l addizionatore

per

i t. Illt

ILlll OpCl

il numero

riporto

sostituire

sequenziale

l algoritmo

sufticièlllcllldl1iv

seriale

seriale.

lo stesso

il circuito

somma.

ii

essere

del

nel

Analisi

cl deve

il tempo

del

del

puo

di clock

Il

oca

di n bit

completo

output,

dalle

propagazione

abbia

di tempo

periodi

perché di

con

sostituiti

propagazione

occidentali

c

corretta-

profondità

di somma

c, viene

leggi-.ndo

0.

li input

di riportn

somma che

1, mostrato

in

numeri

propagazione

dell addizionatore

il circuito

29.17 - .

figura avere

in questo

che,

duri

a due

con

addizionatore

con

generale.

meno

il ciclo

0. Quindi,

di clock

un

Perché

che

a 0

cosi

un

i registri

con

In

li

durante

di ciack modo

Durante

re ,i, tro.

che con

equivalente

ne

seriale.

inizializzato

parte al

completo lll esterno

VQ

in

il riporto

di

quindi

nessi

registro

dall esterno

sia

alla

seriale.

che

successivo.

il ciclo

che

impulso di input

sar nno

clock

impulsi.

se

collegato del

di

addizione

l addizionatore

cic1i

appare

addizionatnre

b giungono

è pertanto

Ogni

di un

completo

il registro

addizionatore

di summ I

nsostratn

a ,e

che

del

impuIso.

il ciclo

gli

dell addizionatore

è 81.

Si osservi

cinque

il valore

che

ull input

si richiede

tra

input

presumibilmente

dall

output

di

Si assume

è l output

dell

a,

e h,

i bit

registro,

i valori

chiamatn

corretto.

di stabilizzarsi

29.17 a ,

dove uscita

sia

29.17.

un

memorizzato

dell addizionatore

15 possibilità

che

durante

fig ra

di due

seriale

dell addizionatore

tutti

produrre

comportamento

calore

il valore

parole,

funzionare

proporzionale

O ll .

di registri

replicato

cicle

I O l 00 .

legge

calcolare

per

far

per

prima.

alnseno

riporti

il prossinro

ognuno

un registro

Questo

registro

completo

dall addizionatore

riporto

del nella

di

impulso,

usato

In altre

output

completo.

iniziale,

essere

puo

propagazione

figura

addizionatore

ingresso

va

di

un dato

e lo memorizza.

il circuitn

l output

il funzionamento

Ad

impulso.

appare

Consideriamo

combinatorio

dettaglio

la somma

la profondità

per

Ol

natore Esaminiamo

essere

per

all estern

fonrito

durante

circuito

di

e nr viene

che

usato

produrre

d deve

e

Durante

il bit

stabilizzare

si possa

input,

gli

richiede

perché

l impulsi

11

input

qualche tutti

per

643

combinatorio.

tempo r

per

il circuito

aritmetici

duè t J Clcl

molto

l ri,,,

di ill

cfllclla i

a

b.

c

si

la usato

colonne

tl LI lllCI

di

realizza

visitarono

s tnmano

cwl

l afgc ritmo

Russia

nel

illustrato numeri

I I,.l l l/

con

1 pt CCCcl

L,ll

l

inspieg i

nella

i nc nlcri

tetnpo Al

eosttadino

diciannovesimo n Il

figura

a e b

in

29.

IN a . In

c ll l C ClC Il.,l C1CY i lt C

colo,l,l,,li corriipon lcnti

russo

sec lo

teit i.

.

o

Doli ni

Si

detto

cosi

trovai-ono

ri á.

due il

l O ll Il l. 1, I10t

nell l

più

8 nei

ecrcollO co1 llllll

nuineri

nuntero

di della

1 I. l j

il11

perché in

che

i f tc

quel input

gli paese a

e

col am, f l ,I Z10ll

b. di

ll I J.

i,tlltlleri,li.,p.,lri,lellJ

ltttti ili

li.

Qucit i

iotnitu

i

il

644

29

Capuolo

a

Circuiii

b 8

7

6

4

5

di cella

numero

di cella

numero 9

Èti

3

2

I

9

0

8

7

6

645

aritmetici

5

4

3

2

i

Q

I G. 4

116

100

l kll

1110100 11101000 D-M59P,

551

1000100111 b

Figura

29.18

nella i numeri le 4

Moltiplica ione

colonna

di

ne1la

righe

c/re

colonna abbiano

Sebbene figura

numero

a

1 numeri

vista

decimale

invece

che

contribuiscono

in

binario.

al prodotto

con

Realizzazione

è solo

Le un

di

a,

una

in

termine

parte

b moltiplicato

iner tre di

metodo

ma

con

in

Illtll . .,

ratte è il

binario.

straordinario,

la

colonna

di

l appropriata

espressi

in

a

iri

è disp di 2.

potenza

La figura

29.19 a

russo

per

due

celle.

Ogni

un bit del

bit

mostra

numeri

cella

a, prima

si dei 1.

f

Se

ciclo a

una

circuito

Un

si scrive

l algoritmo sequenziale

registro del

sequenza

di

L algoritmo

n passi, ha come

un

p. Per

l indice

e si definisce

che

contiene

prodotto

all apice

è a,

di moltiplicazione

aj

del

Per

1,

che.

...,

n

contadinn

delle

cgni

passo vale

passo,

b

.,

C l44

del

.

b j AO. 6

294-2 .

Inizialmente,

d

a. b

b e p

0. Il passo

consiste

jesimo

è dispari

da

se

cioè,

da un

I.

a

addizionatore

destra

con

a sinistra.

allora

si somma

propagazione

Se

a

è pari,

del allora

b a p riporto il riporto

mh

p lungo

p .

la caten

di p va

al

La i bit

passo

è

somrn di riporto

sueceáiii

o

i sere a

2.

F$ 311

prima

il valore

1, dove

,

lllkll

contiene

celle

del j-esimo

prima

di Zn

catena

a, uno

esempio, ....a

a, ,,a , 0,

di una

numero i valori

passo.

numerati invariante

consiste

bit

denotare

del

del

calcoli.

scorrono v

un

un bit

contiene

di ciack.

l Esercizio

a

Si usa

passo

esegue

seguenti

eseguita

uno

di realizzare

registri.

dell algoritmo.

p

veda

tre

del j,esimo

un

mndo

di n bit.

be

L algoritmo

a

un

contiene

numero

passo

richiede

llll l.

lenta

1

di ogni

IIUR . 133333 3 ,

l 98lll

di moltiplicazione i numeri

nella

h di

sonuna

Questa

espressi

del

per

il irwmero

colonna

sembrare

numero

riga

ignorata,

ogni

grigio.

numeri

possa

binario. il

nella in

realizzazione

In

frazionaria

stessi

russo

cui

russo.

i numeri

Gfi

numerico

righe

la

evidenziati

b

contadino

sistema

contadino

con

sommano

decimale.

del

un

Si

colomba

in

in effetti

riga.

in

nella

espressi

con

del riga

precedette riga

di dispari

che

elementari

l algorinno

coi

nella

l algoritmo

mostra

scuole

29

19 per

numero

un

a prima

29.18 b

delle

del

b raddoppiano

desiderato.

prodotto

di

a è metà

Si trasla

IjI

a di una

a destra

posizione

n .i l

se

0i

0

se

i

2n 2n

2, I

.

tip,irtri

di

u e i g ,itvane

a

n

c

I.

29

Capitolo

b di una

Si trasla

3.

se

0

sei O

sia

peggiore

perché

costarste,

Usando

catena

una

senza

somma

il tempo mostra

a e un

ha

8n.

che

impiega

passo

del

bit

numero

passo

invece

traslazione

tempo

caso

cosi

tempo

solo

ogni

nel

8n è On.

riporto

richiede

. Poiché

On

cella

a

Siano

29.4-I la

b

101101 , russo

contadino

del

richiede

1 passi rimane

totale

la dimensione

On.

in decimale

che

in binario

dell

il funzionamento

6. Mostrare

e n

011110

sia

algoritmo

a e b.

input

gli

per

01.

ha dimensio-

cella

caso

contiene

che

il tempo

ogni

altri

anche

una

cella

due

del

j-esimo

un

di u e v che senza

si

riporto,

le invarianti

29.4-2

Si dimostrino

29.4-3

Si dimostri

che

29.4-4

Si descriva espansione

come

Si consideri

un flusso

e

29.6

29.7

a catena.

i moltiplicatori

per

veloce

a catena

moltiplicatore

in un

0.

v

bit

del

29.4-é

numern di

le uscite

per

accumulare

veda

ancora

l Esercizio

cosi

Pertanto,

che i bit

Il j-esimo

combinare

si possano

di u e v contengono della

passo dipendono

operandi

Ad

dal ,n, . b,.

parità

n sia

u, .

per

bit

di p nella senza 1,

a

Se

ad un circuito

sequenziale

al ritmo

calcolare

il valore

deve

il circuito

n.

.Y

r

ed

il valore

x, e calcola

il valore

registri

O

il massimo

calcolino

di clock

impulso

od ogni

da1

ricevuti

recenti

più

che

y, in tempo

di uscita che

combinatori

elementi

On

di dimensione

circuito

n valori

degli

y, è il massimn

Cioè. un

I.

Il circuito

tra

due

può

usare

input.

p lenta.

realizzazione

Ripetere

29.4-6

di tr e v, dove

riporto

1.....

n

Si descriva

riceve .

v

u

n.

circuito.

realizzazione

nella

ottenere

29.7

la somma

o dispari.

i

per

dei

esegue

pari

a e b come

e

29.6

informazioni

veloce

che

fatto

si traslano

passo

le equazioni le stesse

realizzazione

,

ogni

valore

d tn

un

an iva

che

v,....

v, Per

vale

passo

b

9.4-2 .

di dati

impulso.

per

Ill

per a

valore

di un

29.7

u v

veloce.

puo

sono

riporto

una

rappresenti

29.3.1

paragrafo

a catena

moltiplicatore

di un

calcolo

del

a gri lia

il moltiplicatore

del

a On.

complessivo

contiene

bit

rappresentazione

prima

del

propagazione

abbassando

in questo

Usando

invariante

con

quella

a 81,

anche

riporto.

si mantiene

di

portandolo

b. Ogni

senza

b-

lenta,

2n

dei

ognuno

poiché

costante,

8n.

dimensione

29.19 b ,

la tTgura

il prodotto.

si

è 8n,

peggiore dimensione

di

l informazione tempo

del

propagazione

Ogni

richiede

riporto

di opri

addizionatore

a

ha

veloce

diminuire Come

con

alnseno

assumendo

Ogni

simultaneamente.

essere

caso

0. L invariante

a

pertanto

nel

Esercizi

dell addizionatore

deve

traslati

n passi,

richiesti

l algoritmo

l intera

Realizzazione

un

cella

la profondità di ciack

stati

b.

Sono

complessivamente,

Quindi,

di a sono

i bit

a

ad ogni

passata

ciclo

del

tutti

p

ogni

Poiché

che

b.

cella

richiesto

totale

81.

tempo

l algoritmo.

ora

analizza

durata

che

quindi

controllo

.

dimostrare

di

richiede

29.4-3

u e v. L Esercizio

di

riporto a

l,

2n-

di n passi,

implica

29.6

i

l

senza

somma

Oinmodochea Il tempo

l esecuzione

Dopo

ne

b, ,

la

eseguire

a sinistra.

posizione

v

Si

á47

aritmetici

Circuiti á4á

sol i

usandci

29.4-5

l Esercizio

n

01

elementi

per

il massimo.

calcolare

gli

si calcola

0,1,...,2i -l

Problemi

e

j V

1 i Bn

se

j

Si

Altrimenti

sei 0

a .

0

può

si

poiché

peritò 0,ii ,i,

0,

peri

l....,

2ii

l

C

II

lll lgglOI ùtlZ l 0

se

l

il-

1i2

V,

La 9.7

. il j- iimo

trami t

p isso

a

t deità

e

b

a

s

y.

una

t icendo

divisione

y,.

di

y,...

di

correlato

una

con

e moltiplicatori

trattari

il probletn

in

moltiplicazione

più. di

reciprnco

del

approssimazioni

tecnica

il reciproco,

calcolare

l formula

.l V

a. veloce

perci

esegue i

tin

totale l.

di

2

I paioli. I

Q i ndi1

0.

tutti

Per

j

n.

i paioli

si

lua

iucccssis

le

l i i ivano

sul

di

calcolo

un

appro,,im zie ne

cu,

g per

cnit nle

bit

e.,a t..

tino.,ri

hit

meno.,i...niticativo.

tlell i

come

niitr

lCIlt l.

realizz zione implica

di

sequenza

sot

circuiti

considererè

l .

cancentrerè

di w e

l aggiornailseeo

fC JllXZ lll011i

Si

ci cuito una

calcolare

di usando

-

Yeivton. un

con

divisione

i0

o Dopo

di

di

ottenere

pun è

numero.i-

e

circuito

itera-ione

chiamata

e si cal cola

un

costruire

Laide

u

divisione

l .

E

o

di

Circuiti

29-1

ll

f maggioranza b 1,

inv iri nl iglù

Si suppoa z

che

y,

l/e

qualche

c

0. Si

provi

il c

i,,

l/

E

un

un

Si dia

b.

deve

Quanto

iniziale

approssimazione essere

tale

y

y,. soddisfi

2

lli

i, y,. sia

l approssimazione

I- affinché

grande

che

fino

precisa

k

ogni

per

0,

e Hopper

Aiken

significativo

teoria

del

propagazione Si descriva

c.

di

su n bit

zione con

un

in tempo

l/x

O

n.

Ig

un

x di n bit,

input

del

è la dimensione

Qual

il limite

migliorare

si puo

di astuzia

po

dato

che,

combinatorio

circuito

un

un

calcoli

circuito

approssima-

Suggerimemo

Booleane

Formule ii

con

funzione

Una

input

simmetriche

funzioni

per

...,

f x x,,

Gli f ttti ,

n

f l,. z,,

qualunque

per

formula una

che

booleana

operatori

che

n, formula

sarà

costruiti

una

semplice

di

con

AND

porte

x,,

In

le parentesi

dimensione

e OR

a due

di

booleano

circuito

di

contesto.

questo

x .....t .

un

convertire

equivalente

booleana

siano

le variabili

contenere

può

in n.

Si

polinomiale. input

NOT.

e porte

Si comincia .a

considerando di n input

generalizzata

funzione è definita

booleani

SC Xi

fl

di maggioran-

Laficnzione

simmetrica.

199 , provò

che

numeri

previsione

input. lt I 2

XE ... X

maggioranza x,,x,....,.v 0 Si descriva mento b.

un

costruire

da

costruire

Sidedueache

Si deduca un

e.

arbitraria

booleana un

n variabili d che

f di lunghezza

per

che

g

02 .

una

XE X

booleane

calcola

come

Si mostri

f.

che

Si concluda

essere

puo

di prot ndith funzinne fnrmula

su i input

simmetrica

funzione

qualunque

vi è una

espressa

booleani

può

essere

calcolat

booleane

può

da

Ol t . simmetrica

booleana

la cui

booleana

lunghezza

di n variabili è polinomiale

riipetto

essere n.

al capitolo

Molti

. 11

libri

hardw.ire

dei

sull aritmctica

di

Cavan i

h

39

i

calcolatori

j e

di

di divisione

Human

ma gioreente

concentrano

l h

.inno

particcil inning

sulla

ii tereiianti.

reali r iiine

B ioni

nota

come

un circuito

Beame.

Cook

eseguita

con

da

19 8 lgn .

riporto

fu

basata

su

da G. W.

Knuth 122 ,

con

di 5000

Leibnitz molto

più

fu usato

dai

per

di Wallace Ofman

Ofman

152 con

la somma

usando

di

binari

numeri

a W all ce

è attribuito

riceve , ma

197

a Estrin, lunghezza Il

arbitraria.

lunghezza

appena

immediatamente,

di

a catena

moltiplicatore

un

è dovuta

icazione

la moltip

accelerare

gli

lapidea

n bit

degli

fu scoperta

152 . che

a I. Newton

di Nev, ton. cnn che

prime e Smith

Weinberger

da

dimensioni. O lgn

delle

Una

180 .

descritta

in tempo

descrive

prodotto

1940

in un

impiegati

furono

di riporti, del

costante.

moltiplicare

del

risalgono

iterazione

del

propagazione

di notevoli

porte

sommati

13

per

n bit

di divisione

e Hoover profondità

riporto

Atrubin

ad albero

Il moltiplicatore

più

Secondo

fu

riporto

del richiede

essere

senza

gli

produce

somma

da

è apparentemente

metà

la

di dimensione

usato

essere

pun

La

la moltiplicazione

per

catena

di una

previsione

porte

64 .

aritmetici. è utilizzato

e indipendentemente

secolo.

durante

previsione

la somma

e Pomerene

per

e, con

96

a.C.

potrebbero

con

riporto

algoritmi

costruire

x,

qualunque

da

Suggeri-

maggioranza .

per

polinomiale

nelle

C di profondità

circuito

booleana

formula

combinatorio

rappresentata

Note

di

che

circuito

Si deduca

maggioranza .

qualunquefunzionebooleanasimmetricaf r,.x .....v

funzione

come d.

C upa

vi sia

di dimensione

formula

funziane

che

inoltre

per

di addizionatori.

albero

sia una

chef

Si supponga Si supponga

c.

un

O lgn

profondità

di n bit

anche

diventata di

combinatorio

circuito

con di

con

la moltiplicazione

e propagato

somma

la somma

1666

nel

Harward

ad

che

di calcolo

diciannovesimo

1800

cost. uito

l abaco,

quanta impiegò

russo

nel

dal

indipendentemente Gli

.

altrimenti

S. Morland

contadino

metodo

di us ire

che

da

generato

della il loro

moltiplicatore

da

fin

a relé

ma

intmita a.

uso

egiziani

del

Una

algaritmi

degli

macchina

1642.

fu concepita

eliminato,

Gilchrist

che

del

stati

Lapidea

meccanico

in Russia

realizzazioni

vi è una

che

si mostrerà

problema

è polinomiale

dimensione

L approccio

in una i circuiti

n . In questo

f la cui

stringa

v,

booleani

tutti

l, 2,,

almeno

e Peterson

Hill

126 .

la storia

ricostruito

nel

Pascal

Kohavi

formali,

è vecchia

suo

calcolatore

x di

è una

logaritmica che

mt i

rappresenta

booleana

profondità assumerà

...,

,

permutazione

formula

e gli

.n

hanno

L algoritmo del

matematici

se

è simmetrica

x

1671.

vecchio

7 riporto

B.

ripetute

somme nel

29-2

da

escogitato

lpr .

8i

linguaggi

calcolatore

Il primo

anni.

dei

includono

e sequenziale

combinatorio

logico

progetto alla

accenni

meno

al bit

sul

libri

649

aritmetici

Circuiti

profondi

mostrarc no

Il Problema 8 lo-n . che

attorno

al 1665

29-1 Questo

la divisione

inventò

metodo su

r bit

fu poi può.

che

è poi

di Newton

per

quella

l iterazione

usa

da

migliorato di fatto.

essere

Algoritmi

il proliferare

Con algoritmi

algoritmi

paralleli

è diventato

algoritmi

paralleli

per

algoritmi

studiare

che

macchina

La

parallelo.

libro.

questo

C lpitolo

vin

ordinan -.

Gli

algoritmo

paralleli è migliore

di un

in modn

sostanziale

Il

LJ

30.

di

parte reti

studiare.

per

di per

capitolo

in termini dall ing1ese

modello reali,

i quali

per

stati

relative

le prestazioni

PRASSI, entrambi

algoritmi

gli

per

PRAM

non

probabilmente

adattati

siano

molti

algoritmi

un algoritmo

Se

cambiana un

su

eseguiti

essere

e

alberi

ignori

de li

essenziali

progettati.

modello random-

liste,

array. la PRAkt

Sebbene

attributi

gli

sono

noto

parallel per

paralleli

PRATIVI.

un

di

reale.

ioilo

globale

condivi .

parallelo

contemporaneamente .

operazioni

lo,,iche

ipotesi

seriali

processori T tti

chiave

di

l architettura

I mnstra

Vi

Que ta

restrittivi

n PRAM al oritini

ivlolti nel

parallele

i modelli

qualora

maggior

considerati

para11eli

troppo

il calcolo

per

nella

PRAiA

Pi hf .

L ipotesi

diretto,

descritti

algoritmo

parallelo

modello

tigur i

altro

sono

in questo

presentati

macchine

a superare

semplici

alctmi

appropriato usata

è stata

I modelli

29

Capitolo

ad accesso pi-ram .

facilmente delle

aspetti tendono

calcolatore

sono

. si pronuncia

che

para1lela.

risolti

stati

di dati.

strutture

parallela

essere

possono

in portanti

e circuiti

paralleli

machine

access grafi

28

la macchina

teorico

e non

seriale

sulle

algoriuni

esempio,

ad

è naturalmente

sviluppati

stati snno

fondamentali. modello

un

o RAM,

direttn,

accesso

sono testo

questo

degli

studio

Lo

si descriveranno

capitolo,

scegliere

si deve

paralleli

in

e le tecniche

le questioni

illustrano

volta.

Infatti,

stante.

negli

l*interesse

cresciuto alla

che

problemi

In questo

sequenziali.

algoritmi

gli

a sé

ricerca dei

parte

è

parallela di un operazione

più di

un area

maggior

algoritmi

paralleli

Per

la

elaborazione

ad

eseguono

che

algoritmi

comuni

paralleli

calcolatori

dei

paralleli

usando

I

calcolatori

per

i processori

Pjj

PE,

posarono

nraeeltina

della

base ...,

che

P,

figgere

I proces ori

accesso

dire o

una

memoria

inemoria

come

-in

o scrivere

posarono

ad

parallela

hanno

eseguire

nella in

memori t parallelo

globale anche

varie

e aritmetiche. riguardo

alle

è unageneralitzazinne

prestazioni

iorrelta

11Cl tl10dClln

del

con une

PRAM

nso iello

è che

il tempo

RAM

in cui

di esecuzione

il numero

di

Algorinni

á52

*

CREW

lettura

ERCTV

lettura

esclusiva

CRC3V

lettura

concorrente

abbreviazioni

Queste Tra

questi

PRAM

che

che

l esecuzione

il L hardware

CRCW. veloce, L arcf iteitura

di

condivisa.

nell nitù

di

base

della

processore

Vi sono

PRAA1. accedere

può

Pp

p processori

ad

una

qualunque

PE

..

Pp

commessi

f

memoria

di

parola

un unità

di

tempo

il tempo

di

un

accesso

alla

memoria

cresce

tempo

numero

col

è di fornire

fornisce

un

nel

presenti

Tuttavia,

algoritmi

per

operazioni

in

reali

tipicamente

hanno

alle

una

veloci

più

tempo

PRAM

EREW

essere

modo

arbitrario, Le

giustificata. coi sente

l ipotesi

macchine

l astrazione

di una

relativamente

il numero

di

a una

realtà

in

cui

è che

le

lenta

accessi

stima

sull

supporto

parallele

In questo letture

alla

violano

parallele

l ipotesi

però

alla

sul l unità

di esecuzione

punti

eseguono

l algoritmo

che

si analizzano

quando

gli

processori

ciò

l attenzione

principalmente

di

dalla

da

con

tempo.

eriali,

e il suo

dal

sia

Quando

loro

di tempo

vi è una di

quali

esecuzione.

tra

accessi

concorrenti

ed

esclusivi

alla

concorrenti

algoritmo

a lettura-eoncvrrente

di un processore Un

algoritmo

distinzione stesso

leggono

simile istante.

ra-esclusiva.

gcre

è un algoritmo della

ste sa

a letta ra-esclusiva che

processori

le

puo

se più

l,

gli

ahhrcviuzioni

un

a1goritmo

il numero

si

è conientrata

più

p .iiono

algoritmi

PRA

cnnwnemenle

memoria

crii lv1 ii

ere al

ui te

30.3

si userà di

memoria.

alternativi

di

PRAM

di

write

,

l

CSClLIYIV..l

È

SCI

lttlll ,

C ClilSl -.l

nella

Ill

è

essi nelle

differenti.

Altre

e

ERCW Da

algoritmi.

di

vista

di

punto

offrire

un algoritmo

ulteriori

CREW

quello

un

che

pesante

nella

ma di

quello

se fosse

come

Nel

ha

avuto

pratico,

il supporto

distinzioni.

stecca

locazione

detinito

ben

senza

in

una

CRCfV

cnmune

quando

devono

seri ere

tutti

alle

una

maggior

CRCW

il

offrire

però,

letture

concorrenti. contenga

qualora

si discutono

30.2,

paragrafo

un

algoritmo

CRCW,

elaborazione più

uno

scientifiche

pubblicazinni

scelte

arbitrario

è di

a priorità

è memorizzato

combinato

cui

per

lessa

non

ci

te.,so

di

locuzione

lg iritmi

ste, u

i

scrivono

processori valore.

stesso

l ettetto

ulteriore.

Vi

In

questo

nella

stessa

sono

tipi

alcuni

oche gestiscono

qui .sto

con

problema

fatto

il modello

comprendono

memorizzato

un

valore

il valore

il valore

scritto

arbitrario

memorizzato

dal

tra

proce sore

è qualche

scritti,

quelli con

combinazione

indice

basso

più dei

specit ca

valori

scritti..

uItimo

caso,

la combinazione

come solo

la

specificata

somma

il massimo

è tipicamente la somma

memorizza i valori

tra

i valori

tutti

associativa

futtzione

qualche

di

e

o il massimo

scritti

scritti .

mai Si

c1i meiv riv

che

lll,.lCAC

e controllo

più Gli

ist mtc.

sono

istante.

a scrittura-cr ncrirrenre tipi

del quale

nellr

algoritmi

PRÁM

devono

essere

fortenientc

sincronizzati

conett 1B1811te.

funzionare

per

due spicco

un.,

t .,

cercare

neliu

le Come

proces ori.

condizinni è

realizzata

di

tcrmin iei ne

queita

tut zioni

.lei

cicli

di

controllo

oche

dallo

dipend no

stato

di

tutti

i

c scrittullllplCg lI10

si illi. AllCI ll1P

i..XCILlltVC 1Ct1Llf

fare

scrivono

il modello

discute

sono ERF V.

è più

si trat terh

non

parallela

cnmmutativa

I esecuzione

nello

oritnsi peri

degli

semplice

più

distinzione.

processori

lacazione

Nell rafo

condiviia

PRAiX1

di

di

tra il numern

Il para

durmte

di issemnria

l c..iiione

processori

dividendo Le

è itessa

in

sull unità

memoria

PRAiM

loczzion

non

senza

di questa

Sincronizzazione Un

CREW scientifiche.

generalmente.

scrittura

memorizza

Confronto

e quindi

concorrenti

se l ipotesi

prestazioni

però.

contrapposizioni.

queste

semplice,

nel

che

contrapposizione

offrire

algoritmi

che

Generalmente.

dei

delle

è chiaramente

memoria

di processori

il tempo

l analisi

per

ten po

numero

problema.

discutere

Tipicamente,

algoritmo

sia del

si devono

algoritmi

gli

dipende

dell input

PRAiM

sul un

p rallela

dimensione

algoritmi

contrasta

usati

professori

algoritmo

accurata che

algoritmi

concorrenti,

delicati

più

di

ragionevole. di un

dagli

e scritture

hardware

supporto

ragionevolmente

programmazione

pubblicazioni

scritture

l astrazione

di accesso

tipi

capitolo.

capitolo.

configurazioni

letture

PRAM

può

memoria delle

accurata

misura di

nelle

o scritture

ipotesi Il tempo

una

due

alle

memoria

in confronu

paralleli

alquanto

macchine

alcune

approssimazione,

prima

altri

della

PRAM

Come

in

è un operazione

in

principale

è abbastanza

dati

che

contare porta

modello

di altre.

ai puo

la rete

Pertanto.

modo

del

PRAM

di

accedono

maggior

di

e una

Una non

richiesti

è relativamente

Una

ERE

EREW

.

prole.

conosciuti.

CRClV.

PRAM

memoria

conflitti

come

PR4iM

PR4 W

una

ma

ERE

dei

i più

è chiamata

alla

PRAM

richiede

CRCW

modello

considerazione

di comunicazione

paralleli

Il

di tempo

modello

unith

attraverso

algoritmi

relative.

sull unità

che

rete

aritmetiche. due

da

prestazioni

sono

in un

ai dati

operazioni

eseguiti

parallelo.

paralleli

memoria

L accesso

globale.

calcolatore

una gestione

e non

sono

è chiamata ERE

concorrenti

di della

di lettere

stringhe

e

nevrite

di Degli

processori

necessita

PRAM

Una

accessi

readlconcurrent

a wa

comlivisn

tempo.

in

globale

Ogni

agli

write

ERE

CRCW

algoritmi

sottostante

non

perché

memoria. 30.1

supporto

read1concurrent

e CRCW

di algoritmi

algoritmi

eseguire

exclusive concurrent

ERE

solo

di

naturalmente,

può,

write

come

pronunciate

l esecuzione

readlexclusive

concorrente

estremi

gli

-concumnt

concorrente

e scrittura

algoritmi,

consente

direttamente

Figura

di

esclusiva

e scrittura

di solito

á53

paralleli

.

e scrittura

sono

tipi

consente

CRCW

memoria

concorrente

calcolatori

per

30

Càpitob

ICJ l iXClùillC

l

i

f ll il/l Ill ..Ill,.I

ll11 1

I Ct

.,lll

l11CI11OI.1..

I Clt.,ltltO ltlt ,.lli.

di

contrnllo

YCli CClllClllt

clll.

gll,.lill

C f1 l

O

ill.

illl.,l

1

I v c.

f1

3l. Ch4 i

Cll

i

lllslfllCl.,llllClltE

C

h

iiul i

pll

nel

lI

l.i ,Ill/I .Il

ii

ilcri ni/r l/ia AL

d

I fl

ll

l I11t..

lit

l

654

30

Capitoto

Algorinni

È comunque

sufficiente,

strettamente nessun

vecchi

eseguendo

che

la ricerca

processori,

si assumerà

attraverso

la

rete

condizione

del

30.1-8 .

cicIo

deve

ciclo

in

un

gli

algoritmo

01.

incluso

inerentemente stessa

istante.

altri

stanno

ancora

nel

a

l

3

6

b

2

2

si puntualizzerà

le PRAM

CRCW

non

l uso

di

i

veda

4

la

del

30.1

manipolare

le liste

introduce

adattati

a essere

maggiore

dei

su

prefissi per

CRCW

Il paragrafo

salto

dei

come

liste

alberi.

gli

e EREW

che

puntatori

il salto

e come

dei

3

l accesso

un

sulle

liste

le potenze

concorrente

modo

i eloce

essere

possa

veloci discute

30.2

che

fornisce

puntatori

algoritmi

Il paragrafo

e mostra

il Teorema

presenta

efficientemente

PRAM

PRAi 1

per

eseguire

p

un

si

per

calcolo può

per def

di

usato

per

Figura

30.2

teinpo

O lgir

i li

iali

dal1a

prefissi

eseguire

usando

algoritmi

teoria

dei

un

una

il calcolo

in modo nel

algoritmo

deterministico.

di

capitolo

mostra

tradotto

come

in

fornisce

Le

delle

questo

rappresentano

Essi tecniche

tecniche

Salto

solo

introdotte

usate

dei

modo

e

efficiente.

Infine.

le

in

riprende

mostra

un

come

tempo

per

una

ics questo

algoritmi

sono

stati

scarna

i e i valori

dell at sono

però,

in altre

aree

d

Tutti

Il primo di

come

para

d.ilo dunqi.,e n getti problemi

ronfo

un

si

studia

i e etto

una

da

un

que,tn,.ilgnritmn in

lempo ia

li

oritnti

al

5

1/

2Z

0 lgn . alheri

tecnica

l isti

vi

chiam.sta

pniente.

di

u c eeetti.

per

ere i,ire

Interne..ii prohleni

ne un studi

iulle

nno

mostra

meno

dall schiera

abb stanzu

liste.

saltn

c l ola calcul

utilizzano

dei

che

area

vi

l a dist

usta

dal

ui t che

tecnica

Infine lei

parallelo t

che

dell i

di al

che

lt

oritmi

c ii

eiscrc

di rialti

itera..iodate

di

lista ogni

nlore

di

ogiri

oggetto

while

steli

ciclo

del

di questo memoria

0

og i

oggetto

concatenata

da1la

de1/a

fine

rappresentarir d contiene

la

appare

in disran

soprn

erlgr rltm

lista

una

in

PR4 W

a dell oggerro

l oggetto.

l

b - tl

Lisi-RwiK.

algoritmi

sono

paragrafo

EREW

non

è richiesto

alcun

globale.

dei

ranghi

parallelo

opera

in una

comune

tanti

assegnare processori

consiste

oggetto

della

della

supponga ire.

-

Il

sequenza

Ol. data

sia o

modi

tic i

li.,l,,

ili

una

listn

distanze

liste

clistunza

calcolare

se

te r i

NtL

.

e

nevt i

NIL

.

i valori

cl

partirc

.ialino

ilei

i

ciscnzi ilmcnre

ut

6,

I, 0,

una

lista

in parallelo sugli responsabile lista

i

dall i

si

i hiam,l

tine

della

al oriln i

ieri ile.

5.

e che

in una

oggetti

PRAM

della

list

. Si assumerh

l i-esimo

i,

che sia

processore

L can

fine

della

él ij

per

Questo

dal

Piii ng

processare

e che

si desideri

torm lmente.

etto

se ne ir

i i ellalista

ealenlo

dei

metallo

richiede

ogni

per

suo

n nggetti

lista. ogni

del

proE lesna

lift i.

processore

manipolato

semplice dalla

vi è un

Poiché

essere

può

un valore

miilii il

della

concatenata

di L, la s ta

si desidera

I

tc

iran processore

4,

3.

della

ori mi

convertire e ri

getto

0

problema

memorizzare

può

operare

oggetti

gli

getti

oggetto

che

calcolare

Si

Per

oggetto

sono

di o

ogni

puntatore.

di

liste.

RAM.

ad ogni quanti

in tempo

ngni

per

all indictr i Si un..t

sulle

Lafigura30.2 o .peresempio,ma traunalistaconcatenata

lista.

responsabile

ioluzionc poisonii

distarea

Uira

dèlf afgorihiro,

algoritmo

siano

Si

quesito

al

lista. iu

pel-,,,i-

cotiscnte

In

produce

del

della a

responsabile

responsabiledell i-esimooggetto.

rappresentative

i puntatori.

puntatori.

1el7niltP

ogni

atla

dell informatica.

che

quelli

n oggetti

puntarriri.

si memorizza

calcol

PRAiXt

dopo

è conveniente

pero,

30.5

puntatori

interessanti

Al

algoritmi

gli

Calcolo

aleoritnin

malto

tulle

di

dei

11 professore

concorrente

3Q.1.1

algnritmo

un

principalmente

selezione

capitolo,

paralleli

tr tti

lista.

1ista

salto

l ùlori.

d

della

una

il

cl neit i i piii

0

un

quali

il problema

il paragr fo in

parallelo

il problema

sotto

efficiente 30.4

Coli

c/la fine

in

usando

puntatori.

di

Tra

l l

3

4r

Calcolo

è il campo

30.1

5

combinatori

anche

condizioni

concatenata

calcolo

i circuiti

discute

le

Il paragrafo

p. lista

i conflitti

paraIleli

p afi.

paralleli.

0

relative

memoria

che Gli

4

5l

pnhrarw

essere

possano

di calcolo alla

Il paragrafo

e fornisce

p

su

che

PRAM.

essere

puo

qualunque

risolvere

possano

dalle lavoro

al

p processori

processori

randomizzato

logaritmico

rispetto

Brent

di

simulati

dell efficienza

algoritmo

l

di terminazio-

concorrenti.

accesso

30.3

essere

importante

6

di

rete

potenza.

possano

come

del

Si mostra

usati

algoritmi

la tecnica

in parallelo.

il calcolo

degli

5

o

capitolo

Il paragrafo

eseguire

l

zr

d Struttura

0

c

l Esercizio di una

la condizione

0

nelle

controllare

per si

tutti

ERE

necessitano

scritture

di

l

controllata

PRAiVI

totale

verificare

possono

stato

essere

possa

logaritmico

di esecuzione

esse

dallo

modello

tempo

attraverso

01

dipende

655

paralleli

3

e

allo

parallelo,

parallela

Qualche e il tempo

30.2,

paragrafo

che

parallelo

quest ipotesi

in tempo

siano

comandi mentre

di terminazione

la terminazione

parallelo

stessi

comandi

il primo

ciclo

tempo

fa

essere nel

nuovi

condizione

non

verificare

per

di un

di

controllo

si vedrà

Come

controllo ne

di

una

i processori

gli

sincronizzati.

terminazione

scientifiche

pubblicazioni

siano

che

eseguono

si descriverà

Quando

che

assumere

eseguendo

i processori

della

scopi,

i processori

avanti

comandi.

si assume

Per

Tutti

si porta

processore

dove

ai nostri

sincronizzati.

calcolatori

per

tale

rm glti.

tempo

86.

che

656

Capitolo

30 A1goritmi

soluzione

Una

efficiente,

parallela

pseudocodice

richiede

che

solo

tempo

è data

O lgn ,

dal

seguente

parallelo.

le scritture

alle

qualunque

coppia

tutti 1

for

ogni

2

processore

do

if next i

3

svhile

5

i, in parallelo

di

else

di

esiste

Non

ut.

then

un

i valori

m

le

0

leggano

I

è un

oggetto

i tale

che

altm

for

ogni

7

do

i. in parallelo

processore

m

di

9

di

nextfi

La

figura della

la lista

appena

hanno

mostra

30.2

lo stato

lista

responsabili.

c.

Nella

gli

oggetti

diversi

lista

deve

per

calcolare

r tt.,

salto

essere

dei

linea

che

nella

. ic,

alla

da

dal

cosi

snlo

sui

in cui salto

puntatori.

distrug

allora

8-9 figura.

due

figura

tutti

della

loro

seconda

Poiché

processori

iterazione,

è mostrato

e il risultato

Mostrianxo

lista

solo nella

finale,

lista

rext ne t noti

che

la struttura

le copie

ji i campi

della

dei

lista.

i puntatori

puntatore

vengono

Se la struttura

nen

puntatori

tutti

per

e si usano

Si

della

è fatta

chiede

le copie

che,all inizio

ogni

di

iterazione

del

ciclo

ivhile

alle

linee

che

somma

5.

mantiene

ossei

perché alla

alcuni

memoria

VeCliQmo sabile

di d nello

a

Or..l pCI-cllc piii

o

un u

sottoli ta

che

3,

t ne

dell

Fé. 0

tigura

inizia

da

30.2 b ,

valori

i cui

elto,

SN

Si cvntii

ci i un

i

sulla

se un allora

tutti

oggetto

la prima

linea

lettura

S se

i professori

ha ne v i

i

J w n.

carica

Pertanto

j.

9. Poiché

esclusive. alla

che

sincronizzazione

di

e vi il

per

Lise-R iv.

e si

in modo

e scritture

nello

i, si ottiene

la

esempio.

per

di cl2,

ori

inaridì.

il suo

La

ragione

successore

delle

liste un

è un

assume

consistente

stesso

che

la

e sincronizzato.

tempo.

lista

O

L, allora

Ltsv-Rwsv,

I . è sufficiente

richiede

mostrare

tempo

i i sono

che

Oln.

esattainente

il

una

che

per

una

di

rete

degli

oggetti

netle

Pertanto

ogni

passio

lunghezza.

terminazione

ERF V

di I is r-Rwsv. nello

in tempo

macchina

da

di proce

RAM

tempo ma

ii

cui esso

Un

algoritmo

esegue

8 lgn .

On,

per

PRAM

un

del

e l altra

pari

salto

dei

I iterazioni,

pumatori allora.

tutte

algoritmo

scori

richiesti.

c se ue

lavoro

cosi fattore

che

che

richieda L

esegua.

tempo

01.

Esercizio

30.1-8

ia tempo

misura

O lpt .

il

il lavòro l zl

oritmo

richiede il problenu

per

CScgue

più

lavoro

algoritmi

il prodotto

Intuitivamente simula

li

per

come

parallelo

poiché

diretto

LisT-RAITV

5

ERE .

interessante

quando

8 nlgn ,

seriale

linea

p eudncodice.

un

seriale

L algoritmo

indicsndn

solo

posizione

I Igi

PRAM

vi è un altr i

parallelo. eseguito

il numero

alla nella

esplicitamente

Lisi-R.sex

procedura

Dnpa

di controllo

realizzazione

il lavuro

di esecuzione

la loro

controllo

di esecuzione

Si definisce

consiste dispari.

e dimezza

dalla

terminazione

al tempo

una

oggetto.

che

la

lata

nella

tempo

pnsizioni

richiesto

come

per

nella

nelle

solo

della

impiega

2 e I danno

n oggetti

5-

sul

.iul

lui

nn

ll,

c ci

tetto j

funzinni

puntatori

sincronizzati.

O

suo

parallelo.

n

processori

ùel

calenlo

di quel

del

è la quantità

tiene

e dei

ran

che

tutte

le letture

si verifichino

della

linea

memnria

d lla

primordi

qualunque

n,trii

pr li CssorC

9 pui sul

logari micu.

A si definisce

relativamente

leltur i

ll,lgoritmo

lato

effici .nte

rispetto

al

lavoro,

controntutn

c011 Llll dl IO

mi ,liure

possibile

cu

un,

RAM

seriale.

Poiché

il

mi,,li r

icrittura

sinistro. nriln1 , c icrittur i

EREV, alle

. P ,ic

lli

lince

Z-7

è esclusiva.

i rcip 1ncon1c

lo s in

riipello

al

lavuro

per

hi

l o ssolutansente

correttan,ente..li

ni esecuzinne

efticiente I IsT-R

dettagli

letture

si intercalano

l ipotesi

necèssario, i lista

scavalca

ùi s lto

ciii re

di nviv u .vt i

lettura

L. Nella

enna

etto

algoritnlo clevono

nadir.

richiede

il processore

per

linea

9 sono

per sn..

j

. l proprio.

successo e

di m.vt i

sc .rittura

nriginaria

3 dallu

qu..uido

suo que.,to

assegnamento

lista

etto

memoria

puntatori

di un

della

3 è la se

è che

di il del

che,

dell

fine

dell og

in variante

paralleli

aggiornare

nella

i alla

dall oggetto

Ia distanza

il valoré

accessi

destro

da inizia

tale

somma Si

i valori

che

di descrivere

eseguito distanza

i,

di

dalla

linea

che

nexr

sincronizzazione si

si comportino

eseguono

richiede

oggetti

presumibilmente

La

sottolista

rtext jj

questi

se vi sono

contengono

di calcolo

corretta

che

il numero

le liste

tempo

i, se si sommano

i cioe

di programmazione

che

liste

degli

raddoppia

Si

cosi

in due

consiste

tutti

Correttezza

oggetto

ad

uriante

i

parte

in cui

ora

paralleli.

ogni

sincronizzazione,

carica

alla

qualche

particolare,

questa

lettura

l inizializzazione

Oltre

9. per

eseguita In

ed è mantenuta

le letture

Con

ignoreranno

i proeessori

controllo

l invariante

si

poi,

e l ambiente

D

mantiene

iniziale tutte

sia

esclusive.

punta

seconda

la lista

l in nexr ij

mostra

le distanze..

Lisa-R w

distinti,

oppure

j

Analisi

mostra a

parte

é oggetti dai

iterazione

oggetti

puntatori.

si effettuano

i primi

Nella

ne v i

endn

La

d.

parte

si esegue dei

5-9.

eseguite

sono

questa

primi

della

parte

linee

iterazione.

della

b

Ogni

delle

prima linee

nella

è chiamata

mantenuta,

ivhile

il risctltatodi

appare

9,

la distanza.

ciclo

le

parte nulli

si opera

puntatore

realizzata

modificati

del

Nella

non

puntatori

iterazione,

hanno

ut.,

appare

hanno

terza

L idea iiext i

da

Il risultato

4ogeetti

calcoli

iterazione

dell inizializzazione.

diversi

con

per

sono

mantiene

puntatori

w ne

neXE iexl i

l algoritmo

di un

prima

prima

puntatori

primi

come

d neir i

C

vera

che

dei

ire t i

á57

paralleli

EREW. in

PRAM

then

8

j che

i e la

D ora

if nexr i wwt.

essere

d nexr i .

oggetto

algoritmo do

6

sn.

il salto

i e j,

di supporre

devono e poi

che

distinti

da

la necessità

processore

next i wwc

diversi

letture di

Si osservi

oggetti

è certamente

next



tutte

8-9. di

invariante

Questa

Lise-R iw L

linee

calcolatori

per

il prvhlr 111

ll I

Litlcnh

lei

r n

hi

nel

p ira t 11

3 .-1.

558

30

Capitolo

Calcolo

30.1.2

tecnica

La

del

essere

possa puntatori

usato

dei

Un

calcolo

richiede

S

non

...,

3,

dei

dei

1,1

1,2

x

altre

y, è ottenuto prefisso

ogni

parole, da

cui

a partire

calcolo

il valore

1 e sia

1 per

/

l,

Pertanto.

la lista

che

valore

calcolato.

il

come

c

sequenza

una

output

-moltiplicazione

dalla

termine

definizione

questa

tra nel

definizione

La

da 0, mentre

dei

indicizza

da

1

/-

i primi

29

Capitolo

Figura ini

prefissi,

2, ...,

modo

fatto

somma.

n, un

dei

il / -esimo

di una

elemento

produce

prefissi

eseguire

01 .

elemento

ogni

il problema

di risolvere

in tempo

che

Poiché

calcolo

30.3 iale

af

differenza

una

i

ora liste

un

come

Ox

S

EREW

algoritmo Per

di n oggetti.

v Gx x,,

j

del

della

I

k,

calcolo

il calcolo

dei

del

1 -esimo

dei

ranghi

per

comodità,

calcolare

possa si definisce

i prefissi

S

t. j

Utilizzando

in tempo

in parallelo

Le

j

R x,

Allora

per

t

j

lista

stesse

è di calcolare

prefissi

y

l.

/,

sia

non

ERE V

richiede

comincia

oggetto

dall

Pertanto.

con

inizio

dal

un

lista.

di

dei o

ics o ni

si desidera

che

oggetti

sono

gli

memoria

prefissi etto

per

i in una

. ,, è il /,--esinio

allora,,- i dei

parallelo

lista, in cui

modo

algoritmo xi

valore

della

il calcolo

un

una

nell array

dell oggetto

30.1-2

su

pret ssi

determinato

dall indice

L Esercizio

dei

yi J

produce

pretissi

che

lista

un

I,

II seguente l oggeno della

sequenz,

nel ogeetti.

gli al

oritmv

i è il /,-e im, di input.

di

oggetro.

tella

for

ogni

è 4

ivhile

i,

processore do esiste do

un for

in

parallelo

oggetto

ogni

processore

della

valore

ti .at i i,

ill

pJr tllelo

4

del

olori

alore

oggetto

e iteri

y

e y per

ll

a

l -esimo

punta ogni

di

prima

il k-esimo

oggerro

è

l.

linea

1

dal

iuo

l, A

l j che

e quindi

men orirzu

è mostrato

nella

un

memorizzato

Cù Ill

suo

I, I

l

l. k

2

30.3 c .

Nella

terza

e ultima

c to

ottiene

il iuo

i il ni

e ir etto.

O

fl

/.

n ani o

ii

tot ile

cs

ui

i 0n

I n.

oggetti

per

cicln

while.

del

ciclo

svhile

l

appare

l ll

I puntatori nella

I. / iter azione.

2

solo

che

1, carichi

sono

1. saltati

30.3 h .

Si

etto

carica

o

il

l. /

l

iieir

2, il /,--esimo

tlC1 illO

n

tigurz

Illlù YO VállOlC

l ultimo

lj 8

fl .

La il k-

iterazione.

prima tnnne

l. 2, ....

l operazione

n

Nella

og ettn.

successore.

Cl t l ll l h

l

che

per

del

per

l, 2...

uro

ti

i

è ERE

iterazione

I, 2, ....n.

esegue

I,

Lrsv-PRevn

esecuzione

1 -esimo

I

iterazione

Per

Ltsl-

il processore

l invariante

ogni

o getto,

nel

prima

iterazione. successore

di

r-esima

il k-esinso

e Lisa-RAAK.

cl o y. Nella

mt..

1 . I , peri

Quindi

che

mantiene

della

al

algnritino valori

in u -Pz F,x.

Si noti

prinsa

fine

dei

laddove

nevt jj lista

alla

d-

puntatori

/--D

della

tra questo

processore.

dei

successore.

la secnncla

I. l

altro

6 fa si che

viene

valore

inizialnente

punta

e il risultato

ag dal

la somiglianza

della che

i

J

ne t i

max 1,

La

l, /

I

di un

stato

lisia

i it..

similmente

esiitet te.

i talache

l àlor

il

l

conearenara.

nexf

e l aggiornamento

il salto

lo

c-. i

i

ni

y nert

next lleXt ij

il suo

oppure

memorizza

CO111C Ill LIST-Rw w vedere

indicano

l invariante

oggetto

I

30.3

Ltsl-Rwxa

n1ostra

proce ore

puntatore

m

y

8

yi

1lezt iJ

LIST-PREFIX L 1

lista

b-d in

d.

parte

ui a

Il pwtlarore

6

tl

ut.

cl i

w iieit j

AO.3

producendo

insieme

metnorizza

L. Se

su

I .

l.

l ultimo è

l*inizializzazione

il valore

mantiene

equenz

della.

col1egati

array.

gli

elemento y,

I ordine

è

l

1p

Lisi-PREFIx

oppure per

l

f1,4

y nen i

i aggiorna

nevr i

figura

il I-esimo ha

un calcolo

w

sono

ragioni i e j,

esiino dei

calcolo

ii.

i,,x .....r e

/

14J

prefissi

finale

e la figura

y irert i

procedura

i.

di un

l obiettivo

risposta

nextfi

differenze

iorna

distinti

k

La

if

il processare

La

1

notazione,

...,

n.

3.

pseudocodice

uniche

valore Quando

l.l

i I.

7

1 da ogn

n. e 1, /

si esegue

di input

r

sia

è

then

ag i j

1,,,

questa 1,2,

perk

1,3

fista

oppure

6

notazione

la

linea

nella

è di invertii

e sottrarre

prefissi

oggetto

della tutti

oggetto

do

k-e imi

xe. I

che

k

.i per

t, P

/

dei

parallelo

k-esano

contiene

lista

le i e j tali

interi

per

A 13

l

1,2

L algoritrno

x del

k

Lo

su

f dl

di n oggetti

lista

/ , l indice

y,.

/

1,1

co rtrollo

si supponga

normale

81a

un altro essere

può

mostra

O lpi

3,41

O . Il calcolo

associativo

binario

e produce

k

il valore.i-,,

Si

2,3

di n oggetti.

i

In

esempiadi

elemento.

b

t

x, e

sequenza,

la sequenza

contenga

API

il

per

essenziale.

Come

t.ll

prefissi-

il salto ERE V

L algoritmo

prefissi.

dell operatore

z,....,

x,

come

a ranghi.

dei

Sxq n.

della

indicizza

sequenza

chey,

...

2.

/-

per

una

dei

liste

su

studierà

un Si

binarie.

il calcolo

O lgn

caIco1o calcolo

aritmetici,

circuiti

somme

in termini

del

l applicazione

Xk

x,8.v,S

elementi

tempo

oItre

dei

contesto

eseguire

per

è definito

prefissi

tale

l k-I

usato

input

i ...,y

nel

lista

una

ben

velocemente

impiega

dei

come

,bk

come,

essere

prefissi

si estende

eseguire

per

su

prefissi

puntatori

mostra

possa

calcolo

y,.

dei

salto

29.2.2

Il paragrafo

dei

parallelo

lit l IUD CdlllpO

puo

Ileo

SLICCVSÀOI c. Il risultato i priini

due

o

getti

della

il

Algoritmi

gag

gg i

euleriano

di ogni

EREW

algoritmo

di questo

chiave

ciclo

la profondità

di calcolare

problema

passi

del

la tecnica

si introdurrà

pgag o g

euleriano

ciclo

del

tecnica

La

con

come

e si mostrerà

nodo

in un

tempo

albero

di

è il calcolo

O lgn

essere

possa

binario

nodi. dei

parallelo

prefissi.

dell ordinamento

ginario

fratello

gcsgo

ragioni

che

uno

solo

Il calcolo RAM

la

della

di

profondità

bero,

però,

8n

sia

l altezza

un

Pr

ciclo

visita

i nodi

nodo.

Dovrebbe

la

tempo

bene

su

un

albero

tempo

euleriano.

in tempo

a

binario dell al-

impiegare

ciclo

alla

calcolare

L altezza

dovrebbe

nodi

i nodi

si può

dell albero.

dei

il

su una -onda

un

tutti l onda,

del

On

propaga

con

tecnica

essere

esempio.

per

richiede

l algoritmo

che

Dal

se,

tutti

i vertici

per non

e connesso

e

ogni

volta.

arco v

attraversa

di una

orientato

dei

si

pero.

O lgn .

qualUIlgllC

esattamente 23-3,

i, il grado v

ii,

versione

nella

arco

Problema

orientato

u

v,

in

un

orientato

di i è uguale non

grafo

di qualunque

volta

una grafo

d entrata un

orientata.

e dunque

un

La nodo

orientato

la versione

orientata

albero

orientato

non

fine un

nella struttura

sua

binario non figura

T, si forma

30.4 a

un ciclo

prima

orientato .

Il cammino da

una

lista

eulerian

o

corrisponde

a

concatenata

he

è la seguente

al professore

al proeessore

punta

un

padre

nodo

punta

se i un

lista

euleriano

figlio

concaten ta

è il prucessore ciclo

grafo

A del

figlio

sinistro,

se esiste.

altrimcnti

A del

figlio

destro,

se esiste.

altri

ilWllti

punta

b

C.

C di

clelia

un

B.

B di un nodn

l inizio

in un albero come

puntn

processore

C del

nodi

T visto

è rappresentato

proi eisore

processore

inario.

se e solo ogni

dell albero.

Il processore

e la

ciclo più

u,

di

A di

Il processare al proprio

ori

caso

Usando

orientati

ed

al proprio

Pertamo.

ano

le profondità orientata

Il processore

radice

che

funziona

le profondità

è un

vertice

Poiché

noq

dell albero

attraversa

punta

piuttosto

euleriano.

versione

una

v.

archi

grafo

calcolare

della

nodo

2.

va avanti

all altezza

qual

EREW

grafo

euleri

di

a due

un

lo stesso

ha un ciclo

qualunque ha

I, nel seriale.

PRAM

di

d uscita

corrisponde di

su una

visitare

se può

grado

a n

pari

Per

ad ogni

le profondith

parallelo

proporzionale

dell algoritmo

euleriano

e connesso al

algoritmo

tempo

e al

negativo.

simultaneamente

che

sinistro

non

processori

di n nodi

raggiunge

campi

dell albero.

ciclo

anche

L onda

ad

i ha

intero

1 e 3i

3i

calcolare

un contatore

tre

nodo

al fratello

un

processori

albero per

Ogni

padre, da

e i suoi

3i,

in un

rappresentazione

11.4.

A, 8 e C del

nodo

semplice

Questo un

essere

migliore

calcolare

Un

nodo

il basso.

nodo.

potrebbe

non

possono

di ogni

impiega

tre

i processori

incrementando

ogni

poiché

un

semplice

al nodo

i processori tra

con

verso

cosi,

una

identificato

si associano

parallelo

dell albero

usa

paragrafo

sia

chiamati

associato

profondità

profondità

completo

nodo

chiare,

saranno

algoritmo

Un

radice

stessa

ogni

la comspondenza

essere

seriale.

dalla

che

processori

i potrebbe

si nel

rispettivamente

puntano

subito

diventeranno

individuare

nodo

che

ji

PRAM,

presentata

di i. Si assuma

questi

semplice

right

e

jeft i

parent i ,

una

in

binari

alberi

memorizzare g

C della puh

essere

al proce sore

8

destro.

Il proces ore

fumata ra lice. cnstruito

del

d i un ciclo Dati

padre

euleriano

i puntatori

in tempri

se C della

O

che I .

è un

figlio

ndice

sinistro punta

è il processor compon

e al

a wi.. A d ll i

onu

l .ilhet-o l i

pt

c fissi

sl

rslrrlulril t

in

Irui i

.ic l ialc

.

per

calcolatori

paralleli

á6l

6á2

Algoritmi

30

Capitolo

si ha

Quando

A,

processore figura

la lista uno

30A a . la

normale

il risultato

nodo

risiede

in modo

nel

tale

i, ciò

l, in modo nel

nodo La

lista

oggetti quantità necessari

che

che

effetti

che

rappresenta

e cosi

il calcolo

totale

sulla

per

concorrenti

alla

usando

come

30.1.2.

La

del

prefissi,

sono

messi

sommare

somma

figlio

destro

l in ogni

Si estenda

30.1-7

nella

figura

di

i sia

del

i. Il processore

i, l intera

processori

A, à e C

somma

nel

la profondità

nodo

di ogni

0 alla

0 perché

più

grande

del

visita

di

figlio

del

sinistro

C contribuisce del

essere

calcolata

richiede

30.2

con

le profondità

di tutti

l algoritmo

tempo

i nodi è un

Essa

01. O Ipso .

è O lgn .

algoritmo

ha

3i

Pertanto.

Poiché

la

non

dall hardu

are

hardware

di

in tempo

30.1-2

O lgn

oggetto

centrale

in una

lista

di n oggetti.

determini

nelle

l Lnl2J-esimo .

cioè

un algoritmo ..n .

Non

Si supponga Si dia

EREW

che

usare

ogni

un algoritmo

contenente

gli

che

oggetto

in tempo

ma

puntatori,

in una

EREW

oggetti

esegua

blu

e una

eseguire

lista

efficiente

O lp

il calcolo

direttamente

L di n oggetti

per

formare

due

contenente

gli

oggetti

dei

il calcolo

sia

colorato

liste

con

su un

pretissi degli

Una

PRAM

un

EREW

algoritmo

han

o getti

efficiente

rappresenta

e infornai

assuma

che

Si

un

ogni

che ogni

distribuiti individui

o

per

etto

della

conosca

processor

su alcune

di L

ogni

li ta

lista

un

il proprio

indice

disgiunte.

oggetto

dell identitè e che

che

la

rappresentante.

tale

indice

dia

algoritmo

ERE

che

calcoli

in

tempo

O lg

la

problema

radicato

mantenea

la

iis ogni

differenze

di

ttnclo

di un

riue

i

albero

lori

in

binsrin una

di n nodi.

somma

iia

dimensione

for

del

lun

o un

ciclo

dia

4

albero

un

al oi

binario

itmo arbitr irio

ERE

ihe in

vrJinc

c alcoli mticipato,

la

scc uenz simmetrico

li

nocli

ottenuta e

e

le

ia

cui

sia

data

si

più

concorrenti

le scritture

radici il

Per

veloce.

un

permettono

aiutano

concorrenti

letture

una

o

conosca

nodo

ni

in cui

binari

di alberi

toresta che

desideri

nodo

ogni

i hz un puntatore radice

detla

l identitè

visitando

di ogni

dell albero

radice

della

l identità

memorizza

ogni

i,

processare do

if

in

del

i in root i .

nudo

parallelo wc

purent i

Elhile

un

6

difterito. 7 iN

un

esiste dn

for

nodo

ogni do

i

n of ij

then

3

5 Si

algoritmo

si

Suggerimenu

corrente

supera

delle

Fiso-Roovs F

unico.

euleriano.

30.1-6

che

padre

puntatori

2

sottoalbero

CRCW

Si

1

30.1-5

array.

accessi

l identità

di trovare un

dagli

Si dia

arbitrario

del

in un

elemento

il massimo

algoritmo

un

cui

consentono

concorrenti

le letture

foresta,

per

il problema

Per

discussione

compromesso.

è tornito

algoritmico

problemi .

di

modelli

veloce.

più

Si supponga

circolari

vi iono ERE

algoritmo

proposti

vantaggio

quale

che

si mostrerh

il migliore

di trovare

cui

per

esaminare

vari

una

rossi.

liste

memoria.

di una

alberi

a suo 30.1-4

alla

paragrafo,

algoritmo

Un

o di blu.

oggetti

è istruttivo

stati

a questa

Le risposte

restrittivo.

troppo sono

poco ERE

PRAi 3

le

indici.

di rosso gli

a metà,

stanno cio

prestazioni

degli

giustitlcati.

troppo

usati

e che

fatto

il

lamentano

Altri

costosi

troppo

sono

CRCW

di programmazione

un modello

problema Si dia array.v l

30.E-3

se è l oggetto

ogni

per

essere

per

forniscono

ERE V.

parallelo algoritmi

agli

forniti

i meccanismi

che

dicono

Alcuni

è controversa.

essere

debbano

memoria

alla

concorrenti

accessi

gli

calcolatore

supporto

frequentemente

sono

un

di

che

fatto

sul

discussione

In questo che,

CRCW

e algoritmi

EREW

algoritmi

tra

Confronto

concorrenti

EREW

in

intercalare

Suggerintenro

radicato

sottoalbero

in tempo

soltanto

cicli.

dei

esplicitamente

esegua

che

List-Rwwv.

terminazionc

1 della

Esercizi

un algoritmo

di

ordinato

ciclo.

del

il corpo

con

di

EREW della

il controllo

il controllo

sinistro

Nonostante

Si dia

un algoritmo

albero

di un

nodi

dei

la profondità

alberi

per

Si dia

euleriano.

ciclo

del

la tecnica

0 lpt

realizzazione

una

O lgn

tempo

Il

corrente.

sottoalbero

probabilmente

30. j-1

in tempo

con

ordinati

rappresentazione

una

si descriva

In particolare.

agl i alberi

binari

alberi

dagli

euleriano

ciclo

di applicare

consenta calcoli

descriva

Si

30.1-8

La

può

memoria.

nodi.

che

EREW

la profondità nei

corrente

sinistro

nodo

prefissi

del

dei

che

ordinati

30.4 b

la tecnica

arbitrario

grado

operazione

corrente.

il ciclo.euleriano

calcolare

dei

è di

con

padre

dei

un

mostrato

6á3

paralIeli

n nodi.

1 alla

del

somma

parallelo

di tempo

accessi

del

prospettiva

abbia

paragrafo

I numeri

con

figlio

prefissi

parallelo

sottoalbero

8 contribuisce del

C, come

prefissi.

Ia profondità

profondità

dalla

i non

un

nel

calcolo

Perché

i contribuisce

di i. Il processore alla

nodo.

di visitare

nodo

il fatto

i è uguale

dei del

fatto

di T, si mette

processore

dei

parallelo

si è già

parallelo

C del

l effetto

riflette

profondità nodo

che

come

euleriano

I in ogni

calcolo

l esecuzione

processore

il ciclo

B e un

un

calcolo

dopo

A di ogni

processore di

che

rappresenta

processare

somma,

del

Si è affermato

che

si esegue

Quindi

associativa mostra

concatenata

0 in ogm

calcolatori

per

che

i tale

i.

procesiore if

c

arei r ij then

if

pai

par Hl

c

ar.nt ij in

iiiv

p ir illelo

it Ill i

r f ,ic i

-

pit

j vr/ p w

wL

ri ti

then tl i

j

f

r i r par vtt i

pareirt suo

albero.

i

6á4

Capitolo

30

Algorirmi

avere

p

puntatori

di

di esecuzione

Il tempo valgono

6

17

o

18

dato

di

pezzo

Dopo

un

k passi,

è 8 ir ,

termine

8

Qs

Q

Qs

la

Se

Qs

possono

pertanto,

Qs

Qs

Qs

Qs

Q

l 8

16

O

Qs

Qs

IO

Qs

foresta

qualùnque

algoritmo

Qualunque

Q

asintoticamente

più

scenario

uno

dopo

ndice la

dimensione al

radi e

della

In particolare.

in

binario

di questo concorrenti

letture

le

è

che

Q lgn

risoluzione

cui

1gn .

O lg

tempo tempo

nella

per

albero

un

sia

impiega

semplice

l algoriumo

è 2 i ,

impiegare aiutano

piit

radice.

della

Se

ERE V.

messicana

concorrenti

un albero,

singolo

della

foresta

Fiio-Roots

problema

le letture

in

massimo

passi.

nella

deve

ogni

contenere

l identith

contenere

profondità

al

è

che

esclusive,

un

radice.

alberi

loro

mostra

l identità

a1goritmo

caso

qu il

questo



30.2-1

L Esercizio

problema.

per Pertanto.

lento.

La

possono

l idemità

Q lgn

profondith

nel

copiato

che

della

per

qualunque

O lg .

d

ERE

sia

contenere

in tutto

con

sono

memorizza

locazioni

albero

il cui

nodi

nodi.

8n

cnn

bilanciatn Qn

n

di

.he

si

Osservando

passo.

l identità

massima

di

17 Q

ogni memoria

richiesti

asintoticansente

supera

ragioni

dei

radici

le letture

di iocazioni

possono

8n

sono

d dell albero

profondità Fi o-Roovs

CREW

Q

algoritmo.,

dell

informazione

contenere

necessar e

saranno

di

ad di

di memoria

locazioni

2

più

dell albero

più

quando

il numero

locazione

una

2 locazioni

al più

passo, al

al

che

ogni

argomentazione

è che

pezzo

modo

raddoppia

al più

informazione si ha

inizialmente

dato

un

in tal

le

determinare

semplice

chiave

che

permette

ad

iterazione.

stesse

le

per

la

2 e 7.

18.

proce sori

è dimezzata

possono una

Con

L osservazione

di memoria

locazione

un altra

o

PRAM

della

passo

19

4

foresta

una

esclusive .

letture

Q lgn .

tempo

richiesto

o

solo

usando

binari

in

dai

possono durante

che

caratteristica.

questa

n nodi

velocemente

Quanto

6

chiaramente

mostra

si vede

essenzialmente

cammino

ogni

di

nodi

alcuni

perché

letti

áá5

paralleli

esempio.

per sono

è O lg4

Fn o-Roovs

la lunghezza

L sv-R vx

per 30.5

30.5 b . e pare t 4

roorf4

L8

figura

concorrenti

sono

7-8 figura

Nella

while,

ciclo

del

iterazione

seconda

nodo.

stesso

allo

linee

nelle

le letture

i. Però

nodo

nel

solo

6

calcolarori

per

aiutano. l2

O

Qs

g

200

Qs

19

08

Qs

9

06

d

Qs

Qs

O

1 80

6

g

Un

problema

Per

dimostrare

13

Qs

O

l lenti/ic

iwre

a

che

reali. e che

tempo

01

stessa

locazione,

input ura30.5

i

,

.

c

che

CRCW

trova

in un

i

i

o

c

ia

usta

dnpo

Ia

I i scCOlld t

prima.

F

l

Si tl 1

i LI

puii I, 1 tlC ll10

illino tre

2 che

Fru -l iiwl .i

i

un

ll .. ritinti

C. I EVv

i

.. .

,

I cc

l

. it .il 1.

Le

.

C

L ..

l gllllll l, pl. I

icnltlirc

tlllii llC

. ..

ÀC iY.

I I pl

Vl l

i

-

pxoee iori

coinvolli

It Il,f, fll

i

j

A

0

-

n

to

I.

in

p lrallcl

e .ii

scfis

for

c

n

do

3 for

i

0

tt

TRUL

fi o

I e j

0

tuia-

problema più

un

può

tempo

essere

in

risolto nella

scrivono

processvri

di

array

richiede

problema

di n elementi

dove

st-iWwx A ll

array

proeess iri.

i, j . o

quando

n

de,,li

ognuno

identificare

questo l

meglio. in cui

in

i alare.

il massimo usa

per

alle

rispetto

prestazioni elemento

il massimo

EREW

CRCW

lo stesso

I j. L algoritmo

ii

è possibile

tutti

scrivono

si A 0.

algnritnto

nelle

vantaggio

trovare

si comporta

CREW

un comune

di

algoritmo

qualunque

i

usando

ma

il probi

algoritmo

nessun

Q lg

che

un

offrono

concorrenti

esamina

si vedrh

Si

L zlgoritmo

Lafi

aiutano

concarrenti

scritture

scritture

esclusive.

scritture numeri

3 1.5

le

cui

10

al

ps

Figura

in

Qs

l.

in

pirillclv

o

ni processore

mediante

assume

che

confronta

una

coppi,

di

l array Ai

di

con

indici

Algoritmi

áá7

paralleli

n-i

il 6

5

ealcolarori

per

9

2

9

mi

rn

Aj ,

Ai

p, jO

Ai

5

F

T

T

F

T

F

6

F

F

T

F

T

F

9

F

F

F

F

F

T

2

T

T

T

F

T

F

9

F

F

F

F

F

T

nrav

9

che

può

può

essere

un

6

30

figura

r

p/

p ppngnti

j

è

di

m

del

che

do

5

di

tt s alori

in

matricé

dove

tRt E

corrispondemo

ariabite

tel n po

T



01

i

fr

TRUE

per

agli

l

CRCW

FAST-MAX.

Il

do

8

ed

F

elementi

sra

di

F csE.

per

A

pii

Per

Iir

10

grandi.

questo

l/g lgB

numero

eseguita

da un solo

il massimo non

array

dell

di in i .

A. Si comincia e ci

sono

si

basa

sul

A

il processore

Si vuole

2-3

linee

dell array

esempio

per

i è responsabile

ya orenell array essere

processore,

lunghezza

con

ne i

vRvE

l assumere

confronto

alla

che

linea

una

è necessario

soltanto

gg

306

figura

0. Si usa

un

se e solo

se A i

ogni

5 per

array

elemento

m 0..n

A

t

Se la risposta per

ma

te in in ij Dnpo

j.

vusE

gi

he

l parte

dell array

determinare

quali

deve

Alcune

lo stesso

valore

6 è stata

eseguita,

non

Nel

coppie

ciclo

essere i j

poiché

consistentemente tutti

e tre

con i cicli

il modello

PRAM

dell algoritmn

sono

alle

linee

4-6 si

il massimo

Si

sa

controlla

che

ora

richiede

di mnstr re

nv

simultaneamenI

un

ii

effetti

eie ue

lli FASI-lHwi

piil

AND

che

in effetti.

nodi

La

dimostrazione

che

Q lpi

qualunque

Il limite

anche

inferiore

con

numero anche

per

otL .

Dii

il massimo

trovare

e

di processori

illimitato per

anche

vale

Cooh.

CREA

CREW

un

si mantiene

ERE .

PRAM

il massimo

calcolare

algoritmo

che

elementi

Q lpi .

algoritmi

per

il

Per

passo.

di

di una

passo

inferiore

per

si mantiene

Q lpt .

tempo

ad ogni al limite

porta

l identità

nd ogni

il numero

si consideri

radice

della

la ricerca conoscere

per

potessero raddoppiava

di nodi

inferiore zio .

usati

inferiore

Intuitivamente. il che

il limite

algoritmo

algoritmo

con

CRCK

di calcolare

il problema

ERE V

algoritmo

un

p

numeri

superiore

teorico

sulla

01

Si

p.

ora

più

essere

può

del

potente

PRAM

cl1e una

usa

PRAlvf

di una

problemi

più

si mostrerà

30.3

tempo

potenza

strettamente

i

paragrafo in

alcuni EREW

algoritmo

CRCW

Nel

risolvere

può

qualunque

il modello

potente

ordinare

CRClV

Inoltre

Pertanto è pii

può

esattamente

per

li

indici

i tali

che

Ai

è

Teorema

CRCW

eseguiti

comune. in parallelo,

Fast-Max

impiega

30.

CRClV

al .oritmo

miglior

CRCW

rispetto

essere

al più

per

,

i ta

ERE . con

p proce sori

fornire

un

PRAM

a una

ùn

PRANZA

una

su

modelIo ERE

risultato

questo

di

rapidamente

eseguito

limite

ERE .

al,.oritmo

l per

EREW

può

p pro,-e snri perp

che

procer.,ori

volte

O lgp

lo atea.,o

risnlve

veloce

più

del

problema.

tempo

i

ll

una

PRAM

CRCW

è c space

uitc

di c c

La

6i

le

entr 1nlbe

in

coit iite

dimostrazione

tc,s,.l.

la

ttlacclline

scritture

concorrenti.

cicriirio

Eicrcili i

ii

tina,ii la

volt .

calcol mdo

per

i 0,

I, ....

n

l.

La

rcalizzazionc

per

uit

l

Il eclissi

algoritmo

Qualunque Q lgir .

una

di

prov

solo

Collccntrarci

hiso ,ria

ogni

iimula

Si

simulazione.

all 1

ll ,li,cces,i

0.2- i.

l Esercizio

1Q Clli ive

dell*AND.

quanti

il numero

concorrenti,

un

ERE V.

CRCW.

calcolo

lo Llt1 CCIYO iCI150.

i processori

booleani.

di

Simulazione

elementi

e la l i n e a 6 asse

scrivere

possono

può

limite

n elementi,

di

il massimo.

illimitata.

Diinostra -iove.

come

di tutti

possa

Un i g gre.

ERE .

vxLsE. rRuE

m ij

può

se

verificare

per

algoritmi

gli

per richieste

tempo

richiede

sul

al massimo

impiegare

r valori

di

quanto A i

fatto.

questo

scriveranno

la linea

del l algoritmo.

è tr u E. si sa che

registrare

tutti

rimanente

separata

delle

di eseguire

CRCW

1.

è il tnassimo

il massimo.

illustra

PRAM

si è ipotizzato

possibilità

a, si i erificò

dimezzarsi,

mostrano.

memoria

l AND

che

argomenti pro

essere

letture

50

algoritmo La

per

dell AND

possibilità

potente una

di controllo

rete

l AND

potente

massimo

osservare

Reischuck

la

del

al più

È importante

Ai

agli

che

calcoln

di potere

pensano

determina

Questa

come

ii elementi

di

In quella

e si mostrò del

di n elementi

il processore

c ove

è analoga

se si consentono

1 semplicemente

linea

un ciclo,

questa

iI massimo

binario.

radice

con La

di una

è semplicemente

ciclo

ha

non

calcola mente

problema

c

di iterare

un

ERE

che

della

vwt.sE

ni

la necessith

finito

5.2 .

l opportunith

il ciclo.

di un albero

il

inax

return

hanno di terminare

concettua caso,

Ras

then

9

elimina

di DeiVIorgan esempio.

riga

qualsiasi

I. in parallelo

if or i

Ol

modello

EREW

mcu.

in i -

0 to

in tempo

decisione

questo 7

Per

algorittno

utili at1do

Aj

then

modi.

di terminare

contengono

if A i

6

leggi

in altri

derivata

i processori

La

nello

alla

AND

tutti

massimo

mostrato

assegnatrr

9

valore

Ricerca

dalle

usata

essere

CRCW

p

ncll t

proccsiori ui mùo

l.

letture

ùelle

si sulaziane

i.

lasciata

CùlllC

30.2-8 .

un

Iraq

PRAiXl ausiliari .

iimul dino

ERE ùi

lunghezza

una p.

scrittitru I.a

limatura

concorrente 3 .7

illustra

dell al orilnlo laide i.

Qu i1t

568

Capitolo

30

memoria CRClV

non

processore

globale

di fatto

in una

P è esclusiva. P

12

P

comune

Altri

P

l Esercizio 26

Sorge

92

a

dunque

0

0

29,43

l

1

8,12 29,43

3

3

29,43

92,26

4

4

29,43

8,12

5

5

92,26

29,43

2

29,43

sor

trovare

4

dicono

sbagliato.

29,4

3

comunicazione

29,43

4

di comunicare

92,26

5

memoria olobale

memnria RC

con

altro

gradi

diversi. cui

simulata

simu

aia

43

29

92

ogni

di

connure

una

in

i a5o,

questo

scritti ra

cui

30.2-1

concorrente

6 pr c essori

i processori

in

tempo

ra

rupp iti

di

su

.veri ono

P,

i

EREW

P,

niemoria.

P,.

e P,

che

I,

...,p

ra

PRAM

EREW.

concorrententettte

Un

a

nella

eseguono

la

scrittnra.

richiede

di

scrivere

I,

corrispondente sono

consente

scrive

esclusive

l array

Quindi il

0,

scritture

Queste

O lgp ,

di

passo

n emc ria

l analisi

invece ogni

poiché

A viene che

....

p

scritture

coppia,

la scrittura

concorrenti

del

vicini

che

modello

ordinato

tutti

i

dati

rispetto da

mettere

la

coppia

dato

scrive

a

eIemento

nella

n ll i

ordinata

processore primo

,

stessa

v,

una de

,

l,

scrive

il

cl ito

s,

I,

iella

...,p

loc izionc

1,controllaseA i I,

I, d ll i

v e lji

men nria

lohalc.

modo.

veda

Si

nel

è fittizio.

In

realtà,

CRCW da

essi

è un

una

rete

I processori

giusto

del

memoria

è

pertanto

il tempo

di

dicono,

non

modello

si può

completamente

di comunicazione dovrebbero

modello

importante

situazione

da

del

e la rete

essere

accordo

leli,

para di più

i vari

situazione

solo

largo

cosi respiro

modelli

del

che

si sta

di

capaci

orientando modelli

questi

sul

reale.

de

calcolo

quale

con

è il grado

mondo

il campo

non

si applicano

ingegneristica

i fenomeni

prevederh

è che

però,

reale. alla

non

parallelo

capire,

mondo

corrisponde

e algoritmi

essere

sulla

memoria,

facili

piò

velocemente.

più

concorrenti

sulla

se CRCW, sono

questi

eseguiti

operazioni

che

modello

un ad

che

rete.

cosa

modelli

notare

vengono

esclusive

modello.

il inodello

emergere

Si supponga

Si

Si

di sapere

Si mostri

che

impiegare

tempo

perché

dia

un

del

paradigmi

è

Quindi parallelo calcolo

realizzati.

che

una

con

questa

Ol.

di alberi

ipotesi,

ERE

realizzazione

richiede

di un CREW

dalla

EREW

F in-Ronls

per

consista

binari

una

indipendentemente algoritmo

qualunque

algoritmo

foresta

con

Si

Q lgn .

impieghi

che

albero

di Ft -Roors dell albero.

profondità tempo

solo

tempo

0 lgn

sii

una

di n nodi.

dia

un

booleaòi

algnritmo in tempo

CRCW

su

n proce sori

che

poss

calcolare

l OR

di

n valori

Ol.

nella

30.2-4

diveria

Si

descriva

un

efficiente

al

oriamo

CRCW

per

moltiplicare

motrici

due

booleane

Il X /l u llld i Il1 prC Cess ll-i.

la coppia

loc azione

del

data

cui

realizzare

EREW

nella

La

con

adatti

più

spieghi

locuzione I,.

su

stesso

01.

la questione

In una

i vari

e possa

foresta

un

allo

o EREW-e

fanno

algoritmi

interconnessi

parte

algoritmica

siano

può

siano

30.2-5

ERE P peri

pn cessorc

I,

sia

modello.

studiare

ni th

q lobale.

coissecutivaniente.

Ogni

0,

P per

processare

locazione

i

CRCW

A ij.

della cosi

Esercizi

30.2-3

locazione

elemento

processori,

preferibile-CRCW

CRCW

essere

fare

Il grado

progredisca

30.2-2

I,,

PRAM

modelli.

n nodi. Sinncla ione

processore

dei

simulati

CRCW

i loro

per

in tempo

devono

i loro

alcun

che

importante

b

In

la

chiaro su

sonn

con

8

6

identiche.

delle

essere

operazioni

algoritmi

1obale

CRCW

CREW

degli

dovrebbe

È abbastanza

parallelo

un

che

e che

realizza

di n valori

I processori

facilmente

a1gori1tno

passo

sia

modelli

l hardeare

che

veloce

più

2

43

29

P

Altri

l

8.12 P

che

il massimo

modello dei

EREW

o

sz

P

modello

dell hardware

A

P

8,12

2

8,12

30.7

al primo

scritture

possono

di quale

I sostenitori

del

esecuzione

A

A

Figura

ogni

concorrenti

la questione CRCW.

controbattono

lento

più

P

cosi

rispetto

delle

O1 .

scritture

per

modello

I critici

P

una

30. -9.

da programmare

P

A è ordinato solo

realizza

processo in tempo

modelli

quale

P

l array

si effettua

29

P

P

Poiché

locazione

Questo

CRCW

43

fa niente. data

l

Altrin cnli

I,

i,.

Si

Vi

il

descriva

i

un

un

al,

oritmo

algoritino

più

ERE

v l, c

per

per

uno

n oltiplicare

dei

n odclli

in

tel11p

CRCW

Ol

pii,

Il

forti.

CILIC l11 ltl ici

n

x

n

670

30

Capitolo

. Algoritmi

che

Si provi

302-6

come

in

ordinare

due

fondere

tempo

il massimo

array

CRCW O lp .

0, vi è un

e

trova

processori

un algoritmo

usando

costante

qualunque

On

mostri

Si

gg.2-7

per

usando

che

algoritmo

ordinati,

ognuno

a priorità.

Si descriva

L algoritmo

di

di tempo

CRCW

elemento

di

di un array

di come

i

numeri,

usare

á71

para1leli

i

profnndità

01 3

al goritmo

è efficiente

ordinamento

ca c larari

Oi I

elementi.

in tempo

questo

per

per

rispetto

al

lavoro

PRAM

su una

mostri

Si

30.2-9

del

Teorema

3Q.1

di p processori

CRCW

descrivendo sia

come

realizzata

una

in tempo

lettura

concorrente su una

O lgp

k

2

5

PRA. ùl

di p processori.

EREW

come

una

combinata

CRCW si usi

30.3

la prova

Si completi

30.2-8

il calcolo

EREW

una

di p nelle

perdita dei

paraIlelo

di Brent

Il Teorema

PRAM con

processori

realizzwe

possa di solo

prestazioni

PRAM

una

O lgp .

Sug

geriinento.

3

prefissi.

e l efficienza

rispetto

al lavoro 4

di Brent

Il Teorema con

una

risultati

PRAM.

Usando

ottenuti

per

I lettori

29.

Capitolo

esattamente

un

I

elementi

di

che

non

hanno

efticientemente

si possono

ordinamento

del

conficlenza

uno

è una

o più

output.

al ZS

i circuiti

combinatoriu

un circuito

adattare

Capitolo

con

II numero

modello

e per

PRA t

i circuiti

combinatori

di

un

di

un

ClfCLlito

dell intèfA

input

dei

molti

del

aritmetici rivedere

potrebbero

nel

I output

è

il nuinero

essere

da

di

ingresso

collegamenti di

01.

bbia

considerati

na, ,erodi

il numero

che limitato

elemento

ngni

collegamenti

è il suo

paragrafo si i

che possono di

c ricano

circuito

combinatorio

è

combinatori

elemento

si assume

5

elemento

Ogni

collegamenti

Si puo

in avere

però

al

tempo

su

combinatorio

è la prafonditè

è

massima

dei

il

numero

cammino

di

la profoirdità suoi

elementi

lungn

più

da

combinatori un

input

dell elemento.

del

circuito

QualuiicJue

ill

collec.Hl enti in

proceisori

Dimostra..ioide. della memof

1re

per

a

Teorets

conibitsatorio in re eo

tempo

Si e,

PliAiVl ivi

30.2

li

elClllclllc1 li

i suoi

elemenri

saramrr

La

quindi

ei ere

input

cl I

simulato

da

un

solo

PRAM

processore

in

tempo

Ol

ne

modo

seguente.

l

e

n

climensione

iimulalo

OUtf1Llt

circuito

i 0111i lli tlOI 10 Lutl li

i ir iealiol tt .

del

Il

elementi.

elemento

profonditi

essere

protonditè

Brel t

pui

sin uk ti.

u

da

con

un

vl uritmo

nt .mero CRE

appropriata del

circuì

in

inemoriu.

è limitatci.

Poiché o

il

ni funzion

numero ui

di essere

c illegamenti c lcolat t

in

ingresso

in tempo

O

di SU

p

cl .

memorizzano

il SLIO V tl rc

di

di

lilTlit 1to O n/p

ogni

cui

che circuitn

posizione 1 eoresna

in

in ingresso.

circuito

elementi

coittbinatori.

I

output

in questo

elenresrti

ronfo. con

i suoi

combinatorio

di

para

di

in cui

di collegamenti

Il numerodi

aciclica

combin tori

si assun erh

illimitato

output

rete

e, in questo

di posti

elemento

dimensione

contiene.

input

Elementi

separati.

di ogni

numero

a un

di

Generalmente

uscita.

La

teorema.

questo reti

e il numero

elemento

ingressn un

simulare

3

ha

combinatorio

dell

si pos a

le

combinatorio

circuito

come

come

29.1.

il paragrafo Un

mostra

coml inat rio

U1

nella ii

circuilo. lai

i isexva Ie llcnto

incin ria un i

lucazil l1L

coillhill lloriii

cc nlhinatori

lolule Ll pu

Che

devota

csicee

sinlubli

iii jXir illclci

richiecl nlo

lo strii

v il fC.

di I .

ngni

Algorinni

calrolatori

per

g7g

pargflefi

672.

llllg ini

pUO può

j

l.

calcoli

i loro

p, gg

la strategia

Du g

i, si simulano

protendi

ora

30.8

Per

Una

EREW

merge-sort

mento

IC .

i

i pgjjgj

1

fgg/p

uitimo

nell

la PRAM

combinatori.

elementi

sono,

sono

da

questi

sulla

PRAM

zione

del

più

un

di

da

un

algoritmo

vi è un

con

p.

p

che

usa

Si vorrebbe

una

che

erandi

questo scoperti

stati

sono

di ordina-

parallelo

p processori,

ma

di avere

algoritmo

per

p processori

un

condizione

nella

lapidea

Usando

al lavoro. una

stabilire

al più

eseguire

rispetta

efficiente

è possibile

Brent,

PRA1VI

algoritmo .

Og rlp

che

logaritmico.

per

dimostra-

ciò

quando

una

è possibile.

30.4

Teorema

Se

cosi

Tuttavia l algoritmo

segnalare

PRANi

algoritmo

in modo

piccola

teorico.

O lgir

mostrare al più

sono

O

in tempo

per

rallentamento

notazione

puramente pratici

30.1

Teorema un

di

imitato

numero

46 .

processori

Teorema

nella

più

nel

un

n numeri

ordinare

per

ion

di

dell ordine

è perciò

totale

di simulazione

Il tempo

ne

eseguito

1 il calcolo

n jp

Ol

dove

I gruppi,

se ve

avanzati,

elementi

in tempo

simulare

può

e gli

ngnuno

p elementi

gruppi

gruppo.

a profondità

combinatori

gli elementi hanno

Si ioniiderino

n Jp

in

i. Raggruppandoli

p

CRCW

EREW

di avere

ora solo

risultato

interesse

è di

di Cole

Si supponga

questo PRAXI

nascoste

costanti

ordinamento

di ordinamento

algoritmi

PR PRAM M con tl

una

hanno

i eonfrontatori EREW

algoritmo

è usato

Si

le di

algoritmo

di elementi

vi è un

simulare

può

Sfortunatamente,

1.

Pertanto

circuito.

n processori.

PRAM fata

p

per

is,. il numero

d, sia

l, 2, ...,

i

strategia

tale

illustra

. per

i

di profondità

quelli

figura

La

di simulazione.

strategia

questa

i nel

prufogdith

a simulare

di procedere alla volta. p elementi

usando tutti

gi simulano

semplice.

è abbastanza

Poiché

confrontatori.

O nlgn di ingresso.

collegamenti

dall altro.

processori

i prima

Ci di profondità

liric

dei

di assegnamento

usando

numeri

di profondità

elementi

degli

sottoinsieme

qualunque in parallelo l uno indipendenti sono

51 simulai

A per A

PRAM

p

che

processori

s, allora

tempo

richiede

p processori

per

risolve

per

lo stesso

$l- 1-.5 -, . 1 passi

Di,nostra ivne. G

algoritmo

dell

A

p

in tempo

L algoritmo

1.2.....t.

numerati

siànu

p

qualsiasi

problema

A

simula

P Brent

di

Teorema

Il

uscita

di

collegamenti

01

abbia

combinatorio

EREW

simulazione

alla

esteso

essere

può

per

richiede

simulazione

circuito

un

quando

30.3

Qualsiasi

circuito di

collegamenti

ài

non

combinatorio

imulv valore

del

necessitano

che

processori

dai

che

fili,

che

processori

con

ERE

poi

esempio.

ch

r

D

Questa d

limitato ogni

passo.

COlleganenti

di uscita,

collegamenti Pertanto, di

per

poiché

circuiti

ci e dell i

c è bisogno

uscita

non

iunzi inu

v copia

puti

ERE

simulazione

per

problema

faccia

ef e ticiente

rispetto

richieclcre con

slenienti

ha no pcitenia

letture

c elle

più

di un

rispetto

CRCW

se gli

combinatori

elementi

sono

Il

concorrenti.

veda

Si

semplici.

sufficientemente

caso

lavoro

w.

al

lavoro

per

al

un

limite

dimostrare

poter

un

ri.petto

è

Allora.

che

nelle

note

30.3 al Capitolo

fornisce 28,

p la rete

veloce di

algr ri mo rdinarnen v

di AKS

nrdinain nto di

profondith

Conte

EREW O1

n

puii

lavoro

d se

usi

è g ilp p

pt A

l algoritnsò

problema.

stretto

inferiore

Q w/r

p

un

per

t sul

un

sviIuppare

necessario

solamente

il problema

1 l ivoro. t

r è

se

pniché

R pt

Cù w

un

lin ite

inferinre

sul

di

processori

per

ch è

tempo

di

algoritmo ottenere

Teorema

di

tempo

per

qualunque

ilgoritmo

un Si

un

dimostri

rinculi to

an ilo

-n

al

l Eierci io

lllllllCIO

. pi g ito rdin ilio.

ii

lOt

Jle

ali

input

full

porte

lei

è

non

.

30.è-l. Il corollario

algoritmo

Esercizi

di

limit ito

non

30.3-I

ne

dall

conseguenzz.

A.

l algoritnso

eftiiienti

Di

ed

costante

tempo

numero

un

di

supponga

eseguito

lavoro.

n in

numero

un

con

elementi

algoritini

sviluppano

al

rispetto

lo è anche

al lavoro,

si

parallelo, di

p.

con

l uno

interferire

senza

l altro.

strategia

p

I

lo richiedono.

che

input

01

leggerlo

. poiché

è

Esso

valore.

il suo

si

Per

30. 2

elemento

un

da

calcolato

rispetto

Quando

p

Teorema

de

il Teoreisia

quale

richiedonn

sugli

l elemento pc sono

per

la

l output

ERE ,

la simulazione

direttamente

processore

dei

simulazione

ne1la

Per

è letto

dal

copiato

invece

è

concorrenti.

letture

richiede

di

li nitato

numero

un

PRAM

dimostrazione

z quelladella

simile

simulazione

una

differenza

L unica

Brent.

può

con una

su

simulato

essere

O pt/p

A è pr e il l voro

efficiente

è dunque

simulazione

efficiente

d.

O n/p

Si esegue

Dimostra ione.

i

d e dimensione

prnfondith

uscita

e di

ingressq

in tempo

processori

di

combinatorio

r

I p/p,,

dall algoritmo

eseguito

Il lavoro la Corollario

O

tempo

combinatorio.

elemento

ogni

circuito.3

Brent

pei

una

simul i/ione

CRClV

un

Algorinni

un calcolo

corne

gggggi

g

realizzato

essere

possa

gg ggoria g gq

Perché

processori.

dei

parallelo

su n valori

prefissi

in tempo

O lgn

risultato

non

questo

in un array

memorizzati

f,l

2p

3p

f1

l4á1

I I I I 4

1

f

l

di n valori

lista

I

8,8

. estratto

a una

immediatamente

si estende

a

675

paralleli

usando

EREW

PRAM

su una

calcolatori

per

0, 1

P,

33

,J

I

fá,63

p,S

I

1

t

in

b di n elementi

vettore

un

I I

al lavoro.

rispetto

efficiente

Suggerime to

l I

combinatorio

circuito

un

si costruisca

A n x n per

tnatrice ERE

un algoòtmo

coli

O lgn

tempo

una

moltiplicare

come

mostri

gi

t

il problema.

per

I

di

algoritmo

seriale

algoritmo

EREW

n

processori

Qn

tempo

al

rispetto

lavoro

ricorsiva

1

di

I

RANDA

tIZED-LIST-PREFIX

.

normale I

Si

matrici.

moltiplicare

per

I I

al

rispetto

efficiente

essere

dovrebbe

L algoritmo

usando

che

CRCW

algoritmo

un

Si dia

30.3-l

chiamata

I

n x n.

matrici

due

moltiplichi

può

un

progettare

I

1

1

I

modelli

Alcuni

30.3-5

tempo

e impiega tempo

Calcolo

attivi

paragrafo

può

eseguire

una

su

8n

in tempo

Teorema

30.4,

al

per

lavoro

numero

con

usa

1,5

g

t

,8 I

infierito

per

t

ii-

E

in

p processnri

41

1

E

v

à

dei qn

o

con

alta

suo

L ictea

di

R,xwoowtzzo-Ltd-PREFIX

C ll

Clllllinare

alcuni

della

oggetti

lista.

un

eseguire

O lgn

più

di processori.

1.

avanti

Al

e la fi ura

ricorsivo

processo

dal

rispetto

efficienti

finale,

che

Inoltre.

probabilità.

valrire

prefissi

prefissi

tempo

e impiega

algoritmi

immediatamente

dei

il calcolo

per ssori

proc

dei

al lavoro.

rispetto

è efficiente

usa t

L algoritinn un calcolo

eseguire

che

L sv-R x.

O lpi ,

n oggetti.

di

al lavoro

rispetto

l 31

al lavoro

di tempo

1gn

8n

2

l

i

lavoro

è l assegnamento

ardua

EREW

randomizzato

O l gu

p

un

esegue

1,1

Figurz

non

List-Rw w

si ottengono

algoritmo

da questo qualunque

attivi

processori

EREW

più

facilmente

si può

è efficiente

Pertanto

probabilità.

EREW

oritmo

L al

CRC

che

rispetto

concatenata

un al goritmo

al lavoro.

rispetto

dai

c

procedendo.

lista

seriale.

passo.

I

il

il lavoro

Si definisca

eseguiti

PRAM

parte

al oritmo una

Poiché

lgn .

macchina

presenta

paragrafo

Questo è efficiente

un

prefissi 8n

lavoro

sta

efficiente

su

una la

Suggeriménto il calcolo

prefissi

dei

calcolo

su

eseguito

si è esaminato

30.1.2, un

ed esegue

processori

alta

dei

parallelo

Nel

con

t lgp . n eiitre

passi

algoritmo

qualunque

essere

t può

O w/p

processori

30.4

che

Si mostri

algoritmo.

un

ad ogni

vari di

totale

che

cosi

inattivi,

diventino

i processori

lavorando

il numero

come

modello

in questo

stanno

che

di processori

numero

che

permettono

paralleli

piii

che

un

ogni

oggetto

di

30.10 della

livello

quelli

si sviluppa

come

mostra

soddisfa

ricorsioite

a uht

appartenenti

due

dato

la ricorsione.

Si mostrerh

poco

proprietà c selezionato

processore

per

l elimina-

zione.

Calcolo

L

zoritmo

al

stadi

conc .ten

O

lista l.

i

o

pfOCCSNi l

sia

hidirezioisalc

lei

pural

pretissi

11

QSSCgl1 1ll

lu

dei

o

l

ll

perché

ITlOClO

la

l3ue

oggetti

adiacenti

non

sono

selczion iri

I n

lfbitt, ll IO

concatcn zione

110tl

x

llCCCSYi

lfl llllC11lC

doppia

di

un

I i st l

una

oritmo

ùell al

4

COlltl LICl

in ola

iu

opera

l esecuzione

Durante

processori.

Fi

r-Pn

R i nowizvo-Lis

ranùnmizzato

eliminuzione.

per

prefissi

8

u andup

etti

2.

dei

rieorsivo

parallelo

lista

plllll

richiede

l

che

ten1pu

la

I climin tt

1. l

I . cbll i

culvol lidia.

c

memori z

t l.

l

l

-

l.

I

S

I

I,

I

l j.

I I /-e

s i Ill

O getto

è poi

Atgorirmi

Le

due

I.l

pg

P3

551

A J

848

insieme

pmprietà

tempo

Ol

in un

assicurano

modello

che

ogni

della

passo

calcolatori

per

ricorsione

677

paralleli

essere

possa

realizzato

in

ERE .

gg

estratto

Selezione p,2

t4W

di

Come

sono

Devono

Ml

.l.

l

livello

2

livello

3 livello

degli

numero metodo

selezionati

attraverso

l.

Il processore

2.

precedentemente -tira Poi una

3.

Se

sceglie

un

altro

estratto

vuota

Si

inserito

deve

inserito

1,5

1,6

del

I livelli

oggetti

di

oggetti

gli

ricorsioiie neri

eliminati,,ergono

di sono

1,5

1.6

WvnnmzEo-Lise-PRgvtx,

eliminari.

La

1,8

nrostrati si

proceckrra

per solo

lista

sulla

prefissi ti,

come

usandn l, l,

che

e cosi 1

A causa

confusione

è che

ha

il valore

originaria.

per della

Non

f -esimo.

il /,--esimo

il valore

/ -1 /

lista

l oggetto

Dopo

chiave

contratta

nel

/-

prnprieth

tra i processori

terminazione

finali

ripete

n

per la

finché

l -eiimo

o getto.

oggetto / 1. oeni

9 r ggerti

lista

r ri in ri.

,.uota,

Poichc .

quindi

g1i

quando

Dopo 1llèOra 1

infieriscono

O

necessita gli

per

o etti

ricorsiva.

ogni

il calcolo

parallelo

og

etto dei

elimina-

precedentemente

ogni

la

goritmo

gli

oggetti

pret,sso

1a ricorsione

k,

dei

Gli

seguenti

appartengono

gli

e cRoce

il valore

entuule

assurdo

che

con

che

oggetti

sono

non

sia

stato

solo

ha dato

risultato

tempo alla

probabilità.

01

le

nggetti stati

due

come

che

consecutivi

risultato

di nerr i

ves

rc

ha d tn

selezionme

proprietà

stato

da

preso

oggetti

gli

anche

coige

è scelto

siano e per

l oggetto

i non

risultato

prima.

oggetto

la proprietà

processori

Ma

descritte un

solo

i e irext i

loro

dai

presi

sia

l zsvw. per

poiché

vedere

Per

nevt ij

da

memoria.

rispetta

selezione.

sono

come

che

può

da

un

2 è rispettata,

selezionati. entrambi

il che

si si

Questo i processor

è selezionato

vdsv ,

Si

il

se la moneta

è una

contraddizio-

t,naie

il / I. l

ha

e scie

può

I -esimo solo

lista

che

l/2.

i lanci

Poiché

i che non

che

Poiché

elimini

seleziona.

i suoi

questo

Perché

La

sono

laprob,bilità

ogni tutti

passo.

o lo

imponete

semplice vi .

moneta

selezioni

analisi

ma

01.

almeno

8 lpr

o

mostra

che

getti.

114 di 1/2 e la

probabilità

mostri

si possono elimina

di tutti

probabilith

con

Ia,t,oneta

analizzare

per

l eliminazione

mostratcst

il processore

estiice

Per

ha

indipendenti,

cui

i Bjl

tempo richiede

passi

il processore

eventi con

prncessnre o getti

I tX è 8 l

qumti

ngni

ne.vt i

ùue

impiega

di determinare Ad

selezioni

delle

RA. IDOill7Et LisT-PRt

no c cl valore

bisogno

originaria.

ottenendu 114.

di R,x oo tizeo-Ltd-Paeptx

solo

Sfortunat u iente

n gettocontiei e bi n

nella

prob bilitè

proce i c

calcol,tu

ricorsivo

passo abbianso

croce

è almeno

moltipIicare I oggetto

il tempo

le loro

che

ns dio

seleziona un

perché

n. non

esenlpio,

il tempo

e la maggiorpartc

nledio dei

di

prhcessori

esecuzione elimin

di ino

I .

ieiezionato

o estra

h t un pn censore

ono

il

passi

e che

la stessa

a meno

l è mantenuta,

due

entrambi

dato

procedura

proprietà

unirei

l oggetto

è almeno

i.alore

ha

che

sr

concorrenti

questa la

responsabile

probabilità.

valori.

il sito

elemento

cui

reinserire

i oro

che j I. l

dallachiamata di

che

e aggiornare i inserito,

1.

c urretto

rim ine

og,.ettn

il l -esimo cnlcol re

dopo a

che

moneta

processore

richiesto

Analisi

reinseriti.

L osservazione

cnndizioni.

queste

processore,

selezionato,

ahbia

richiede accessi

che

se

della

eliminare

nella

il tempo si vorrebbe

ne.

inserito

livello,

i valori i come

moneta

randomizzato richiede

per

verifica lancio

30.10

soddisfa

quelli

che

Inoltre

contemporaneamente.

di ogni

i tra

l oggetto

la cui

mostrare

supponga

ogni

oggetto

si vuole

costante .

selezionato

parte

scegliendo

marca

facilmente

processore

Jl

Figura

moneta,

e non

vedere

tn

da

e in più

preferibilmente

randomizzata

RA oowtzeo-L sv-PReF,x.

procedura

prima

selezionato.

metodo

Questo

iD

e fosse

l esecuzione. un

dalla

descritte

possibile

prende

eliminare

breve

la selezione

per

processore

eliminare

IPJ

da

proprietà

sia

oggetti

Es A.

inserito

ll,l

oggetti

di

Il seguente

oggetti

le due

lista

5

gasso

,z

eliminare

gli

rispettate

selezione

maggior esrrano

selezionati

essere

dalla

livello alto

da

f6,4l estrado

EE

oggetti

oggetti

si

distinto

veda

pel

l Esercizio

cs

ispiri il

perclli

Llll pei CC iSOie

ùi eiccuziiine 3 .4-

I .

cl ll l

elimini ill lllllO

tutti

i iuoi

pOll t b

o -i etti d .itLIV

potrehhe lll l

glOI C.

rancore

essere

8l

n,

ma

il ten po

678

Algoritmi

30

Capitolo

Il tempo

l

medio

di esecuzione

se 1a semplice

anche

tutti

1/a,

Esercizi

oggetti

gli

tempo

sul

L analisi

segue

oggetti

gli

veda

il Capitolo

6.

è un

fallimento

altrimenti.

siano

ottenuti

1/4

Per

semplificare con

ognuno

determineremo. corollario

per

probabilità

c. Gli

costante

qualche

argomento

che visto

è un successo

che

almeno

114.

tale

ipotesi.

della

e si

è interessati

lista.

Si

che

che

analisi

Esercizi

con

6.4-8

si assume

che

organizzano

c Ip che

si

sono

della di

prove,

per

meno

n/lp

meno di 1gn

di

è

usata

ad

tende un

la

disuguaglianza più

che

di quella

i suoi

tutti

lavoro.

il suo

tutto

A

richiede

non

che

Boole.

di

delle costanti

I fattori

eliminare

finisca

proeessore

grande

di

finisca

processore

altro

veloce.

essere

ritlesso

un

che

essere

per

grande

po

dell analisi

un

costante

una

fornisce

che

che

si

dipendenze, ma

che

l evento

dall evento

un

sembrare

può

prodotto

si v critica

generalmente

Esercizi unh

per

c

successi.

nelle

pratica,

l algoritmo

perché

dipende

queste

c 1

con

Si mostri se due

processori.

1gii

oggetti

è più

che

costante

qualche

lista

un

costante In

grandi

c Ign

di esecuzione

tempo

questa

á79

paralleli

in pratica.

probabilità

e 6.4-9

esattamente

verifichino

elimini

processore

vi siano

effetti.

l indipendenza

la probabilità

si verifichino

gli

di si

l eliminazione,

per

è piccola

processare di Bernoulli

dato

di prove

è selezionato

i successi

vedano

Si

di un

sequenza

a mostrare

all evento un

che

prestazioni

dell algoritmo.

30.4-1

l analisi,

oggetti

una

se l oggetto

si è interessati supporre

l esperimento

come

nel

In

nell

il limite

dimostrare

per

20

c

costante

praticabile.

causa

si può

la probabilità

6.3,

con

almeno

oggetti

essere

può

successi,

di

che

di ricorsione, questo

sull osservazione

ulteriormente

1gn

in c 1gii livelli

Poiché

formale

giustificazione

Si proverà

La

8 lg .

è proprio

medio.

sceglie

piuttosto

lo mostra.

di generalizzare

L esperimento

pochi

esattamente

eliminati

è basata che

RAvooxnzeo-Ltd-PREFtx

procedura non

richiedono

di esecuzione

che

eliminare

della effettuata

sono

e 30.4-5

304-4

8 lpi

analisi

ca colatori

per

delle

che

cosa

della

lista

figure

adiacenti

oggetti

sono

in R oou,zEc,-L,si-PREvix

funzionare

non

pub

selezionati

l e1iminazione.

per

che Dal

una

Si suggerisca

30.4-2

una

piove

è al più

medio

in tempo

far

per nel

On con

che

dimostrare

per

modifica

semplice

di n oggetti

lista

caso

Si usi

di valore

la definizione

medio

tempo

impieea

modifica algoritma

questa

su

RwiooitizFo-Lisv-PREvix

eseguire

peggiore.

O lgn .

i-

jx

I ,

Si

30.4-3

maestri

O r/p livelli

ogni

caso

nel

processore

che

in modo

R.xiDOSIIZED-L ST-PRCFIX

realizzare

come per

dal

Si mostri

30.4-4

che

per

con

tempo

di esecuzione.

di

l

almeno

probabilità

è

RANDOS1IZED-LIST-PREFIX

come

sulla

/ influisca

costante

del

di esecuzione

medio

c.he il tempo

si mostri

30.4-4,

tempo

impiega

1. Rssnowlzzo-Lisa-PRErix Si mostri

1/d.

Esercizio

dell

il risultato

l

costante

qualsiasi

O lp

Usando

30.4-5

-.

dei

numero

ricorsione.

di

3

ecl.

al più

spazio

usi

indipendentemente

peggiore,

O lgn .

1/ahi

c

per tutti

20.

La

oggetti

gli

è al più

appartenenti

segue a un

dalla dato

disuguaglianza non

processore

Pertanto,

6.9 . siano

stati

30.5

la prob bilitè

eliminati

dopo

ore

questa

dare

un

non

iano

limite stati è al più

probabilitè

superiori .alla eliminati la somma

che

probabilità dopo iielle

c Ipt probabi

tutti

gli

Dalla

passi. itè

che

oggetti

disuguaglianza ogni

processore

c Ip

patii

appartenenti

a

di

Boole

noia

abbia

una

consideri

I/ t

di

non

eliininare tutti

i suoi

tutti oggetti

i suoi

oggetti.

Ia probabili

che

qualche

procesiore

nov

abbi i

modo

la

situazione

in è

I

un

due

esclusivo.

cui

che

soluzioni

sono

efticienti

t

otten di

risolsi -iotre

di si

veri

tc

Il

l accesio.

dee

quancio

persone

di

problema

Tutti

lieve

ce

oggetto ottenere

di

dei

uno e

1 imharazzo

connscono cercano

debba

chi

detern in ire

conflitti.

a un

l accesso

ottenere

di

i processori

possono

due

dei

richiedano

proce sori

Come

nessuna

esempio

nsomentanea

cnnfusione

cui

è . 1 piir e

n

in

situazione

mutuamente

in

processnri

eliminato

conflitti

dei

detené ministica

Risoluzione

che

Si

i processori

6.22 ,

1inea

l/n .

Si desidera tutti

seconda

la

contcmpora-

entrare

utili.

estremamente

l

1gn

l l3 Elle

LisI-Parrii

richiede

teiispo

O Ipso

con

alt i

OllClllltt

ll I

proLi ibiliù. 30.5-

I

.

tl

I A

tllCI18

l

ll.l

lNl

.

Si.

l hli .iinlii

i llen

lli llli

li iM

1

11pl ùE

illlE

Algoritmi

Si è vista paeytv,

nel

Paragrafo

30.41

efficacia

di una

strategia

adiacenti

della

lista

devono

essere

oggetti

dovrebbe scelti,

il numero

selezionare tutti

pero,

adiacenti

lista

un

interessanti

modo

mentre

randomizzata.

semplice

ed con

garantisce,

allo efficace

alta

l eliminazione

per In mezzo

a una

modo.

Come

stesso

risolvere

per

ma

lista

molti

si

di oggetti

si è visto,

il conflitto

che

probabilità,

Per

In RwxoowtzED-Ltsv-

selezionati

di oggetti.

possibile

sembrano

fornisce

della

maggiore

oggetti

gli

randomizzazione

non

tra

la

gli

oggetti

nai

nl2l

uno

In questo

si studia

paragrafo,

dell algoritmo

un

è di impiegare

il lancio

casuale

conflitto

permettendo

di una

che

che

processo

moneta.

nel

caso

indirizzi

dei

due

il processare

primo

risolvere

per o gli

processori

esempio,

per

tempo

deterministico

dei

Per

acceda

richiede

metodo

indici

gli

i conflitti.

La

di memoria

con

di indice

più

che

risolvere

deve

essere

Si

userà

la stessa

di

in una

oggetti

nella

eseguito

con per

piccola

costante

lista

2 ,

veda

concatenate

in tempo

O lg

Calcolo

una

di

L algoritmo

una

frazione

costante

furbo,

da

i fini

in un

adiacenti.

un

algoritmo

per

una

frazione

è di scegliere

EREW

i1 valore

pratici

Ig*n

come

e L idea

una

La

lista

degli

La

parti.

seconda in

converte

la

01.

L insieme

tempo

n oggetti

calcola

prima

della

lista

6-colorazione

una

6-colorazione

delle

in un

indipendente

e nessuna

coppia

171

insieme

che,

lista

seleziodi una

massimale consecutivi.

ogni

tripla

di oggetti

data

una

0 1 -colorazione

essere

pub

metodo

Questo

indipendente

essere

può

identificare

per

della

in tempo

determinato

lista

almeno lista,

un

01.

lista

è di calcolare La

lista.

I,

...,

lista,

una

associato

sia

si

Non

dettagli.

alcuni

concatenata

una

coIorazione

definisce 0.

di

6-colorazione

se ne descriveranno

vuole

nd

un

...,

C,r

lo

fornire

Si assuma

inizial-

che

diverso

processore

.

di Stx-COLOR

/

una nr

nuova

1. La

sequenza C,

colorazione

una

è

C

finale

colorazione

C, r ,

C x,

iniziale

sulle

basata

j

è una

C,

di colori

per

Ogni

iterazione

n-colorazione.

ogni

colorazioni

precedenti e si

6-colonzione

che

proverà

Il .

O g

stesso

nella

l

i nella

di oggetti

adiacenti

una ma

x

n

La colorazione

massimale

di elementi

oggetto 1, ...,

dell algoritmo per

calcola

dell algoritmo,

0,

oggetto

C, due

per

però

di una

come

6-colorazione

Stx-CocoR

ogni

Px

Poiché

visto

essere

mente

essere

può

deterministico. può

i

costante

algoritmo

Questo

algoritmo

risolvere

2.2 .

n.

della

n

tutti

per

to più

L obiettivo quelli

O lg

prevede

massimale

mol

prendere

il paragrafo

deterministico

indipendente conterrà

di

in tempo n

si

modello

di n aggetti.

Si mostrerà

massimale

2-colorazione.

insieme

poiché

quindi prefissi.

e dei

parallelo

qualunque

oggetti,

massimale

massimo

calcolo menzionata

che

n/3

nell insieme.

costante.

in un

evitando

qualunque

L algoritmo

sarà

ma

concatenata

n ptocessori

Ig n 5

liste

idea,

lista

un

nell appena però

almeno

indipendente

pseudocodiee conflitti

dispari

Si osservi,

contiene

indipendente

usando

il

chiaramente

piccolo-

rango

oggeni.

insieme

O lgn

681

paralleli

chiave

piuttosto

si puo

processori,

un

in tempo

insieme

selezionati.

è un

di n oggetti,

concatenata

oggetti vengano

oggetti

liste

determinato

calcolatori

per

iniziale

della

calore

lista

è la banale

ha

e cosi

lo stesso

n-colorazione

è legale.

la colorazione

in cui

nessuna

calore.

Si noti

Px.

C x

coppia che

dei

ognuno

nessuna

Poiché

della

adiacenti

di oggetti

colori

iniziali

coni

lp

1 bit,

il che

significa

che

essere

può

in una

inemorizzato

ha

comune

lo

essere

può

nell insieme. descritto

coppia lista

della

parola

macchina. Colorazioni

e insiemi

indipendenti

massimali

Le successive m-

Una

colorazione

tutte

le coppie

u, v c

V, ss

con

lo

colore.

In

di un

stesso

nell insieme

oggetti una

di rango tale

arco

MIS

dall inglese

B CJUQICI1C

indipendente indipendente

essere

in E sia

i

V

lli

0 e quelIi

discussicnedellaNP-vOlllplCtCZZil.

E

funzionare cioè

lista

consecutivi

di rango un

solo

una

in tempo

C

non

vi

che

con

pari

abbiano

dei

O lg i

senza

usare

all inizio

colore

ono

gli

grafo

su al più

un

G vertice

independent Vu Sl

v flCCI i

problema problema

E

V,

set non

è un

.

mostrerà

una

i

0

molte

per che

COllftl ilOtlC

complesso.

Il ProLilen i

ogni ttQ

tl

6-

il

ptOhldlllQ

dl

tale

considera

termina

come

oggetto,

iterazione

ogni

si supponga

precisi. a ...

a

che

e b

lata

ogni

per

iterazione,

figura bit.

richieda

b

l

30.

0,

l, ...,

un numero l 1. Si supponga

Si determina

il nuovo

di nexr x .

x si abbia

oggetto

per

C . usando

della

parte

il colore

-,,

f,

ima

colorazione

oggetti

nella

b ,.

una

la prima

C degli

avanti

guardando

con

prostra

colore

La kes

segue.

a e C . next x

C, r

colori

sono

di

r bit.

Poiché

b, C,. x

r

1. si può

i cnn

scrivere

di i concatenato

con

solo

il bit

a,.

I 1gr1 Cinè,

bit

i

i

,

, Ij

$,

...

Ig .

di

ciascun

v con

Si ricolora

i assegna

che.

in V è CJlCOlQI c

per

l.i-l

di

di trovare

insieim

calcolare

cm insieisse

indipendenti

a,

i,

che

massimale. V tale

verticenon

prablem

Il problema

più a ,,

il valore

o tutti

adiacei te Ull

tl1StétlM

un

insieme

f i, l-

Apri-i Il

fondo

della

è

dunque

al

Si

con

36-I

V di vertici

indipendente

indipendente

è inòipettdente

facile

V c

insieme

è un insieme

come

Ce

la randomizzazione.

sottoinsieme

in V . Un

ottenute

determinare

C,

di un

a

ogni

per

oggetto.v

essere

dove

una

di una

di un

Per

colore.

colcrare

ma

pretissi, Si

che

con

di bit

per

adiacenti

lo stesso

1. Si può

0 1 -colorazione.

inferiore

che

i colori

si possono

il colore

parallelo

N tale vertici

tutti

poiché

calcolo

V

sono

concatenata,

2-colorazione,

usando

V . NO l

massi nr -

è una e

una

vertici una

O lpi

in -.idente m iximal

massimale

u,

determinare

V , l insieme

VCftlCC

ha

determinata

v

di

ci sono

il colore

indipendente

ogni

e non

E

V,

aJlora

6-colorazione

in tempo

può

iitsie ne

una

con

G

Cs,

concatenata

è sufficiente

colorazione

i vertici

dispari

colorazione

applicazioni

Un

lista

qualunque

orientato

Cu

l, 2, 3, 4, 5

0,

In effetti

non

grafo

sono colorazione

colorazioni

I, comincia

ch

ve

i- -

listp ontiene più

mostrare

il

il

1

che

nuovo

se

ngni

iterazione

indipr.ndii1t.

nuisil1li.

p,ii,

c ere,,eitit,

in

col rc

0,

a ,

11 numero

di

bit

colore

nuovo

l.

ni lo

iimi1e.

di

S lt-Colon

comincia on

una

colorazione.

la

nuova

c

á82

30

Capitolo

Algòritmi

dopo

dopo

dopo

dopo

l elabarazionc

l elaborazione

l elaborazione

l elaborazione

2 colorazione

dopo

iniziale

l

iterazione

dopo iterazioni

del

colore

OX

del

colore

001

di

l colore

OIO

del

colore

4pp

fg

l elaborazione

oii

dél

colon

100

un

101

l

101

áelrolore

tot

toi

termina

S x-CoioR

un

ed eseguire

À

offerta

da

Cocoe

è un

Infine,

QlN

i di

applicazioni min

1g n

R

della l

i bit

valga

induttiva

per

della

ancora

una

cosi

che

n

O lg

01.

La

proc

io1

.

iterazioni

per

il numero

1g n come

S -

l-

pOO 1 di volte con

denotando

a 1 oppure,

ridurlo

con unémente

accede

tempo

processore

01

in tempo

operazinne

che

si deve

il numero

I. -

lg

funzione

. appena

colonzione

nella

di bit

riduce

iterazione

Ig ad n per

0

1g it

solo

Si è definito

6-colorazione.

successive i

l o 2. Ogni

di 3 bit.

i appropriato

01

richiede il suo

oggetto.i richieste

sono

perché

a una

co i

numeri

per

l indice in tempo

iterazione

ogni

per

logaritmica

r, il numero

Sia

01111

fino

la funzione

applicare 01110

vedere

iniziale

a sinistra

ogni

reali

0.

posizioni

l. lasciando

valori

8 possibili

determinare

possa

di traslazione

EREW.

delle

ggg

tinché

ridono

6-colorazione.

processore

macchine

algoritmo

si può

razione

ogni

6 degli

solo

una

con

operazione

molte

usati

bit

nei

jpqg

g fp. gqQfg

strettamente

0 oppure

con

concatenato

o 10

01

diversi

essere

possono

Sono

proprio

che

Supponendo

rom

è 00 .

di è bit.

un numero

/IO

8

y /j

Qj

viene

di bit

il numero

che

significa

colori

3. due

allora.

colore.

volta

w,

r

4. Quando

nuovo

l, il che

di l 1grl

colore

á83

paralleli

l elaborazinne

r Oi

ll

gg ggfggg

richiedg

da Stx-CaLoR

usato

olorazione

calcolatori

per

a r,,

fino

co or zinne

flgr,

l ipotesi

he

1. Supponenil

I

Si proverà

iterazioiie.

i-esima

della

prima

si ottiene

r,,

- ft -,,

e

zoo

i

5

l

n3/

fl , lg

i /

l

fle 21

o

ooo

ly

3

Il

lG lg

lg lg

n

l 1

l ii z

oi

101

101

Y

della

definizione

ore

rm

una

di

Calcolo

01010 Eh

ooo

moon

liIIS

da

al più

sufficiente oR è perciò

di Sn-Cui

un

iter..vi, ii

altra

P P

n.

O lg

6-c.olor izione

una

ooo

una

i

lista.

tCI11pO

sr /i i

totale

Il tempo

un

iarè

Ig . Pertantv.

funzione

6-colorazione.

O

trovare

pi iiihile l

un

iisiii.me

le11a

m.iisimale

indipendente

.

c iminclli.

1 incluii,n,c

J

nel

iX1IS.

Inizi,lmcntc.

,.I .,

.,

j

t., vi .

per

tulti

eli

ug,.ctli,

lift

i llv

J l

ll

L algoritmo

è iterato

responsabile

di un

condizioni,

allora

oggetti

gli

a

immediatamente

deve

il suo

si Ma

allorà

C next x

che

stati

vale

messo

due c

le

a False

oggetti

non

cosi

messo

e nest x

si sta

nel

ogni

inserito

nel

x sia nel

in cui

dovuto

che

l insieme

è massimale,

x, y e

sia

inserito

nell insieme

è quello

inserito

nell insieme.

Poiché,

doveva

essere

vivo

stato

messo

nell insieme.

ancora

essere

si supponga

messo

stato

ipotesi,

per nel

nel

Il solo

di essere

momento

che

essere

modo

nessuno

in cui

y avrebbe

30-1 di

di colore

poiché

iterazione ogni

di

oggetti

gli

di colore

evitare

elementi

di essere era

stato

l oggetto

venivano

Cy

accede

L sv-tvIIS

a se

con

concatenata

lista

richiede

tempo

stesso,

al

Six-COLDR,

in tempo

01

suo

su

predecessore

si possono

O lg

una

risolvere

PRAM.

L algoritmo

e al

successore

suo

sono sono

elaborati

sul

y

nuovo

segmento

del

che

e associativo.

presi

dal

un

conflitto

i due

è risolto

nella

deterministicamente

dato

processori

in tempo

all inizio

medio

tabella

S x-Cot

procedura

da

oz,

oggetto

una

con

b,

dei

attuale

figura

una

dentro illustra

30.12

sequenza

ogni

un

...,

i cui

b

di output

y,. un

di x e y in segmenti

se b,

continua

b,,

b,,

i cui

x

x x ...,

b

partizionamento

indipendente

prefissi La

segmeirto

in termini

è definito

di input

sequenza

1. Produce un

l e quello

di y.

una

sequenza

di b determinano

se b,

un calcolo

1

0,

dei pressi

segmentato riceve

Esso S ed

dominio

0. Il calcolo segmento

calcola

segmentato

di z per

segmentato

produrre

dei

prefissi

ordinaria.

Si definisca

l operatore

lista. J

8 a,,-,

n,-

i conflitti

8

coppie

sulle

Si

ordinate

-.

a,

.- e

a,

x S come

l

0,

segue

di questo

paragrafo.

c.

sea 0,

,,

che

mostri

8

a,

n.

tra

il conflitto

una

prefissi

un calcolo

prefissi,

S. I bit

comincia

la somma

dei

dominio

segmento

8

come

Si descriva

un

1

sea

è associativo. effettuare

in tempo

elementi l esempio

nella

in

di n oggetti

memorizzare

è EREW

b.

Per

binario i da

esegue

prefissi

dei

pre

il corrispondente usando

Esercizi

si mostri

di un

concatenata

possa

Suggerimento

finale

parallelo

calcolo

dominio

y...

dei y

8

Si provi

30.5-1

lista

processore

MIS.

Lisv-MIS

oggetto

Combinando in una

operatore

consecutio i

eliminato un oggetto adiacente quotando né x né sono stati messi nell insieme,

in cui

una

di

ogni

O lg r .

il colore

dipende

segmentato

un normale

Come

a. Ogni

Calcolo

di un

nell insieme.

oggetti

potuto

di dimensione

valori

di

prima

inserito

di tre

che

è

che

elementi

vedere

6-colorazione

assuma

o

perdita

oggetti

gli

una

Si

perché

nell insieme.

nell insieme

momento

avrebbe

trovare n .

Problemi

Senza

inserito

come O lg lg

quanti

è stato

vedere

inseriti

colorazione.

mostri

tempo

pre-calcolata

MIS. Per

siano

è una

Si

seguono

hlIS

oggetto

30.5-6

le Tutti

e

essere

possono

sore

proces entrambe

costruendo.

e massimale.

che

a FALSE non

i, ogni

valgono

precedono

e iterazioni,

x e next x C

perché

è stato

x

lo

oppure

adiacenti

C next x ,

considerati,

che

che

è indipendente

C nest x

Cx

essi

tutte

Se

al ivIIS quelli

FALSE

Dopo

risultante

che

álive next

sono

e doveva

è stato

Cx

assuma

che

muE.

appartenente MIS

il colore

per

1 e alive xj

nel

MIS.

l insieme

adiacenti,

generalità,

Per

ali,.e

Ne ll iterazione

Cx

conte

alive nel

si supponga

sono

nexr x .

il bit

che

se

aggiunti

oggetto bit

mostrare

indipendente, Poiché

un

c colori.

marcax

quelli

hanno ad

dei

x controlla

il processore

adiacenti

sono adiacenti -eliminato Si

ognuno

per

oggetto

algoritmo

calcolo

qualunque su

O Ipso

una

PRAiv1 di tempo

EREW

dei

segmentato

su

prefissi

una

lista

di

n

ERE . Ok

Ign

costante.

una

ordinare

per

lista

di n numeri

di

k bit. 30.5-2

Data

una

6-colorazione

colorazione

della

di

lista

una

lista

in tempo

Ol

di n oggetti, usandv

si mostri

come

ii processori

con

effettuare una

una

PRAivl

330-2

EREW

Atgoritmo

Si desidera 30.5-3

Si

supponga

che al padre.

puntatore dell albero

30 5-4

Si

dia

un

Vi

insiente

nella

lista

separanti come Il ltO

algoritmo cui

Ill

-,Pp,.ll,.llllC

che due

PRAM

efl,ciente

h

pAS , ,1

di nvn

vi

una

O C1 Zl.C

Si

t nodi

di una

abbia

una

a.

0 1 -colorazinne

è un

adiucenti un ui a

MIS

Si

mostri

che

Ill

è

Sl 1c111pO

di

un

b.

un di

O

l

l IL

un itCiil.,

il srtassinr .

rispetto

efficiente

di n numeri

u

una

PRAM

di processori

a1 numero con

CRCW

p

n processoti.

p

Se

si

di

trovare

il massimo

di

il massimo il più

nè pnumeri

numeri.

guatati

p12

numeri

in tempo

O

di m

può

essere

su una

I

ridotto

al

CRCW

PRAil4

ir processori. comincia

con della

m

I.pl2J

numeri

dopo

rimangono

k iterazioni

a

parte

separanti I

più

possa

come 1l llt

nggetli

2- eparsnte.

elementi

111OStri

di

siano. l

insieme n

con

il prnblema

di trovare

dell al oritnso

insieme e ci

lista

pl O YSSOl 1.

0 1 -ccilorazione

trovare

il massimo

un

l algoritmo.

concatenata

di

Cl .. I.111 Il,.l1 1

albero

effettuare

per

analizzi

separanti

/l

un

effettuare

per

Pert l. to.

us ll ClO

in

problema

lisi t

O lgii -separante

radice

CREW

3.

graùu

siano

sep ranti.

insieme lClllpA

un

dalla

a goritmo .

k-separm te tali

diverso

O lg n

vertice

ogni

tra un

nodn

Si dia

in ten po

rafo,in

30.5-5

ogni

per

trovare

o

etti Si

essere insieme

non-

ctctermiOl l

n-

o

i

i

o

o

.v

l

2

3

4

S

6

7

iN

9

y

I

3

6

4

9

6

T

ntnitri

o

o

l5

o 10

o 11

24

o

i

12

13

57

13

o 14

Ip ldil. Figur s qwnl..a

3 .

12 di

Un r ut vtl

calcrilri y.

ver rnentarri L i scoiai

li

3 sr ginc itri

i prefissi

ci seqnen c

cl

i s

r menri

b,

seqrren.-a

di

inpatx

e

Algoritmi á8á

c.

che

mostri

gi

PRÁX1

con

CRCW

di ir numeri

il massimo

di trovare

il problema una

su

ig

O lg

in tempo

risolto

essere

può

C

r,

un

di un è una

foresta pi

dell algoritmo,

disgiunti Inizialmente,

padre.

è un albero

volta

come

C Jr. x1P, e un

v

tr.

come

in cui p u

v,

u.

che

foresta

per arco usa

L algoritmo

due

TRUE

star v

u.



v

c

Si spieghi

e.

fine

Alla

radicati

due

di base,

stella

volte

che

Si mostri

f.

di

g.

Hoov.

a unQ

v appartiene

la Hoov.

dopo

perché

vi sono

non

iniziale

la Hoov.

dopo

V.

aumentano

non

successive

Hook

le operazioni

iniziale

C

0

di altezza

di puntatori

alberi

C

ir e vnell albero.

E appaia

operazioni

diminuisce

e Jeans

di Hoov.

iterazione

v in G.

se u

di alberi

i vertici

tutti

pv ogni

stesso.

solo

sec

pv una

v c V mantiene

a sé

che

ogni

costante.

fattore

Si provi

di dati

struttura

vertice

Ogni punta

p formano

Cl1C QSsègnQ

STAR

sottDpfOgràmmQ

22.è . vertice

il

di un

che

è di provare

analisi

nostra

della

componenti d.

La

processori.

V, si hap u

suppone

connesse volta

e una

v.

le

calcolare

per E

V

il paragrafo

u. vc

di puntatori

componenti

delle

usa

pv

i puntatori

dell algoritmo,

Unastella

L algoritmo

che

veda

si

di vertici

coppia

ogni

E

V,

al per

picntatori.

G

orientato

arbitrario

CRCW

algoritmo

di insiemi

l esecuzione

Durante

un

studia

non

grafo

puntatore

una

si

problema,

questo

connesse

PC

cvniresse

Co npo reitti

30-3

usata

á87

paralleli

.

height T,.

g

n processori.

p

L obiettivo

In

calcolatori

per

30

Capitolo

dopo

Si

spieghi

un

operazione

se

è

non

C

DC

Juwi,

in

companato

stato 213 del

è al più

valore

suo

è una

di C.

i vertici

tutti

di puntatori

albero

nessun

iniziale

non

contenga

di puntatori

l albero

perché.

Hoov

operazione

ogni

che

a meno

il caso

Si illustri

dopo

allora.

stella.

singola

una

precedente.

peggiore.

st Ila. h.

che

Si concluda

di G in tempo

connesse

le componenti

tutte

determina

l algoritmo

O lgV .

Hoov G 1

S rRG

2

for

arco

ogni

then

4

in parallelo pi

e p ahi

if star u

do

3

c EfG .

ir,v

-

pQ u

di M.

a sinistra

pv

STAR G

BiiBLT r,.

particolare. for

6

do

7 I

arco

ogni

e EG,

u,v

if srar u

m

i

i,

M r,

w pi

0.

peri

v

c,

i e VG,

ogni

ppv

pu

L algoritmo

dalla

Juxtv.

operazione

a.

Si diu

b.

Si

Hoov..

Jviiv,

Juwr

noti

Si

lo pseudocndice

inizialmente

connesse

le componenti

per HooK.

ripetutamente

che

via,

e cos del

prima

esegue

finché

nessun JUh1P

primo

Hoox

una

SOI10

eseguite

radicati.

con

volta. viene

puntatnre

due

ese

poi più

quanta in cui

Honv..

che a-

i puntatori

t sé

punt

p

stessa.

Si

Si

form

mo

tnostri

che

una se

foresta u

e

di sono

alberi nello

stessn

albero

la

radice di

di

un

u

v in

definisca

il

qualunque

I algoritmo

visibile

non

m

j

sullo

illlmagine che

assuma

p sia

BrrBLT

schermo

ci usi

AND

con

rande

memnria

O lglt

con

che

di lavoro.

la Di

divide-et-impera

approccio

un

BnBLT.

n ih modo

di

utticieote

fornisca

Suggeriinenr

escgiiitc

trasposta

essere piii

la

chiamare

di operazioni

possibile puo

di

z quello

inferiore

numero

raster

bisogno siano

sia

memorizzazio-

visibiledella

pnrzione

bit

input.

di due

booleune

16 funzioni

iufticientemente

n1emorizzazioise siha

memoria

dei

il minor

uiarc

delle

nella

W f j, i copi

della

si vuole

della

delle

alcune

ll i.

j

è una

1. dnve

bonleaiti.

alli r i

puntatori.

è

correttn

termina.

e

quando

termina

pu

pi

SC

C Olt1

SC

Bri

s

e

Karp

Varie

combin itori. e

l09

I lì

Ramachandran

e

Hwai1

e

architettuie

DeGroot

I

L.ei

hton

l 35

ti

in icchine

il

l97 S

al oritmo

es lminaiso ionu

parallele.

descritte

paralleli la

per e

Hiv ng

10 .

G.

piilenzi tic

di

C

llri come

l I

cile

Si

nc

1.....

c,

i.

al capitoto

reti.

j

e quindi

ulteriore

Ahl 9j,

che

In

altra.

albero

inG.

mostri

a un

posizione

assegna

j

il co to

che

BnBLT.

probleii i c.

una

da

. trasferimen-

n t B Ts

Transfer

in alto

nx t

la sottamatrice

St. e G .

per

Note che

mostri

di hit

rettangolo

VI r,

c,

l immagine

assume

mostri

porzione

ue

can bi ito

0.

BwBLT

operazioni

j

ej

nr-1

Si

primitiva

in parallelo

Si do

un ne,

r,

c-.

i,

M r,

traslare

raster.

ne

Jvwv G for

c,,

j

I.....

Si vuole

1

r,.

l inglese

dal

miiovere

per

bit.

11 di pxp

matrice

una

come

dell utente BLoch

schermo

in parallelo

e pu

then

8

Bn B LT

è usata

vista

essere

puo

tulio

visibile

operazione

Una

di bit

in blocco

to

raster

immagine

di un

rende

hardware

dispositivo

Ln

innnagiire

tnt

raster

metnorizzazione

Una

j

di

Trasla ione

.30-4

Il tutori

moilcllo uviiscfo

PRAVI

tu

form ilize ilo

prcce l nteinenie

liicuiio

cl

modelli

Fortuite

c XVyllie

cirenei rln cntc

73 . iii sili.

ichhenc

miilti

Capisòkr30

Il salto ebbe

puntatori

fu introdotto

da Willie

origine

dei

dal

di

152

La

tecnica

riporto. Valiant

193

e sia

il

di

simulazione

anche

un

30.2

su

un

algoritmo

e Vishkin

il

a Brent

ranghi

simile

che

conflitti

lo stesso

e V ishkin richiesti esiste

da rispetto

è dovuto tempo

con

EREW

al lavoro a Goldberg

di esecuzione

calcolare

una

e Miller

che

CREW.

La

195 .

efficiente

rispetto

l.

presentano

lo stesso

e Plotkin e che

tempo

dimostrato

a Vishkin

l

è stato

Essi

esso

inventato

al

10 .

problema 84

matrici

sulle

Operatori

richieda

PRAM

è dovuta

per

del

il massimo

che hanno

50

randomizzato Anderson

prefissi

previsione

191 . per

su

dei

parallelo

un algoritmo

Q lgn

L algoritmo

inventato

calcolo

addizione

e Reischuck

tempo algoritmo

efficiente dei

ha

34 .

è stato

deterministico Ie risoluzione

un

con

non

Dwork

richiede

del

della

a Tarjan

che

Cook,

CREW

studio

contesto

e processori

anche

massimo

è dovuto

algoritmo per

al lavoro.

algoritmo

dei

tra

tempo

ed ha mostrato

Lo

204J. nel

è dovuta

relazioni

calcolare

il calcolo

L algoritmo

euleriano

rispetto

di un

Il Teorema per

fornito

efficiente

Ofman

ciclo

di n numeri

problema

lavom

de ha

di un insieme 01

lavoro

è basato da

Le

operazioni

per

lavorare

47 .

con

una

fornisce

sono

molto

sono

dunque

breve

interesse

e della

capitolo

Questo

pratico.

in rilievo

mettendo

sulle

matrici,

risoluzione

di

sistemi

di

base

operazioni

matrici

delle

moltiplicazione

della

i problemi

e alle

efficienti

Algoritmi

scientifico.

calcolo

di considerevole

teoria

alla

introduzione

nel

utilizzate

nutrici

le matrici

sulle

Cole

equazioni

di

lineari.

31.2

paragrafo

per

come

studia

31.5

paragrafo

matrice.

una

invertire

definite

simmetriche

di un

soluzione

In questn

fondamentali

paragrafi

successivi.

XIatrici

e vettori

è

mntrice

rnoitra

si

31.6, come

esse

di equazioni

sovradeterminato

l importante

discute

col

metodo

è1.4

dei

il

Quindi.

di

e il problema classe

di

per

trovare

usate

essere

possano lineari

LUP.

matrici

di moltiplicare

il problema

paragrafo

e si

minimi

matrici una

quadrati.

matrici

alcuni

si preseneano

paragrafo,

proprietà

Una

nel

Infine,

sistema

tra

relazinni

positive

delle

Proprietà

le strette

anche

Il paragrafo

fattorizzazioni

usando

lineari

booleane.

matrici

moltiplicare

per

di equazioni

sistema

le

chiarendo contiene

Esso

di Strassen.

ir x ir

matrici

e campi.

anelli

quasianelli,

il

matrici.

sulle due

moltiplicare

per

de11 algoritmo

funzionamento efficiente

un

risolvere

di Strassen definisce

31.3

e notazioni

concetti

algoritmo

Il paragrafo

.

il corretto

asintoticamente

algoritmo

mostra

31.1

O -

necessarie

ipotesi

di

31.1,

paragrafo

l interessante

presenta

8 nei-

in tempo

un

nel

l introduzione,

Dopo

delle

va-array

matri .i.

di

rettangnlare

di base

concetei

mettendo

nuineri.

in rilievn

Per

della quelle

che

matrici

delle

teoria

e alcune

necessarie

saranno

nei

esempio.

r a,, A ei,,

i e

nella

et a

colonna

31.1

j i

Si

usar u

le

lattaie

in,tiuii le

per

ùenot uv

mz iiii

1c

corrispondci ti

áPO

lettere

minuscole

con

matrici

inxrt

i cui

matrici

mxn

con

indici

gli

elementi

in basso valori

reali

in un

insieme

siana

elementi

scelti

denotare

per

i loro

è denotato

elementi.

con

L insieme . In generale,

R

S è denotato

con

di

tutte

l insieme

di A.

Per

A

di una

la matrice

1

4

2

5

3

6

vettore

Un

matrice

A è la matrice

A dell equazionc

è un

array

A ottenuta

scambiando

le righe

con

di

numeri.

Per

esempio,

3

è un

vettore

di dimensione elemento

standard

corrispondente 2

3

Il vettore solito, Una con

0,

3. Si usano

di un

vettore.r

le lettere

minuscole

di dimensione

di un

vettore

come

vettore

riga

è ottenuto

un

n con

rettore

coEonsra

denotare

per x

per

i

0,

i vettori

I,

equivalente

...,

a una

matrice

la

n x

l

4.

e,è

il vettore

il cui

i-esimo

di un

vettore

unità

matrice

è una

matrice

in cui

poiché

inala l ambiguità

Nel

caso

1

0 se

r,,

0

0

0

0

1g

tq

0

0

0

0

fg,

lpq

0

0

0

r

E, 0

lg

da

diagonale

la

sopra la diagonale

sotto

o immediatamente

diversi

l. Elementi

j

i

immediatamente

principale

o

o

o

o

...

r,,

0

0

0

0

...

r

0

0

0

0

...

r,,

tra

di

una

il numero

nsatrice

elemento è chiara ogni

,

,

r

t r

0

,

i

sotto

U è una

triangolaresuperiore

per

cui

gli elementi

j. Tutti

se i

ic , 0

zeri

sono

la diagonale

matrice

è l e tutti dal

elemento

0 e la matrice

di zeri,

anche

matrici

quadrate

altri

gli

elementi

sono

lr

0

lie

Di

0.

ll/7/ 1l q

...

U

contesto. è 0. Tale di zeri

ll /

matrice

di solito

la dimensione

è spesso

si risolve

della

matrice

denotata dal

sarà

dal

chiara

Una

...

0

0

facilmente

u

è triaiigolare

superiore

triangolare

matrice

se ha

uititaria

superiore

tutti

l lungo

la

diagonale.

incontrano

frequentemente

sono

Una

di particolare

ratAce

diagonale

diagonale sono

0,

ii x n.

Alcuni

casi

speciali

di

matrici

5.

interesse

ha

la matrice

a,

0

puo

per

esiere

ogni

i w j.

specificata

Poiché

tutti

dall elenco

gli

elementi

degli

elementi

esterni lungo

0

I

a11a la

matrice

per

cui

gli elementi

j. Tutti

se i

I O

zeri

sono

la diagonale

L è una

inferiore

triangolare

Unasttatrice sopra

0 3

...

1.,

l ...

0

I,

I,

m,

L

diagonale

Q

0

0

..

0

KI ,

..

Q

diag a ,a, ,...,a

Una

n

0

...

u y

6.

dia

on le.

Una

tnntrice

identità

diag 1,

I....,

o 0

0

..

una

matrice

di,ignt,aie

nxn

con

I lungo

la

P

dipermitta--ioire Ltnz

di

111 ltrice

di..v,onale

0

0

0

1

0

0

0

0

0

0

l

I

0

0

0

1

0

0

0

I

0

0

0

1

o P

1

0



0

...

0 I,

è trias alare

inferiore

triangolare

matrice

eietllpiu Lam matric-.e La

1

n

....

e.

la trasposta

prendendo

la dimensione

quadrate

2. .

1, 2,

i

per

cui

0

r

Unamatrice

il

contesto.

l.

per

principale,

contesto.

dal

derivata

essere

unità

e si denota

n. Si considera

5.

unità

contesto.

Si

matrice

diagonale

31.2

l i-esimo forma

,

può

è il vettore

T

2 x

r,

principale

dimensione

sua

identità

T è una sulla

solo

appaiono

zero

matrice

una

tridiagonale

matrice

Una

le colonne

è l. 1 ,

monodimensionale

colonna

L i-esima

di

di

la

indice.

senza

appare

SA 3.

trasposta

La

I

Quando

le

áP I

matrici

sulle

gperatori

31

Capitolo

pernlutazidlle

ha

eè ttamente i.

inferiore

un

l inani

unilaria

ri a

se

o colonna

ha

tutti

0

I lungo

altrove.

la

Per

tale

Una

matrice

vettorer

è chiamata

e una

matrice

matrice

di

di permutazione

permutazione

ha l effet

la

perché

to di permutare

moltiplicazione

tra

un l, 2,

peri

gli elementi

risistemare

Una

matrice

l

2

A soddisfa

la condizione

A

AI.

Per

esempio,

6

4

3

4

5

Le

AI

matrice

simmetrica.

h 8 n- .

di esecuzione

matrici

tra

moltiplicazione

della

numeri.

dei

tipiche

algebriche

proprietà neutro

l elemento

tempo

che

n cv esegue

n x n, iVlawx-M u

matrici

realizza

assumendo

31.3 ,

A A m x n. Moltiplicando

matrice

qualunque

per

tutte

non

ma

sono

identità

matrici

I ,A

molte

hanno

e il suo

addizioni.

1

26.1

paragrafo

l equazione

secondo

matrici moltiplicare

p. Per

n

e n- n

matrici

Le

m

quadrate

ir- moltiplicazioni

3

2

è una

simmetrica

tra

Lv nel

Mwtatx-Mvcttt

p. La procedura

2....,

l,

la moltiplicazione

siano

le matrici 7.

m e/,

...,

semplice

in modo

di x.

á93

matrici

sulle

Operatori

zero

per

una

si ottiene

matrice

una

nulla

matrice

AO O. Operazioni

sulle

matrici La

Gli

elementi

reali,

di una

i numeri

come

cagli

interi

o moltiplicare

anche

matrice

numeri

tra

Si

matrici

somma

C

tra segue.

A

di numeri,

Il sistema

primo.

estendere

possono

come c

di un sistema

un numero

e 1a moltiplicazione

l addizione

la loro

sono

modulo

numeri.

l addizione

Si definisce allora

o di un vettore

complessi,

sommare

includere

matrice

come

di numeri

A BC

in modo

da

AB C

e B

a

B è la matrice

sono

b

in. X n definita

matrici

n

x n,

Cj

AB

da

a,

e

B

è

matrici

tra

moltiplicazione

La

C.

rispetto

distributiva

BC.

BD

CD

31.5

.

b moltiplicazione

La i

per

AB

CD

8 e.

A,

compatibili

matrici

per

all addizione

matrici.

Se A

è associativa

matrici

definisce

definizioni

queste

i numeri

tra

moltiplicazione

1. 2,,

n e j

componente.

Una

A0

1, 2,

matrice

...,

ii. Cioè,

nulla

l addizione

è l elemento

tra

neutro

nxatrici

è eseguita

l addizione

per

tra

componente

tra

matrici

l0

13

per

matrici

seA f

Peresempio

-4oJ

n x ir non

0

0

l,

o

J

l.

allora

e8

A

n

che

a meno

commutativa

è. però,

,

D A. Se

iL è un

As , , numero

di A, ottenuto negativa a ,.

e A

moltiplicando

di una

matrice

è una

a,

ogni A,

matrice.

allora

elemento

di A per

come

a

ilA

I

A

X

è il prodotto

W Come

A, cosi

caso

che

usto

per

si definisce

particolare,

il generico

scalare

elemento

di

la

-

Pertantn,

A -A

e

A sia

0 A A. esta

q negativa

definizione,

di una

Si definisce siano In

matrici allora

nel se

un e

A e B siano l loro

A

detmire

B

matrice

senso

tra che

spressione

com

b pali --ili.

inatrici

il numero coi1tienC

aratrici

come

l addizione

con

IJ

AB

se A è ut a m.

come

segue.

di colonne lttl l

llsatrice

SeA aj èunamatricew C

tra

B.

. prodotto

la svttrapione

A

la m oltiplicazione

eompa bifi, generale,

si può

matrice

è la matrice

Si considerino di A è uguale prodotto

A8

X ite8 h, rn x p C

c, .

due al numero si assume

matrici

p èunamatricen dove

vettori

un

venore

sono

di dimensione

n, allora

di 8. che

jl

vettore

/X i,

X

le xp, ., j.r

pp s,

A.v è un

se il vettore

n. allora

di dimensione



matrice

un,

n

x

tl ,

n Zchiawatapro lr

n

c

come

definiti

vettore-vettore

A e B che

di righe sempre

m x n e. è

matrice

e v sono

Se.r

o i prodotti

matrice-vettore

I prodotti

di

un

vettore.v

di

r

dinlensiune

è del init

esterno

di.rep.

con

-,,

.1,1,

La,roru a

ib

31.3

.Y

Pertanto.

.v.- ... .r,-,

.,-i

ii.vii

-

X

I,

n rn,a

di

.v i

la

su ,

lun,.hewa

i ll, ,pario

cucliden

,-dimensionale.

fosse

di dimensione

inverse,

Matrici

di una

L inversa I A

AA

-

n x n,

matrice

denotata

con

A-

tale

esiste ,

se

che

matrice

Una

inversa.

di matrice

senza

non

singolare

è chiamata

inversa

nulla

no z

n

x

I

una

matrice

invertibile

è chiamata

uniche.

sono

o non-singolare.

l Esercizio

veda

Si

A è non

ij-esimo

di

31.1-4.

Le

Se

n x

matrici

n

I vettori

all inversa

è uguale

della

non

tutti 2

lineannenle

x sono

non

linearmente

tali

nulli,

6 4 aie

x

se esistono

dipendenti

c,

c,x,

che

l l 9

4

sono

...

0.

c,p

sono

linearmente

sono

linearmente

dipendenti

identità

matrice

coefficienti

dei

del

Per

esempio,

dipendenti,

i vettori v,

poiché

indipendenti.

le cui

teoremi.

31.4

Teorema

prove

ci si può

riferire

è che

utile. due

il suo

3.

x,

3 ,

l

di una

Il determinante

0. Vettori

2x,

esempio,

Per

estremi

inclusi.

di una

di A.

B e C di dimensione

di riga

non

Una

è uguale Il rango

ad esempio,

m X

del

il rango

indipendenti.

di riga

rango

Infatti,

matriceA

è la cardinalità

Analogamente,

al rango

semplicemente

il rango

matrici

se

n

l .

a.

Una

matrice r nghi

al suo di una

il rango

determina rte

del

Se

qualche

più

grande

matrice

di A è moltiplicato

nalitè

che.

intero

tra

matrice

nulla

è 0 e il rango

numero

r tale

che

piccolo

ni x r e r x n tali

di A rimane

di A è uguale

II determinante

di A è moltiplicato

Inoltre.

esistono

che

in una

, se gli elementi

per

mnltiplicvti

di un

a

rispettivamente

o una

qualunque

riga

rispettivamente colonna .

di AI. 1 se due

per

di una

elementi ri

altra

rica

il

per se gli

0

det A

righe

rispettivamente

colnnne

scambiate.

sono

per

praprieth

allora

al detenzinantc

11 determinante

qualunque

le seguenti

di A è zero,

immutato

z quelli

sommati

sono

colonna

cosi

i è un

tutti

sono

qualunque

Il determinante

fondamentale

m x

A ha

quadrata colonna

insieme

di A è la cardi

di colonna,

matrice

o qualche

riga

di una

le colonne

proprietà

rango

di una

è il più

m ll

rispettivamente

è data

dal

coppia

qualunque

di m itriei

A e B, si hz

quadrate

det A det B .

det A8

L n

vettore

seguente

se

pietro

il suo

rang

è n.

Una

proprietà

teorema.

qui drata

X strrllo

n

matrice

Una

clefinite

latrici x

n

ha

colonna

ha

rangn

di

per

un

mi trive

rango

pieno

pietro A

è

un

vittore.i

se

se

e

il

solo

se

suo

rai

diverbio

è

o

è

n. i ru

A

n

x

n

non

è invertibile

ie

e

solo

se

det A

0.

positive

W

invertibile.

dt

3 1.5

Te irenta

Fondumeiltale

3 I. /

matrice

matrice

Una

n x n ha ralingo

quadnta

Teorema Una

del

fondamentali

le proprietà

BC.

A

dei

n,

A è che

nulla

di A linearmente

di righe

matrice

0 e min in,

esprimono

omesse,

state

sono

Proprietà

Il determinante

A m x n non

matrice indipendenti.

insienfe

grande

più

di una

di A linearmente

di qualunque

n l,

dell elemento

il cofattore

cnme

è conosciuto

det A

1

c,

c . c..

indipendenti.

linearmente

di colonna

di colonne

se

con

minori

31.7

colonna Il rango

suoi

dei

det A

a,

det ,$,, ... -1

Q

2 x.

dimensione

di A. Il determina ite

q

1 seguenti

trasposta

di

A

matrice colonna

in termini

ricorsivamente

definito

essere

è la

l,

e la j-esima

determinante.

x...

x,,

nullo.

vettore

un

n

per riga

j ri

Il termine

.

A

A

31.6

dell inversa

n x n,

A

l i-esima

cancellando

ottenuta

C1Ct $

A-1B-1

trasposta

se ha

se e solo

invertibile

matrice

una

A n x n può

Q

BA -1

a

nullo.

vettore

un

ha

se non

se e solo

pieno

inverse,

matrici

A e B sono

1

n

allora

invertibili,

La

inversa

ammette

esistono,

quadrata

matrice

di una Se

colonna

è Il minore

quando

di

rango

3I.3

matrice

Una

inver2ibiEe

A ha

matrice

Corollario hanno

esempio

Un

31.2

Teorema

t x n non

o singolare.

è una

Peresempio. Una

matrici

Molte

A n x,t

matrice A.

di rango

le nozioni

in relazione

mettono

corollario

nulli.

i vettori

con

e invertibilith

di colonna

e il suo

è 1. 1-8.

Esercizio

all

è richiesta

dimostrazione

la cui

teorema,

Il seguente

e determinante

rango

695

matrici

sulle

Operatori

r,i tale

he

A.s

0. ziro

si

lw

65

31

Capirolo

x

I x .r

la riga

j alla

la colonna

i dalla

colonna

A una

A

da

sottraendo

ottenuta

essere

puo

è ottenuta

se A

che

dimostri

B di A

j di 8.

come

elementi

se e solo

se ogni

avente è reale

di A

elemento

ogni

Si

l inversa

i x n invertibile

matrice

che

mostri

il

I.

AB

i, allora

riga

sommando

Sia

31.I-6

ge,-

che

n x n tali

A e B matrici

Siano

31.1-5 x

Si

complessi.

numeri

di A è reale.

elemento

4 p

Come a causa

del

le matrici

seguente

che

si incontrano

nelle

applicazioni

sono

spesso

definite

positive

A

se

che

mostri

Si

3A1-7

si vedrà,

n x n

matrice

una

BAB

allora

qualunque,

compatibile

è

A-

allora

invertibile,

simmetrica

matrice

se 8 è una

che

Si mostri

simmetrica.

è

teorema. è simmetrica.

Teorema Per

31.á matrice

qualunque

A con

rango

di colonna

la matrice

pieno,

AA

0.

x

è definita

positiva.

Dimostrazione. Per

Si deve vettore

qualunque

x AA

.x

mostrare

chex A A

x

0, per

vettore

qualunque

x diverso

da zero.

che

dimostri

Si

31.I-9

x,

Ax Ax

matrice

31.1-3

dall Esercizio

se e solo di una

0 implica

se Ax

altre

dalle

colonna

invertibile.

quadrata

la

si usi

Suggerimento

e

A vale

l uguaglianza

dove

rank B .

matrici

di

coppia

qualunque

per

min rank A .

rank AB

oieno lineare

matrice-vettore.

un equazione

come

la dipendenza

si esprima

Suggerimento

di colonna

rango

A ha

matrice

una

che

Si mostri

31.1-8

sc A

definizione

compatibili,

B

è una

B

oppure

del

alternativa

matrice.

rango

di una

Dati

i numeri

31.8 0. 31.E-/0 Si

noti

Ax

-

pieno,

che

è proprio

Ax -

0, ogni Ax

elemento

la somma

dei

di Ax è 0. che

0 implica

x

0, per

degli

quadrati

è come

dire

il Teorema

che

31.2.

elementi Ax

del

AA

Quindi,

vettore

0. Poiché

Ax .

Allora,

A ha rango

è definita

che

dimostri

si

.lg,Xj .....l ,

della

determinante

il

di

matrice

Vandermo tde

se

di colonna xo

1

a

positiva.

X

l V .r ,

Altre

delle

proprietà

matrici

definite

saranno

positive

esaminate

nel

x,,...,.v ,

3 l.6.

paragrafo

-

1

i-i

Esercizi è 3I.1-I

Si dimostri Si dimostri uguale una

31.1-2

che che

matrice

Si dimostri

degli

triangolare

che

allora

PA

da

permutando

A

di due

il determinante

al prodotto

può

le

inferinre,

se esiste,

matrice

sue

P

matrice

sulla

sua

inferiori

è triangolare

Si

è invertibile,

righe

che

provi

il

sua

inversa

e AP

può di

che è PE

matrice essere due

se P è una e

Piè

una

n x ii,

31.2

dimostri

che

3L

Si

dimnstri

che

8

AB AI

8

e

che

AA

è

sempre

una

matrice

matrici

di

m itrice

di

negatrice

eli

Questo matrici

presenta

paragrafo

se

8

e

C

sono

inverse

di

A.

allora

8

l. e poi

si usi

la si sommi

i

coIonna

alla

l

l induzione.

matrici

tra

la moltiplicazione

per

veloce

del 26.1

algoritmo

8 t

O n -. .

algoritmo

semplice che

l importante tempn

impiega

n X n che

richiede

per

tempo

8n .

empiere

viit i

di

ricorsivo Per

Strassen

n sufficientemente

Ia moltiplicaziune

tra

matrici

per

moltiplicare

grande,

dell algoritmo

C,

L algoritino divide et

di S raiien impen .

pui

o le

un

applicazione

della

tecnica

è

allora,

MwvRn-iilULTlPLY

simmetrica.

Presentazinne 1-4

....

di Strassen

Algoritmo

paragrato Si

2,

1, n

n

x,

i per

la colonna

at tenuta

più

permutazione.

31.1-3

i

j l n-l

si moltiplichi

Suggerimento

di

per

prodotto

Si dintostri

la

è

l inversa

inferiore.

r x n e A è una le sue

di permutazione.

che

Os

Xf

X

p

inferiore. o superiore

inferiore Si dimostri

di permutazione

colonne.

è triangolare

triangolare diagonale.

de A permutando

matrice

allora

permutazione.

triangolari

di una

ottenuta

è una

permntazione

matrici

elementi

se P è una essere

X ,....x ,

det V x

il prodotto

di progettazione

del de

698

Capitolo

Si

31

supponga

Supponendo x n/2.

n/2

di

voler

che

n sia

calcolare una

riscrivendo

il

I equazione

-

C

prodotto

AB.

di 2. si divide

esatta

potenza

C

come

AB

dove ogni

A,

B

matrice

e

C sono

n x n.

matrici

8 e C in quattro

A,

del

Determinazione

segue

Non

J

Esercizio

tratta

31.2-2

è chiaro

chiave

come

in cui

n non

sia

una

esatta

potenza

di 2.

Per

di

tra

di A sono

etichettate

dall alto

in basso,

etichettate matrici.

L equazione

r

ae

S

ag

l

Cd

u

cg db.

Ognuna

alfabeticamente secondo comsponde

3.19

da

sinistra

la modalità alle

con

a destra,

cui

mentre

è eseguita

df,

dei

loro

divide-et-impera,

Usando

prodotti. si

deriva

la

due equazioni

queste

seguente

moltiplicazioni

ricorrenza

di

definire

per

matrici

una

il tempo

per

Tn

n/2

semplice

alcune

fare

senza e

di A

essenziale

strategia

Per

ST n/2

8 n-

Sfortunatamente è più

Strassen

di quello scopri

di matrici

31.14

la ricorrenza

veloce

n/2

3 l.14

ha soluzione

Tn

On ,

pertanto

metodo

questo

comoditè.

come

ttell

ricorsivo somme

diverso

che

e sottrazioni

richiede

scalari,

solo

7 moltiplicazioni alla

portando

ricorsii

7T 12

sulla

sinistra

e tutte

le

ricnrsiva

delle

strategia allora

modo. ità della

i due

usare

ogni

di A. aggiungendo risultati.

se sono

Anche

ogni

B sulla poiché

ha

prodotto

destra.

vamente

ricorsi

metodo

questo poiché

di

metodo

che

funziona.

si puo

sottonsatrici

si suppone

sottomatrici

moltiplicazione

di questo

31.16 l . Cioè

1, 0,

moltiplicando

semplice

questa

commutati

si useranno dove

4 x 4 per

matrici

ogni

equazione

riconenza

8 n-

b

Questa

le

tutte

è

proprietà tra

la moltiplicazione

matrici

esempio.

Per

31.16 .

combinazioni

rappresentare una

combina

prodottn

di A con

sottomatrice

si puiè

I equazione

riscrivere

di prodotti

lineari una

iottomatrice

di B

come

31.10

e

.

1

0

0

0

e

0

l

0

0

f

0

0

0

0

g

0

0

0

0

l

d

c

31.15

p y lg7

O n- i

la

forma

nella

pqlt ,

alcune

di B. quindi

in questo

sulla

pag

pg

e sottraendo

generali,

i prodotti

e

n Tn

sano

plausibile

r ac bf

un approccio e 8i-

un

non

ordinario.

x n/2

che

sottomatrici

si ricostruisce

scritta

essere

dal l insieme

presi

sottomatrici

l applicazione

di sottamatrici. Tn

di

prodotti paragrafo,

è commutativa.

non

due

per

pie

tutti

p , sono

più

ipotesi

ad

aggiungendo delle

tutti

sottomatrici

n x ir

matrici

u,

Se si formano

x si/2

moltiplicare

per

P, possa

prodotto

aqc

co1ato

strategie

possibili

31.13 specifica

matrice

Qb

ca

sia

e sottraendo

31.12

equazioni

ogni

i coefficienti

prodotto

31.11

quattro

che

cr ,a

31.10

queste

quei

In questo

AiB

dove

I f,

di

algoritmo.

scoperta.

la moltiplicazione

bh,

l addizione

esattamente

scopri il suo

di 8

quelle

equazioni

quattro

sottomatrici

comodità, Pi

le sottnmatrici sono

Strassen veloce

rendere

per

metodo

31.9

la situazione

699

matrici

Si fa l ipotesi L

delle

prodotto

matrici

sulle

Operatori

f

g

lt

a Il metodo

di Strassen

prevede

quattro

paioli b

1.

Dividere

le matrici

di

input

A e B in sottomatrici

n/2

x n/2,

come

nell

14

sottomatrici

equazione

31.9 . C

2.

Usando

8 n-

B.,

A,,

addizioni

8,

e

di dimensione

sottrazioni n/2

scalari.

3.

Calcolare

ricorsivansente

i prodotti

delle

4.

Calcolare

le

richieste

r,

Una detta

sottomatrici

sottraei do

varie

sottrazioni

scaluri.

tale

procedura

li tralasciati.

calcolare

A ,B,,

A..

x n/2. sette

matrici

P,

A,B,

per

i

l.

2,

....

7. L

s,

r. u della

matrice

risultuto

C

a

maun endo

ultima

eoddista

delle

le ricorrenza

matrici

31.

P,.

5.

Cii

usando

che

rimane

soltanto

Ia

8 n-

fare

ora

uddizioni

i. speciticare

usa

urn

hhres

notnzi ne

rappresent t

0,

e il

i ta

in

il

cui -

simbolo

combin rioni

espressione

e/o

r ppresent i

simbolo

rappresenta

simbolo . I D ora

in

e

i

le

etichette

le

altre

su sottom trivi

riehe

U in

e colonne. della

matrice

Jo

risultato

notazione*.

queit i C

ci

hmno

le

se

pni uenti

i

l.

ometteranno equazioni

per

il

.I

Operatori

ag

s

bh

La

matrice

t può

essere

calcolata

in modo

analogo

come

r

sulle

P

P,,

matrici

701

dove

AqB,

P

c d -e CC 418

t re df C

AB

P, u

61

cg db

-E

f 8f

Ck

Si definisce Si

comincia

la

sottomatrice

s puo

moltiplicazione

P,

ricerca essere

di matrici

di

un

algoritmo

calcolata per

come

ciascuna

di s

moltiplicazione P,

P.,

dove

più P,

veloce

e Pz sono

osservando calcolate

che usando

la una

di una

s e t i cui ag,

termine

delle

essen iale

equazioni termini

P. calcola

essenziali

il termine

essenziale

df

essenziali

sono

aggiuntivi.

g-h

sono

Pertanto

ora

blu , ce

b/i.

rimangono

i termini

Si prova

ag.

degli Sono

31.13 .

essenziale

A,B, a

ciascuno -

31.10

otto

stati e df.

che

il termine le due

della

diagonale

ae.

il nuovo

prodotto

P, per

bf,

che

4 prodotti

Si noti

P calcola

da calcolare

termini

usati

senza

due

usare

termini

lato

le due

il termine ce.

il termine

r e u, i cui più

destro matrici

essenziale

P calcola

sot tomatrici

e dl ,

calcolare

sul

calcolare

P, calcola

essenziale

rimanenti cg

compaiono per

di

essenziali

3

terna

ini

prodotti

in una

sola

volta

Qg-d/l

P,

A,-8,a

d

ac

ah

e ft de

lit

..

Pq

AB ab ali

h

..

bh Oltre

1 calcolare

leèl

demorso

coii

q paiono

etltruitibi esiere altri

i ternlini

cancellati due

termini

escenri lli in

qualche

inicsenzi 1i

ere m iilo.

e d. Si

P,

possono

calc ola usare

i teilllini Pe

ines enziali P

per

cancellur

alt

e

i. t11a

702

-

31

Cupsrolu

P,

P

Operatori

P.

sulle

matrici

703

si ottiene ae

df

dh

bh i

P,-

P,

P,

PE

cg db

.

i

Aggiungendo

e

prodotto

Le sette

aia b

d

il che

ff df

bf bh

sottomatrici

completa

P,,P ,P-,

la descrizione

possono

cosi

metodo

di Strassen.

del

essere

usate

calcolare

per

il prodotto

C

AB.

-dh Discussione

.

La

costante

grande

impraticabile elementi

pochi

r

P,-

Pertanto.

P

P,

vi

Per sono

il metodo

Usando

PE

che

zero .

e sparse

grandi si ottiene

però,

nascosta

a meno

di

siano

n1atrici

piccole

esecuzione

è preferibile che

è soprattutto

avanzate

tempi

O n- - .

ovviamente

non

L algoritmo

Si può di P

ottenere

verso

P, P,

u in modo

una

PE

direzione

ac ag

analogo diversa

da

P,

usando

P

e P,

per

spostare

i tern ini

inessenziali

si

perché

attualmente

lo

è importante

della

aatrice

consentire

è che non

nel

anello.

prosiimo

talvolta

di

inferiore

rende

e dense e per

l algoritmo

pratica

testo.

questo

di

si

miglior

conosciuto della

tra

con matrici

Strassen.

iano

complessa.

numeri

applicate

reali.

Ciò

se gli elementi

Tuttavia.

saranno

questioni

è

Q nPertanto.

realmente

matrici

essere

possoho

superiore

prodotto .

sia

algebrico.

infatti

possono

limite è ovviamente

matrice

matrici

delle

un anello

Queste

lo

a 4á

semplice

L attuale

elementi

fonmi

metodo.

questo

scopo

ali elementi

che

di numeri

un

di

ir-

Strassen

teorico.

a mo tiplicazione

richiede

i sistema

formano

l utilizzo

approfondito

non

limite

riempire

quanto

di Strassen

che

Il miglior

devono

si conosce

in

di O n,. .

ac bf approssimativamente

battono

oltre

migliori

o uguale

l algoritmo

di interesse

vanno

che

x n con

di

dell algoritmo i maggiore

con

grandi

algoritmi

Strassen

niatriii,t

tempo

speciali

di

tecniche

moltiplicare

nel

le matrici

altre

tecniche

discusse

in

per

modo

più

paragrafo.

ce db

Esercizi . 31.2-1

l vlgnritmo

l ulteriore

prodntto

Si

di Strassen

per

calcolare

I al

oritmodi

il prodotto

di .lle

matrici

.

.-

Sottraendo

PE

usi

Si

esplicitino

i calcoli.

A,B 31.2-2

-a

c QP

/

Clg

eg C8

Cg

Come

si

lli

il

vili

dovrebbe Iloti

modificare

sia

ull.l

potet170

rande

/,. per

es.itt.,

eli

2

Strassen Si

Illustri

moltiplicare

per elle

l al orit,11 3

matrici inlpie u

ir x

n

tel11po

8 ni.- .

.

.31.2-.3

Quei,il

i

L

piit,

muli

p iiono Cll

il

LCll/tCll1L

iplic l

ire Cjlll

cui,

i ri x

morii Yll

si

ll ll

I l Ill

n

.,i

in .

paia m,

titnp

nutrici

moltiplic,. re

ria n - -

. gu

li

lovrebh

3

X 3

sacre

tls..mdo

il tctnpci

I,-

704

Capitolo

31

31.2-4

Operatori

V.

Pan

ha.scoperto

un

moltiplicazioni,

un

moltiplicazioni

e

moltiplicazioni. è

usato

un

un

Confrontarlo

il tempo

moltiplicare

matrici

moltiplicare

di

metodo

algoritmo con

di di

modo

Quale

in

modo

modo

moltiplicare

70

matrici

ha il miglior

tempo

x á8

132464

e

x 70

usando

143640

chiuso

72

usando

155424

delle

68

matrici

72

asintotico

divide-et-impera

per

di esecuzione

dell algoritmo

la

usando

di esecuzione

quando

moltiplicazione di

tra

denotano

possono

matrici

Con

rapidità

quale

n x n/i

usando

stessa

si

domanda

con

moltiplicare

possono

l algoritmo

di

una

Strassen

l ordine

come

invertito

matrice

x n per

lai

sottoprogramma

delle

matrici

Si

una

Si

mostri

come

moltiplicare

moltiplicazioni

reali.

separatamente

i numeri

L algoritmo

la parte

reale

a

bi

ricevere

e la parte

hd

è anche

idempotenza

un

e somme

8 identità

definita

e il sistema

e O

alle

e c

di

a, b, c ed

immaginaria

input

705

semianello

Qualunque chiusi

godono

anche

matrici

come

si x n composta

si è già

fatto

di 0 e T con

nel

paragrafo

31.1.

di matrici

è esso

stesso

e

per

T,

si ha che

un

quasianello,

la moltiplicazione come

di

stabilisce

il

teorema.

matrice

risponda

usando

come ad

usuali. i semianelli

quasianello

matrici

infinite.

alla

Teorema

31.7

su

Matrici

tn

quàsia iello

di input.

complessi

dovrebbe

ac

e moltiplicazione

addizione

matrice

è ben

Se 31.2-6

di 26.4

estendere la

seguente 31.2-5

di

Denotando

Strassen.

operazioni il paragrafo

proprietà

Si

matrici

le veda

si

sulle

solo

8,

S,

B,

0,

1

è un

e n

quasianeIlo

un

formano

l, allora

9,

S

quasiasrello 0. l

0.

è un

quasianello.

tre

e produrre

Dimostrazione.

La

è lasciata

prova

come

Esercizio

31.3-3.

bc. Anelli

31.3

Sistemi

Le

algebrici

dell addizione

proprietà

numeri

di numeri

sottostante. anelli

l algoritmo

di Strassen

semplice

che

le proprietà

di un

Si

ridurre

non

è un

la

alla

non

tra

tra

essere

tra

tra sugli

matrici

impiegate

del

tipi

di sistemi

matrici

sui

anelli.

anello.

naturalmente

di

è definita

sottrazione O,

e

5.

Ogni

0,0,

S.9,

1 sono

un

T

binarie due

su

sistema S le

fornire

un Dato

il perché

a

algoritmi

matrici.

elementi

di

designati

dove

S è un

di addizione

in 5. Questo

insieme

di

elementi.

e moltiplicazione

sistema

è un

8

e S

sono

rispettivamente

che b

S tale

i quasianelli, proprietà

ma

lo è per

un anello

che

è un

un

che

inverso

rispetto

ab

b a 0.

qualunque

elemento

all addizione Tale

cioè.



anche

per

ogni

chiamato

a c

S. esiste

l oppostodi

di

molti

esempi

di anelli.

e moltiplicazione

formano

.,

0,

I , dove

è l addizione

Un

altro

esempio

è l insieme

operazioni

moltiplicazione

Gli

interi

un anello.

è detmito,

Rx

interi i e

I

modulo

si

dettnire

puo

con n per

le cumulasi

la

sottrazione

di grado

..0.

I,

modulo

finito

dove

operazioni

qualunque

è la moltiplicazione

di polinomi

Ri,

-, 0,

.

Z.

Gli

nsodulo

cioè,

con

è

in.v

con

di adàizione

intero

n

r-

forma so

coefficienti

l addizint e

1-

cioè,

reali

rispetto

a 8,

è associativo,

6

cioè

0 i I elemento

G,

S,

b

9

per

9

cioè

I

b c5

a 6

a S

ieutro

Analogamente

cioè

è un

c

ogni

per b

8

a a 8

0

6

0 6

a,

b c

c per a

corollario

mostra

che

il Teorema

3

.7 si estende

in modo

semplice

agli

5,

31.8 EB, G,

o ni

a, IA, c c



3.

L nperatore

4.

L h

unannullatore,

c

Esempi l OR

O

di lo

ico

G

c

quasi e

,denota

cioè.

è dis1ril utivo

O I

meli

G

a

9

O

a

includono l AND

Operogni

a

a 6

rispetlo c

sa

è un

anello

un

anelli

uht nnel1o

formanv

e n

l. allora

6,

S,

G.

0. T

è un

anello.

a e

La

prov.,l

è lasci..lta

collie

E.,ifciZiO

3 l.3-3.

S.

monoide.

a 00 0

ER i. commutativo,

operatore 9

cioè.

Matrici l

S. Dimostra -iolte.

ogni

Usando

2.

0,

5.

a per

per

h a

o

ni

e

b 63 n per

9.

cioè

a O

queitn

i1siit ma

a,

ngni b

b E 5.

EB .

a

Teorema

O

I

a

C.

dei

O. ni meri

si

l

.

naturali

v.

n,

0. N.

I . dove ..0,

v l .

L

denou ùin

puh

il

provare

Sc

LtCI1tt.

VOlPtll l.

3 J.P

e l oritmo

per

. b. C C S.

l ooleano

corollario,

.S.

1n ilriic

il qaasianello ingico.

a c

sotto e

polinomiale

è

e 0 e

Corollario

S è chiuso

Z,

un anello.

polinomiale.

le seguenti

Se

I

I

è

-b .

è unmwioide

S,9.0

un

a ed

proprietà I.

5.

quasianello

a.

l opposto a

Il seguente se soddisfa

quasiaiiello

per l ulteriore

in S ha c

con

V i sono

numeri,

operazioni

è det nita

soddisfa

elemento

comuni operazioni

che

denotato

Quasianelli Sia

non

0. T

elementoh

un su

si discute per

La 9,

numerici

si presenta

che Infine,

sistema

quasianelli.

Quindi

booleane,

su un

booleane

proprietà

differenti

matrici

moltiplicazione

possono

la moltiplicazione

per

tre

matrici

dalle

la moltiplicazione

moltiplicazione

anello,

campo

si definiscono

definire

può

tra

dipendono

la moltiplicazione

per

per

quasianello

moltiplicazione

paragrafo,

e campi.

trucco

migliori

e della

In questo

quasianelli,

e moltiplicazione

i cui

elementi

la

ntoltiplicazione torminu

tra un

anello.

m itrici

di

Straisen

tittuiutut

sb

qu tlunqcie

anelli.

le la

70á

Dimostra ione.

L algoritmo

2 x 2,

matrici elementi

che

della

stesse

formino

mente

ad

richiede

anello.

un

livello

ogni

che

soltanto

Pertanto,

a un

le

che

metodo

Il comune

corretta-

funziona

di Strassen

elementi

bit

per

1

di

L algoritmo dall esistenza tra

Strassen

dell

sottomatrici.

Di sene

opposto.

P,,

non

di Strassen

dipende

matrici

P , P......

prodotti

l algoritmo

Pertanto,

tra

moltiplicazione

la

per

modo

in

in generale

ancora

è di eseguire

troppo

di ii. Un

più

grandi

tutti

i calcoli

che

i risultati evitare

per

1. L Esercizio

n

la correttezza

si influenza

1 non

n

il modulo

con

lavorando

che

piunosto

metodo

modulo

avere

può

è che

preoccupante

più

i usa

Se

tmale

macchina

della

parola

Il fatto

diventare

possono

crescano

di mostrare

richiede

31.3-5

i quasianelli.

per

interi,

sono intermedi

i risultati

che

matrici

booleane.

prodotto

f

la differenza

coinvolgono

quattro

funziona

che

intermedi,

critico

matrice

una

quindi

elemento.

un

memorizzare

variabili

solo

la

pero,

ad n, richiedendo

fino

anche

grandi

singolo

un

Strassen.

di

usa

booleane

matrici

moltiplicare

per

dell algoritmo

adattamento

questo

f

R

di ricorsione.

tra

moltiplicazione

la

eseguire

può

On- .

in tempo

booleane

gli

matrici

si

Strassen,

di

l algoritmo

usando

Pertanto,

per

Poiché

anello.

implica

31.8

l algoritmo

induzione,

per

appartengano il corollario

anello,

stesso

dell algoritmo

correttezza

elementi

gli

a un

appartengono

matrice

da11a

dipende

di Strassen

707

mntrici

sulle

Operatori

31

Capitolo

dell algoritmo.

tra

Moltiplicazione

matrici

booleane Campi

L

algoritmo

non

di Strassen

il quasianello

poiché

è contenuto

in un

quasianello

sono

può

allora

naturali Strassen come

s stema non

booleano

dei

numeri

può

essere

teorema

Il seguente booleane

essere

sistema

usato

più

sottostante

un

semplice un

su

che degli

degli

è un

anello.

interi

un

trucco

e

la

è I-1

l algoritmo

anello

6.

L operatore

7.

un

31.

Mn

n x n di OMn

di operazioni

il numero

denota

allory

interi,

due

matrici

richieste

aritmetiche

ii x n possono

boolsane

per essere

mottiplicare

matrici

moltiplicate

usando

vo che

Dimostraziotre.

A e B le due

Siano

e sia

nutrici,

C

AB

nel

formare

cioè.

booleano,

quasianello

b,

c ga, r

non

Al

Invece

sul

di operare

l algoritmo

tra

ali moltiplic ione

dato

si calcola

boolc. QtlO.

quacianello

matrici

il prodotto usa

che

Mu

C operazi mi

con

di interi

sull anello

Si

nritmetiche.

è commutativa

migliori 4

degli

ha

per anelli

dei

tra

piuttosto

per

1

miglioro matrice

si possa

di Strassen,

quello

che.

sperare

si potrebbe

tipo

Essi

divisione.

di una

elementi

gli

di

dei

matrici

31.7

x n non

fortuna

e del

un

mai

campo. n x st

algoritnli

eventuali

sulla

probabilmente

più

corollario

di matrici

Quindi

basati

devono

ricorsione

Teorema

1 inversa.

essere

devono

della

passio

La moltiplicazione

un campo. llatlno

divide-et-impera

algoritmo

un

del

ai campi

forma

matrici

Per di oeni

le matrici

n X n non

teoria

sulla

che

Poiché

fruttuoso.

sia

l esten ione

matrici

la moltiplicazione

. -. 0,

Strassen

anelli.

esempio

ricorsivo

algoritmo

I. l insieme

n

sottostante

numeri e molte

reali

sui campi,

Sfortunatamente. Per

agli

qua ianelli

nutrici.

tra

approccio

si basa

miseramente.

se il sistema

anche

.

un campo. fallisce

31.8

per

ogni

spesso

di esecuzione.

questo

funzionare

per

C,

la

definire

è possibile

dai

i numeri in un

anelli

che

improbabile

Sembra ricnrsi

complessi

i numeri

1.

0,

elementi,

deg1i

campo

il tempo

migliorare

ulteriormente i

aritmetiche.

operazioisi

degli

invece

i campi

usando

..

Generalizzando

un

formare

spesso

possono Se

cioè. elernentobè

1.Tale

n

Q

a

R,

moltiplicazione

della

di esecuzione

il tempo

10

la commutatività.

anche

offrono Teorema

5.

1.

.0.

i reciproci

offrono

i campi

Poiché

efficiente.

,

ir X .

con

reali

i numeri

b c

a,

moltiplica ione.

bb

G

proprietà

ogni

nlla

rispetto

Stalechea

è denotato

di a ed

includono

modulo

interi

e gli

c

ulteriori

a per

b O

b

un itcverso

unelennntob

il reeipioeo

a G

cioè in S ha

nullo

0 ,esiste

di campi

Esempi

approicio

altro

S

chiamato

matrici

non

le due

se soddisfa

campo

è commutativo,

O

elemento

n c

31.3-4, tra

è un

0, T

G,

8,

S,

Ogni

il quasianello l Esercizio

moltiplicazione presenta

Un

di

se si considera

naturali

veda

un

i numeri

esempio,

anello ,

Si

ridurre

Il problema

anello.

Per

in cui

esempi

Sfortunatamente.

analogo. per

sono

di numeri

interi.

in modo

matrici

Vi

anello.

le matrici

anello

moltiplicare

per è un

non

grande

l insieme a un

presentu

1

0,

moltiplicare

per

esteso

,

sottoinsieme

un

moltiplicazione

alla

, v,

0,1

un

quasianello

direttamente

usato

essere

può

booleano

booleane.

teoria

campi.

pertanto Esercizi

c

.

gc l ,

3 7.3-1

di

L algoritmo

sul

fumion

Str ssen

sistema

dei

numeri

a, b ,

termine

di

somma

queita

è

3 se

e

sole

se

n,

f

0

n1entre

vale

I

ie

e

solo

ie

è l insieme cnmuni

ricostruit r

ct ll I

m rtrice

C

di

interi

iempliCcmente

confrnntanc1L

g

C 1ll

A

CO11

8 -

O ill il .

poiché

A1 n

-

tutti

i

operazioni

polinomi polinonii li

con di

caddi

ne ll i

interi

coeftiiienti ione

e

moltiplicazic ne .

O it- .

t

p r grato

2áA

o

sul

qua lancllo

beole ino

.

l

.

v.

w.

0.

I .

1.

0. r

variabile

8 ia -l il

O h1 ii

di

..

7 .v .

1

Ogni

e

Zr

dove e

snnn

le

Operatori

708

sulle

matrici

709

31

Capitolo

Ax Si dimostri

31.3-3

il Teorema

3 l.7

e iI corollario

Se A è invertibile,

i

31.3-4

che

Si mostri in un anello. che

il quasianello Cioè,

booleano che

si mostri

la struttura

algebrica

, v,

0,1

è impossibile

risultante

b.

sia

,

1

0,

aggiungere

non

può

un -

l

essere

incorporato

x

Si

deduca

che

se

i calcoli

tutti

del

nell algoritmo

Teorema

31.10

soluzione.

Sevi

n

Si mostri

31.3-6

un

I, l algoritmo

come

determinare

triangolo

se un dato

vertici

di tre

mutuamente

non

grafo

contiene

orientato

inversa

A

I8

31.

19

e

t

A

Ax

A-

i Ax

adiacenti .

dimostrare

due

che

x è l unica allora

soluzioni,sex ,

soluzione

Ar

Av

è l. 18

all equazione

come

b e

Ax

correttamente.

efficientemente

insieme

un

ancora

funziona

possiede

Si può

fossero

eseguiti

sono

Amodulo

un

A- b

è il vettore

anello.

un

essa

cosi

al quasianello

segue. 3I.3-5

31.

31.8.

iA x

AX

31.3-7

Si

che

mostri

3n

3L3-8

il prodotto

calcole

di

a calcolare

è riducibile

booleano

due

matrici

la chiusura

n x n sul

booleane

transitiva

di un

dato

quasianello In

di

orientato

grafo

questo

Si mostri

come

in tempo

On

la chiusura

calcolare -

transitiva

Si confronti

Ip, .

llCI

TRANSITIVE CLOSURE

di un dato

risultato

questo

con

grafo

orientato

le prestazioni

incognite.

Vi

sono

però

equazioni

è minore

del

procedura

di

della

n

allora

infinite se

le

equazioni

incognite,

31.4

Risoluzione

di equazioni

di sistemi

lineari

soluzioni

importante La

risoluzione

applicazioni. ogni R.

un

di

sistema

Un

elemento Questo

della

risolvere

espresso

un

problema

come

appartiene

a un

sistema

fondamentale

in

tra

un equazione tipicamente

campo,

lineari

di equazioni

in cui

matrici

reali

i numeri usando

che

approccio Ax

A

o sistema

di equazioni

lineari

v

in n incognite. .i,,

un

x,

a.,x,

c .x,

...

a,v

b,,

a..xe

...

a. v

b.,

il sistema e poi

A b.

numeri

la fattorizzazione

Presentazione

veloce

più

della

al

ha

n di

numero ricerca

La

di

è un problema

sovradeterminati

dei che

fattore

n equazioni

in pratica

numeri

in n incognite.

i lati

reali

numerica

è usata

quando

la rapprevi è

Fortunatamente

ideali.

è numericamente

un

, ottenendo

A

per

di instnbifità

esageratamente

invece LUP

di un

di

soluzione

soluzione.

entrambi

soffre

ad accumularsi

dei

alcun

è superiore

/a di

A.v

moltiplicare

approccio

Questo

il numero di A è minore

tipicamente avere

non

atcuna

lineari

o, n di

31.6.

paragrafo

risolvere

mobile

di essere

di equazioni

sistemi

tendono

approccio

altro

vantaggio a

problema

in virgola

sentazione

insieme

di

esistere

invertibile al numero Se

sottodeterminato

equazioni

non

sia

se il rango

potrebbe

di

A uguale

discussione.

breve

sistema

il numero

cui

di A sia

in generale.

sebbene

e puo

nel

affrontato

è quello di calcolare b, oppure x A

A

Un

Se

per

una

o. più

in

caso

il rango

meritano

31.4- ,

l Esercizio

è sovradeterminato

di arrotondamento

errori

un metodo

in cui

n di incognite

inconsistenti.

sarà al

caso

che

possibilitè

approssimate

Ritornando

diverse

LUP.

un

con

vettore

come

è un

lineari

essere

può

o del

matrice

fattorizzazione

Si comincia

equazioni

lineare

discute

paragrafo

chiamato

di

sistema

sono

del

principaImente del

31.1 .

è sottodetenninato.

il sistema

buone

altre

veda

si

occuperà

numero

il sistema

soluzioni

si

Teorema

dal

di h vertici

26.2.

paragrafo

ci

paragrafo.

equivalentemente

vertici.

ed

stabile

ha

l ulteriore

3.

1.UP

fattorizzazione

31.17

Clt À

Cljj1Xi

Un è

insieme

valori

di

detto

L idea

Il

Cl fX

soddisfi

perv ,.r....v che

sofuzione

del

sistema.

In

queiln

simultaneamente rafo

para

si

tratta

solo

tutte

le

il

caso

equazioni in

3 cui

vi

I.

I 7

della

fattorizzazione

LUP

è di trovare

tre

nsatrici

n x n L.

U e P tali

che

PA LU,

31.20

siano dove

CS,.lHi1I11C

Si

ll

possono

Ci

Cl

Cl

I ...

tC

I

Cg

U

ilZ10111

conioda

...

I 1

Ill

nente

X

P ii

Cl

111L

Cl

fl

I C.

le

riscrivere

equazioni

3

1. l 7

come

l equazione

L

matrice-vettore

/i

j

Ir,

i

O,

If

CCfLllV llCIltt. 111ClllC,

una

matrice

è

una

matrice

P

è

um

matrice

matrici

Le LUP

ill

è

U

delle

L.

U

trian

oltre

trian di e

m itrice

P

oltre

unitaria.

superiore

c

permutazione.

che A.

inferiore

Si

soddisfano mostrerh

l cqu izioi e che

ci

ni

I.20

3 inatriee

sono

invertibile

cltiam.ite A

ha

una irna

tale

fattori -a -ir ne t .ittorizzazior e.

I

llli

p011Ctlilo

A

l,. .. l

.X

l.

l

17, .

COlllC

e

Cl.

Avendo

trasvolo

una

l ttlorirear

ione

Ll

V per

A.

ii

puii

risolvi .

l cqii raion

3

I. I h

As

I

710

Capitolo

31

Operatori

risolvendo

solo

P si ottiene

l equazione

ne

sistemi

lineari

triangolari

equivalente

dell equazione

segue.

Pb che

Moltiplicando

dall Esercizio

la fattorizzazione

Usando

31.17 .

come

PAv

entrambi

31.1-2

i lati di Av

equivale

alla

b per

Pb.

Si puo

ora

l

k

risolvere

dovexè

risolvendo

quest equazione il vettore

due

sistemi

lineari

triangolari.

nella

i-esima

equazione

l

per

risolvere

y,.

l

la richiesto.

soluzione

Prima

si risolve

il sistema

sostituzione

a ritroso

triangolare

i -esima

equazione

y incognito

risolvere

con

un

il sistema

metodo

sostituzione

chiamato

triangolare

in avanti .

Dopo

in

aver

superiore.

trovato

y

per

il venore.v

avanti,

si può

1I X

si

poi

alla

opera

questo

riscrivere

l 1Xi

a

sostituzione

in avanti.

aa

oX

lla

i

ll

o

p

f

ilo

yj

alla

Date

U e y. si risolve

prima

equazione.

8 n- .

Poiché

tempo

Come U

è

prima la

per

triangolare

come

31.22

s

lg

fino

impiega

processo

il sistema

ll

ritroso

superiore. l

Ux

e

inferiore 3 1.21

il vettore

è analoga

Si definisca

L Pb per

avanti

y,

g

sostituzione

y, si può

y...

711

iLa

Ux,

y

y,,

matrici

i-I

,

LUx

in

si sostituiscono

permutazio-

si ottiene

31.20

In generale

sulle

Xg

ll p l

Y

Lls gXg

Y1

31.22 incognito

con

un

metodo

sostituzione

chiamato

.

a ritroso

Il vettore.v

è la Ll//

3Jf

llff

1 Ll//

tfp1

1

di Ax

b poiché

la matrice

di permutazione

P è invertibile

31.1-2

Esercizio

il,r

Ax

Vg ffXf/

/

/f

soluzione

.

i.n

i

i.

P-iLUx

. ,r

i

iinr ir

.

.n

Lv

P

Pertanto,

si possono

calcolare

x ..i ,

.....

xe una

dopo

l altra

come

segue

P- Pb b.

y /n . .L ir

Il prossimo

in

sostituzione

dati

rc 1..n .

iit avanti

Per

ha

i

a

l,

2,

triangolare

...,

riga

itsferiore

funzionano

la sostituzione

in avanti

e a ritroso

può

la fattorizzazione

LUP

oppure.

il sistema

si presenta n, l elemento

nfi

i e colonna

triangolare

inferiore

la permutazione

e Pb

j

l equazione

indica ha

di P in modo che

b,

P,

31.21

può

l e P

,

come

V

suo essere

I

31.2

in tempo

compatto 0 per

i-esimo

con

j w nfi .

elemento.

riscritta

8 n- . un

Ii

L è

liPV

È abbastanza y,

VA

Ora,

v,

b,

lp

chiarn

. Avendo IA

i

/ ., i

che trovato

come

Date

I v,

si puo y,

.hn

fPgl il

trovare lo

snitituire

P.

di permut azione

l

il

2

fori

/,,v, .

y

nell i

nella

terz

assume

procedura

i -2n-,.

trova.v

LUP-Soave che

la dimensione

P sia

rappresent tt

g

I IJ y,

le sostituzioni

combinando

dall array

e a

in avanti rc os L

nell attributo

n compaia

e che

z.

rr i. LJ I tnn do c

for

poiché seconda

la prima equazione.

equazione

fornisce

6

i equ irionc.

ottCtlCllCl l

i m

n

b

l

do vnto

d .v,. return

1

-.,

.r,

g

/fl

.v

ottenendo

usando

soI11t11 llofic che

L, U e b, la procedura

matrice

x ahi i y

.r.- ir

1

La

5

y, direttamente,

i pub

,i-

I

LUP-Sokv L,U,z.b

V.

sostituire

possnno

...

n.. g

r,

v,l. n-

l

ritroso.

4 l

-

.ir-

n

ji

3

lni

i. .

in generale.

-- -

Pertanto

Poiché

bg, ,

VA

n-

array

ag

lqg i

i

n-,

stessa.

4ii l

V .

risolvere

unitaria,

I

e poi

e a ritroso

comodeà

nella

come

di calcolare

avanti

L, P e b. Per

PA

di mostrare

il problema

Sostituzione

La

sarh

passo

affrontare

-

I

soitituzi inc dClllfo

nelle

ull indietro o/Ili

Ciclo

fnl.

il

teillp i

linee ti

4-5. iiccUXiAlle

vi

Poiché i

O ll- .

è

itn

ic1

iniplicito

nelle

la

712

Capitalo3I

Openuori

Come

esemp

5

6

i

2

0

0.1

0

1.4

3

5

4x

125

0

0

5

6

3

10.3

o di questi

metodi,

si consideri

il sistema

di equazioni

lineari

definito

sulle

matrici

713

da

ottenendo

3

x,

2.2

x,

l. 856

x,

cosi

10.3 6.32 -5.

la soluzione

569

richiesta

iiOVC

0.5 l A

2

0

3

5

4

5

6

3

-0.2

x

3.0 calcolando

x. e infine

prima ,

poi

una

fattorizzazione

x,.

0.1 b

Calcolo

12.5

di

LU

10.3 e si desideri

risol

vario

nell incognita

x

La

fattorizzazione

LUP

è

Si è appena

mostrato

invertibile,

possono

A.v 1 L

0.2

0

essere

1

0

n x n

0.571

l

5

6

3

0

1.4

2.2

trovata e

-1.856

0

0

1

1

0

1

0

0

po

Il

lettore

pu6

mostrare

LU

Poi.

nutrice

dalle

che

il sistema

L è composta

h a una

di

equazioni

cosi

i multipli

la prima

dai

caso. si -a-io te

della

forma

moltiplicatori

Si

equazione

seconda

causano

che

comincia variabile

la prima

siano

dalla

rimosse.

superiore-si

triangolare

una

trovare di A.

Ga ass. che

variabile

e la seconda

invertibile

deve LU

A

A possa

per

matrice

fattori

eliminata ione altre

matrice il sistema

LUP

A è una

questo

una

per risolvere

per

fattorizzazione in cui

In

è chiamato

si sottraggono

cosi

finché

una

il caso l .

LUP

e a ritroso

L e U si chiamano

equazione

prima

fattorizzaziotte

come con

P

matrici

equazioni

processo

U. La

due

equazioni.

successive

matrice

da

Si comincia

fattorizzazione della

quelle

questo

Rimane

Le

una

in avanti

arriva.

Si cioè.

I eliminazione

delle

variabili. L algoritmo LU puo

rispetto

da

e dalle

continua alla

0

la

per

rimossa

terza

LU.

i multipli

calcolata

le sostituzinni

equivalentemente

o

A

essere

usate

efficiente.

assente

prncesso

sottraendo si

0

P è

se può

lineari.

in madn

seomposizioise Il

U

b di equazioni

0

06

che essere

verificare

che

PA

LU.

Usando

la sostituzione

in avanti,

si risolve

Ls

per

una

per

scegliere

L

0

y,

10.3

0.6

l

0

y,

12.5

0.2

0.571

1

J.,

0.1

I, e U

Qq

a,

013

a,

ll

0

strategici

questa

A invertibile A.

ricorsi

n x n. Se n 1,

Per

n

vo.

si tagli A

Si vuole

costruire

a costruzione

l, allora

in quattro

uisa tattorizzazione è terminata.

poiché

si

parti

Pb

a y

l

realizzare

matrice

a A

Il

IIII

. -

ottenendo a 10.3 dove

i alcolando l ISpt tlO

prima i .C

y,,

poi

i

e

infine

y.

UsanJu

li

snitituzione

i

ritrnio.

ci

riiolvc

Ui

v è un

vettore

e sl

è uiri

n atrice

che

A ammette

colonna n

I

In se uente

di dimensione x

n

1.

Quindi.

scomposiziune

n

I . n

ui indo

è un I a1

vettore

ebra

delle

rig

di dimensione

matrici

i fi

ile

n verifii are

1.

7J4

Capitolo

31

Operatori

Si assume

A

matrice

di

la dimensione

output

elementi,

1V

-

che

U ha

il codice

matrice

0 sotto

1 su

riempite.

contenuta

quelle

diagonale

Pertanto

il codice

0 sopra

calcola

715

Poiché

LU-Sou z

non

si sa che

opera

su

Analogamente,

posizioni.

e degli

matrici

i oivs A .

e poiché

di riempire

la sua

attributo

nel

la diagonale

si preoccupa

L ha degli

saranno

posizioni

degli

non

di output

di A sia

sulle

la diagonale.

soltanto

la

poiché

nemmeno

elementi

gli

Ta

questi

queste

significativi

di L

e U. 0 nella

Gli

e ne11a

prima

e colonna w e dividendo

ogni

in dimensione

alla

A

seconda

di dimensione

n

matrice

della

l. Il termine

elemento

del

matrice

A

risultato

da

cui

scomposizione

vie

/a ,

formato , è una

pera,

è sottratta.

La

sono

rispettivamente

prendendo

il prodotto

matrice

1

n

matrice

x

1

n

vettori esterno

riga

LU-DECOK1POSlTION A

di i e l

x

che

I

n 1

n

/l

E

I 01VS A

corrisponde 2

risultante

for/

I ton

3

v v la

do

si

a,,

31. 3 4 è chiamata

il conrplemetrto ora

ricorsivamente

vsv la,

ad

dove

L

matrici,

fattorizzazione

una

inferiore

unitaria

e U

LU

del

complemento

di Schur.

Sia

è triangolare

superiore.

Allora,

usando

for

do

I

Il ciclo

for

Dentro

qua,. 4-6

linee

à

c,

Q

gli

elementi

gli

elementi

matrice

La cosi

la

Naturalmente, funziona

se

durante

U

0.

si dividerà

per

U. La ra è cha

temere

la divisione importante è

chiamata

la

per

nel

LU

sono

per

di

per

0

n per

pmssiino

numeri

ricorsiva

a se

cui

c uesto LV

la

di una

ricoriion .

riiultat nsairice Questa

L uso

LU

altri

0.

per

per

ulla

w,

n

I

l to n ti ,

l, u ,

che

. iella. non

comincia

il perno .,uno

elementi

del

del

vettore

dalla

eseguite

vettore w

linea

è determinato l,-

quando i sono

sono

2 si ripete come n.

all

a,,alla

e w.

alla

5. dove

linea

del

complemento

A stessa.

Poiché

di

Sehur

linea

la linea

sono

6. dove

calcolati

9 è interna

a tre

cicli,

usati

ricorsivo.

passo

3. Dentro

sono

w,

alle

ogni

per

linea

i vettori,.

determin ti

determinati

volta

una

w ,

il ciclo

for

v, è memorizzato

è memorizzato

linee

7-9

L

in I . e in u ,

Infine.

e memorizzati

LU-Dccowvosts ios

alle

aggiornare

per

nella

impiega

tempo

hgura

standard

ne r i

cui

tl

1

la strato i

tr isform viiine

Cl

C

descritto

si divide

che

dell i

Je

j

si può i

se

j

gli

di

elementi

stabilire

semplicemente

trasfnrmazione

cnntinua

LU-Dacciitvosmoi. signif

una

e aggiornare

Lo pseudocodice

sostituendu

questa

operazioni

in cui

Cioè

II

ra termine.

pm ed

permutazi mi

per

Calcolo

di

mutri i

nel

sempre

C lllt .lt

non

richiedono

ic stivi

corrispondenza

la matrice

tra

A cosi

che

ni riferimento

a mantenere

U sono ogni

elemento sia

è ottenuto

a I o u nn

un ottintizzazione -in

memorizzati

contenga

ottimizzazione

perquesta o

Mostra

di L ed

n

ae U che

dallo

non

loco

/ se

i

L quando

j le

pseudocodice

è ditTiciIe

verificare

la correttezza.

una

fattorizzazione

LUP

p ir tar ifa

J-

31.6. risultare

pollVl licro

A se ue

A. j

i vola

diagonale

matrice

OppUfC

illustra

procedura

perno.

funzion i

Tali

Non

31.1

della

la t ittorizzazione

delle

opera- ione

positive.

ed

elementi

P durante

nulli.

f t torizzuzinne

definite

dividerebbe

elementi

di permutazione

è chiamata

1

unitaria

di SchurA

Gli

gli

pe elementi

piccoli

per

0. Si prove

sc stituisce

m ttrice

simmetriche

I i fiat torizrazione

iter itivn

un i

si

complemento

del

e sono

perni

inferiore

nella

perché

di ricorsione.

passo

di dividere

è triangolare

U lo è.

funziona in alto

chiamati

di matrici matrici

non

L

poiché anche

a sinistra

è inclusa

di evitare

che

superiore

più

esso

percui

classe

cl iure

di dividere

Il codice cicln

ione

COll4Cnte

CSSD

noti

Si

metodo

questo

se l elemento

la fattorizzazione

matrice

LU.

è triangolare

a

nemmeno

è 0. poiché

un

fattorizzhzione

L lo è, e poiché

mente

a

i,

8n .

.

fornendo

Una

j

do

r , contiene

l

LU

evitare

for

I ,. contiene

U

esterno

che

e U. Gli

è, rr

VI l

LUP

1 to

c t

0

l

-I

anche

L ed

Cl

-I

k

g

g

l

i

S

l algebra

si ha

I

IA Ak

6

10 return

V I

1 ton

ll

7

è triangolare

-I

l

a.

LU,

delle

A

di A rispetto

5

Si calcola

A

di Schur

fori

i riforniva. è

tr wc

che

perni

v lori

delle

instabili

numericilc

Ilei

C

Si

llCOlo.

cere i

dui ue

ùi

LIS llC.

E. Olllc

rai di.

un ittin1irr iri mc

it. . si iic irdi

stessa.

I

che. dat i etna

motrice

A

n

x

n

invertibile,

i

desidera

tnivsre

un i

nutrice

di

sulle

Operatori

716

Capitolo

717

matrici

31

2

3

6

13

5

19

2

19

IO

23

4

10

11

31

1

5

2

3

l

3

4

2

4

1

16

9

1S

2

4

9

21

Q

a

5

3

1

2

5

j

3

5

matrice

A sarebbe

l ipotesi

che

LUP

b

zero

LU

v,v la,,

con

Schur

trovare

si puo

tale

P,

il che

invertibile

matrice

L,

inferiore

contraddice

fattorizzazione

una

induttivamente

triangolare

matrice

di permutazione

A è non

che

significherebbe

ciò

Di conseguenza di

e matrice

U

PA

ma

invertibile.

il complemento

per

superiore

è.

A sia

triangolare

che

.

d

c

Si definisce

.

L

.. .

U

di

matrice

è una

che

-2 .

31.1

Esercizio

ha

di

il prodotto

essendo

permutazione, Si

matrici

due

di

permutazione

ora

o QA

e pA . Figura

11 comportamento

31.1

è il perno, sopra

la

la

colonna

linea

complemento di

in

A

dalltr

negli

nuova

matrice

v/cr,z

eleinenri

una

P.

permutazione superiore

U tali

che

fat tori zzazione

LU.

alla

l,

posizione

invertibile

La

e

si muove

I

della il suo

perché

in

iruoi

la riga

Q a sinistra

U calcolati venicale.

Si opera

ora

sulla

e la

colo v a

conrplemerlto

di

elementi

di

destra .

II

d di

Le

complemento riga

linee a

fiirora

dir

e tn

in

di,

0 Ill

i k to

e lo

sinistrai

di

parte

-

grigio

.la,,

1

0

unitaria

si partiziona da zero

della

colonna

è 0. dai

Teoremi

la riga

l . il che

L

e

una

la matrice

solo

e 31.5.

o

U qcraneto

0, allora

mantenere

si puo

a,

A è non

una

A per

scrivere

gA

è triangolare in che questa

a.

matrice

n

lineare

crome

dividere

1

per

a,,

x

già

eccetto

1.

n fatto

che

Poiché

a 0.

sostituisce

I U,

ma

ii

a ora

si possono

la t ttorizzaeione

per

a

a,

eseguire

in questo

gli caso

a,

...

stes i si ha

a,. passi

le garanzia

e A di

è una

al,.ebra

vettore la matrice

di non

0

Come

U l

, Cl,

Il

complemento

di eq iazione

con

in

loco I se

0 /

ncll ultima

per

Schur avreblw

A

,,t.

I ,

determinante

invertibile u

altrimenti

peri hé itale

a

0

c

pertanto

la il

ecunda

determinante

m.,trii ch Il

il complementn

nella i j.

ciclo

matrice

inferiore

è triangolare

è anche

diversamente

derivazione.

di Schur

unitaria,

tale

L

è anche

U. da

quella

per

A

nv la,

per

la

LU.

la fattorizzazione

devono

sia

essere,noltiplicati

il

per

P. lo

LU-DEcoweosiviòv. un

tale

superiore,

di permutazione

ricorsione

gA

la che

colonna

L

Poiché

LUP.

la fattorizzazione U

Si noti a, ...

o

J

iiu

-iii

LU,

e, poiché

i

1

a ,,

come

QA

producendo

dove

I

A-

il sistema

a moltiplicare

Pertanto,

la

per

ad esempio

,

/au

- . ,, -. .

triangolare si è fatto

degli Per

è equivalente

31.1-2 .

matrice come

colonna,

prima

contiene 31.4

A,

t 0

Q

P

inferiore

Esercizio

P

la

con plera

passo

prossimo

Sclwrr

matrice

La

e la

Sc/n r .

so,u

finora

matrice

L calcolati

nero

2 i

LU.

la prinsa

1 con

di linea

è il perne .

a

b

a

della

siiristra

nero

L eleme rto

ele renti

c

diverso

Se

Gli

cornpleihento

A

un elemento

determinante

di permutazione

basso

a matrice

..

A.

a destra.

gli

Innanzitutto

matrice.

si scambia

di equazioni,

Sc ltur

inarrice

4 in del

triangolare

LU.

alla

sopra ,

scompensi -iodate

matrice PA

a-

fiiiora

3 nella

ricorsioire.

sono

parli ionaniento

Ucolcvlari di

L

è

grigiv

n in basso

efenienro

nel

il

di

tro

si L

e w

di

I. elemenro la

la b.

eompleinento

fattori- ,a ione.

matrice

vie

La

a

riga

la

elementi

gli

parte

rispettivcm,e,rte

matrice

rermina

e

di Sclrur

LU-Dvcoitvosmio .

è v/a e

g,-igio

ori -ontale

Schmprodotra

so o

di

iterativn.

A.

Per

Pertanto.

psudocudice migliorare

quando

tattorizzazione

la realizzazione

I i procedura

delle

termitr .

LUP ritorsione,

sostituisce i nuntiene

la

i

718

31

Capitolo

Operatori

salle

matrici

719

LUP-DECOhtPOM1ON A 1

n m

2

fori

3 4

1

2

0

2

.6

2

3

3

4

-2

I to

3

Q

5

4

2

do fi mi

4

-l

-2

3.4

robes A

fori-

I

Q

5

4

3

3

4

l

2

0

2

4

-1

-2

3A

a

I ton do

5

3

2

Q 2

.6 -l

s

z 1.6

-3.2

-2

.4

.2

-1

4.2

.6

5

4

2

.6

0

l

.4

4

.2

b

c

pm0

6

fori

nekton

7

do

if magi

9 10

5

5

4

2

.6

0

1.6

-3.2

A

.2

2

.6

0

1.6

-3.2

2

.6

0

1.6

4.2



4

.2

-1

4.2

.6

4

.2

.5

4

.5

2

p

then

8

3

l p

a

I

i

.4 .2

l

2

3

5

5

4

2

.4

4

d

3

5

1

.4

e

-3.2

0

ifp 0 then

Il scambia

rc l

fori

1ton

14

do

15

for

i

scambia

lO

-

a .,

C

Cl g

Cl g

for

i l.2

figura

alla

linea

trovata.

Se

t

tutti che

pio J con

zfl..

l elemento sopra.

alla

non

solo i

Schur

calcolato

iia

struttura

che

cnn

lu stesso

della

tempo

di esecuzione

tre

2

3

5

5

4

2

3

5

5

4

.4

.2

1

.4

-2

.4

.2

1

.4

-2

4

2

.6

0

1.6

-3.2

4

.2

.5

.2

.5

2

6

0

1.6

-3.2

.6

0

volta

che

I

n -k

x

1

fat tori

sono

Per

effettuare

scambiano

le

moltiplicuta

linee

IS-18

in questo cicli

caso

interni.

LU-Dcco vosmov,. un

righe

intere per

I,. e 1,. di perché

P ma

anche nello

prnticamente l algoritnto il tempo

le

linee

prevede di esecuzione l opei

azione

A

linee

inodo

della perno

1

I

0

0

l

0

quassio

se

Figura

31.2

/I crwiporrmnento

di

-6 uiancln

i Ii

i J

institivriii

ll

-7 ic

in

as tnli.

l.UP-Dvcoi vosmo .

La

a

matrice

di

i put

A cover la permuta-ione

che

metodo

n destra .

il complemento nella

loco

quarte

una

ed

d-f

Il

ultimo

pasni.

secondo.passu. j

II

g - il La

ter-op as .w

n.ioire

fattori

LUP.

Ness v PA

ulteriore

cànibiameitto

áccorre

nel

LU.

LU-

. A causa

crescita

è

31.4-2

Si

trovi

una

fa torizzaziane

5

6

LU

della

nutrice

del 4

costante.

31.4-3

.s-,

U

il

7

-7

12

Perché

il

mentre

il corrispondente

n 4

L

5-9

LUP-DEcowvoslttow causa

A

essere

cosi del

usato in

di operare

deve

13-14,

Interne

P

si scambiano

derivazione

v/a ,

è

colomba

1 restituiscono

perno,

alle

stesso

le linee

LU

10-1

z

l2 riiolva

.s -3

.4

comincia

prima

zzazinne

nella

che

esterno. nella

quelli

l operazione

righe

Pertanto, fzttnre

zero,

L*array

esterno

il ciclo tra

la cui

matrice.

for

grande

colonna

scambiate

una

Il ciclo

si attraversa più

prime

e si

di al più

scomponga

Esercizi

Si

2

. ,.

S

3E.4-1

.5

Il

,

Og

è invertibile.

la viene alle

tranne

8n .

nella non 12

dg

assoluto I

ir

Sono

uv

A

Ogni

matrice

linea è a.

perno

-

fa permutazione.

valore

ci con

elementi

gli

4

-2

g

LUP-Dacoweosmow

ricorsione.

dd a

5

.4

1 ton

Cl,

rappresentare

per

la matrice

orcowvosrrini . della

la

colonna

messa

come

2-3

l elemento

corrente

di

linee

4 realizza

determinano

rc k

illustra

alle

5

1

a

k

ClO

al izzato

3

IQgg

j

18

La

invertibile

I to n

17

inizi

non

rc l j

I-

16

-matrice

error

ciclo

l or

aila

line i.i In

i 4

di for

LUP-Dacowvosmo ill i

lince

2 di

è eseguito LU

P-Decow nsmoi

snlo

tino

è eseguito

a n

I trno

720

Operarori

31

Capito1o

Si risolva

31.4-4

essere

può

l equazione

vista

definiscono l

5

4

x,

2

0

3

x2

8

2

xe

12 -

colonna

essere

di n equazioni

un insieme

matrice

X come

di X e si ricordi

allora

può

9

come

la

il vettore

che

risolta

I inversa

rispetto

distinte

di A. unità

Per

della

essere

forma

A.v

colonna LUP

equazioni

b. Queste

di / .

la fattorizzazione

72 I

matrici

si denoti

precisi.

e, è l i-esima

a X usando

sulle

con

X, l i-esima

L equazione

31.24 ogni

A per

risolvere

e cosi

il calcolo

per

equazione S usando

5

la fattorizzazione

AX,

LUP.

e,

separatamente 31.4-5

Si descriva

la fattorizzazione

LUP

di una

matrice

diagonale.

31.4-6

Si descriva

la fattorizzazione

LUP

di una

matrice

di permutazione

è unica.

che

mostri

Si

31.4-T

che

come

b sul

trovare

che

l,

esistono

risolvere

matrici

non

n

m tali

n x n

invertibili

,

ni x is di reali

matrice

tt e una

vettore

ogni

un sistema v,

0,1 ,

xp di dimensione che

dell equazione

efficientemente

booleano

A sia una

vettore

un

rango

si può

quasianello

Si supponga

31.4-9

n

che

hanno

della

forma

fattorizzazione

essere

calcolata

tempo

8 r- .

Moltiplicazione

tra

di

Inversione

Sebbene

Ar

di equazioni

Si

mostra

di rango

m. dove

matrice

m

n. Si mostri

8 di dimensione By.

y c

per

x

n

RA-,

sia

come e

m

n

una

soluzione

una

se di

era

Strassen

mostra

si

teorico,

il

calcolo

motivato

che

la

la

dal

di

col

tecniche

l inversione

di matrici il tempo

denota

una

matrice

di

l inversa

la questione, matrice

tn

mostrare

metodo

usuale.

matrice

da

LUP

come

un

una

di

che

tempo

8n-.

secondo 8 ir- .

PA

In

risolvere.

una

LU.

una

enerale in tempo

fattorizzzzioi e

Usando

Poiché

sistema

di

di

una

di

matrici

alla

8 n-

la fattorizzazione A può

matrice

LUP

essere

tra

n x n ed

OMn .

che

si

effetti,

matrici

ln

O l it .

tra

moltiplicazione In

moItiplicazione

due

n x n, allora Mn

nella

matrici.

moltiplicare

3I.l

l

interessante

da

di X

di A puo

determinata

in

prova matrici,

ln

denota

Si dimostra

è relativamente

questo

facile,

matrici

una

implichi

qualcosa

di

nel

seguente.

senso

il tempo

Se

in eizire

per

risultato

in due

si mostra

quindi

forte

più

che

parti ln

moltiplicaziane

La

non

è piis

dell inversione

gravosa

fatto,

sistema

lineare

per

di regolarità

nxn

O l 11 .

in tempo

Dimostrazioite. definisce

puntatati

veloce

più il lavoro

invertire

la condizione

una

fattorixzazione

LU-Soi.vE,

si può

la f ttorizz azione

di equnzioni u

volta

O In- ,

LUP

della cl1e

di una

LUP

forma si

t versioni

sia

matrice

risolvere

c tcolata

ùell equazione

b

da con la

A nella

A ma un

non

ritardo

fattorizzazione Ar

matrice

n x n in tempo

l 3n

O1n .

1n,

allora

fn

dove

Q n-

e li

mnltiplicare

si possono

soddisfa due

matrici

Siano

n x n

A e B matrici

la matrice

D di dimensione

3n

si vuole

la loro

calcolare

matrice

C.

prodotto

x 3n

usando

originale

di essere

potrebbe

I

A

0

IB

0

0

D

sa

di

0

l

D è

LUP

fortna

un equuzione

dipende Ax

una

In

usata un

Se è possibile

b che

di tre

della da ag

b. si

differiicano

L. U

risnlvere

un

dell ordine

di

può

di

A. solo

i

D-

b in

forma. .z

iuntivo LUP

matrici

possono

e quoti Si

per .

tdi

puo

Ols .

AB

0

I.

0

0

si

puo

costruire

A1 n

Rf.

4

8 I

calcolate la

daIlaconcliziohe

L equ ninne AX I

velocità

è equivalente

che

I -A di uvere

e P tali

A

e inversione

maggior

per

invertibile

si mostra

L inve

Si suppnt1ga

in tempo Poiché

ili

matrice.

essere

essere

Di

stai

più

di possa

possa

matrici.

risolvere

per

numerii amente

calcolare

una

moltiplicazione

problema

che

usare

anche

utilizzata

praticamente

decomposizione

Si discute

dell inversa

per

venga

necessario

modo

matrice.

Strassen

dell inversa

Calcoio

trovata 8 n. .

OMn .

non

invece

è talvolta in

di una

velocemente

più

l inversa

l inversione

per

Mn

prima

b.

di matrice

preferendo

LUP,

l inversa

l algoritmo

risolto

lineari,

fattorizzazione

calcolare vista

I inversione

paragrafo

questo

8n ,

essere tempo

matrici

equazioni

di la

X, puo

matrici

come

ora velocità

maggior

0,1 .

forma.i

della

sottodeterminata

generalmente

sistemi come

Ogni

di A richiede

in tempo

Teorema

31.5

a X,. LUP

LU.

Si mostri Ax

ogni

per

fattorizzazioni

3L4-8

A e si dimostri

rispetto

dalla

Oln .

il prodotto matrice

D di

A B prendendo in

tempo

rcgolarith

la

iu

1n.

n

sott matrice

Ol

O n-

e si Pertanto

si

x

invertire

pun ha

u di

DD

in in

alto

tempo

a deitra. O 1 3n

Si

722

Capitolo

31 gpgratori

Si

noti

valore.

che

In

Per

soddisfa

soàdisfa

esempio,

la condizione

se

la condizione

ln

di

8 n Ig

n

ln

regolarità

per



non

presenta

costante

qualunque

c

0,

sbalzi di grandi d 0, allora 1 ii

di regolarità.

r. CB-

S-

Poiché Riduzione

dell

inversione

di

matrici

di

si

dimostrazione

matrici

che

si basa

dimostrate

su

l inversione

alcune

di delle

proprietà

al paragrafo

matrici

non

matrici

è più

di matrici

matrici

della

gravosa

simmetriche

moltiplicazione

definite

tra

che

positive

saranno

4M n

21 n/2

OMn

0Mn

Se è possibile

moltiplicare

e Mn

OMn

matrice

i

itzversione

L

due

k

x n invertibile

matrici n,

di reali

è piii

allora

in tempo

della

gravosa

n x n di reali

k

0

per

non

si

Mn,

calcolare

dove

Mn

l inversa

di

Q nqualunque

OMn .

Si può

supporre

che

n sia

una

esatta

potenza

di 2. poiché

trucco,

allora,

,- . per

qualsiasi

k

fino

a una

dimensione

soluzione

che

è la successiva allargato.

problema

allargamento

non

Per

il momento.

positiva.

Si

l tale

causa

una

che

di

tempo

la matrice

A in quattro

partiziona

una

la soluzione

regolurità

su

di esecuzione

per

A di dimensione

sottamatrici

di 2, si allarga

potenza

di 2 e si ottiene

condizione del

k sia

n

potenza

La

crescita

si assuma

che

i

A

Mn più

richiesta

assicura

di un

fattore

infine

la matrice

che

simmetrico

La

e definita

per

8-

8

C

I,

esistono

paragrafo

è1.6,

si ottiene

P

Le equazioni che

CB

CB-

B-

a B, si ha

Il.

matrice

qualsiasi

A è una

invertibile

di invertire

matrice

ma

la Il

31.6 .

AA

invertibile

non A.

Teorema

dal

positiva

problema

tra

A è invertibile

.

n x n, si ha

le

usando

una

l slgoritmo AI.

per

matrice

ottenere

A per

inversa

è unica.

A A, quindi

divide-et-impera

Ognuno

di questi

visto

tre

Allora,

invertire

e

precedentemente tempo

richiede

passi

si può A AA

la matrice

O bf n .

del

Teorema

31.12

suggerisce

AI.

per

ottenendo

calcolando

una

rispetto

un metodo

la procedura richiede

fa

torizzazione

LU.

il lato

LUP-DEcos

meno

allora

cosmo

operazioni

aritmetiche

Si

la matrice

si usano

Quindi

Sebbene

non

AA

funziona

molto

meglio

un fa tore

costante

influenza

sia

la

definita

in avanti

e a ritroso

teoricamente

i n pratica.

La fat tori zzazione

e per

versi

certi

b lati

i

simmetrica

metodo

questo

Ax

entrambi

le sostituzioni

Alfa.

per

l equazione

moltiplicano

trasformazione

Questa

scomporre

destro

risolvere

per

invertibile. A b.

v

si può

a x con

è

A

AIA

A è invertibile

poiché

se

perno.

ha proprietà

migliori.

CiS-

si pun

sia

8 che e 8

e 31.7

di

Sia

Mn

richiesto ese .uendo e,letinitu

S so o CS

possono

31.5-1

3 l.27

verificare

se A è simn,etriea

4 moltiplic,.i ioni

1, moltiplicazione

iimmetri he CB S allora

matrici

empiere n/

dai

pc,siti, .

e definite

Lemmi positive.

tra

n,atrici.

è1.13.

3 l.l4

Dal

l Esercizio

Le

zione

m,trici

e 3 l. l5 31.1

31.é-2 per

speci

t ilare

u

oritmo

ricordai

per

calcolare

eyQuzdrato

Sin

Mn

calcnlare

al

tempn

moltiplicare il quadrato

di matrici

matrici di una

n x n e si

Sn

che

le stesse

essenzialmente

presentano

con

denoti

n x n. Si mostri

matrice

il tempo

la moltiplica-

ditticoltè

S0t

3.

. usate

il per

8Mn .

nel

il

tempo

Ill

fattorizzazione

vo 7iolle

x n/2

e

dittlcolth

CT

per

A a

quando

AA

il risultato

l operazione

risolvere

i. ,

X

Esercizi

s-i

come

poiché CB

31.6

preveda

c. a-

C

S-

di A rispetto

oca

-

AA e S-

moltiplicazione

l1

3 l.26

-s

poiché

àella

quando

e definita

di invertire

AI per

positiva

eseguire

numeriche

C

di Schur

-

definita

soluzinnex

LUP

il complemento

8-

è che

base

che

AA

dimostrazione

corretto.

A

in tempo

asintotico di matrici

31.1-3

il problema

moltiplicando

prima

delI equazione

posto CB

matrici

per

eseguita

R

positiva

5D

esecuzione

costante.

31.25

Allora.

di

sull osservazione

moltiplicando

senza

x n sia

algoritmo

dalla questo

x n/2

n/2

di

l inversione

per

da11 Esercizio

A A

A-

simmetrica scegliendo

un essere

può

- AI,

AA

poiché calcolare

0. Pertanto,

del

si basa

tempo

Lapidea

positiva.

è di ridurre

AA

il

anche

è simmetrica

riduzione

A- -

si ha

che

ottenuto

e definita AA

usando

positive

On-

dimostrare

essere

matrice

La Dimostrazioite.

da può

simmetrica

in tempo

può

matrici

moltiplicazione

x n/2

n/2

definite

.

31.6.

31.12

matrici

simmetriche

2I nl2

Rimane Teorema

moltiplicare

possono

ln La

723

- I

l gg

g

l inversione

a moltiplicazione

matrici

i

i T.

gg

sulle

3 I..S-3

Sia richicsto

Mn

la

per

fdttofizzazione Ln

il

moltiplicare

motrici

LUP

di

LUP

di

una

n

x

si e

matrice

111 ittici

ia

Ln

X n.

n

Si

il

richiesto

tenipo

mostri

che

l

eiiell/iJhllcrlte

presel1tmlo

per

mo1tiplicule

stesse

il

tempo

O hf irll.

tempo

percaholsre

per

moltiplicarc il aletcnninante

matrici iliuna

n

x

n

i wlriccn

e

si

lunati x

i.

con Si

moitti

1 che

il i

alcole

724

3I

Capitolo

del

determinante

non

è

più

della

gravoso

moltiplicazione

tra

Dn

matrici

8 M ir .

Dimostra ione.

Il

dimostrare 31.5-4

Mn

Sia

il

richiesto che

31.5-5

tempo

Mn

e Tn

per

l inversione

elementi

gli

Giustificare

31.5-6

booleane di una

n x r

matrice

e sia

Tn

il tempo

boaleana

n x n. Si mastri

di

della

una

matrice

matrice

sono

basato

sul

Teorema

31.12

da

presi

un

campo

di

di numeri

correttamente.

complessi

A

che

invece

complesso

è ottenuta

dalla

coniugato.

hermitiane

che

sono

che

di una

la

trasposta

di

A,

si

Matrici

Le

simmetriche

matrici

simmetriche

esempio.

sono

definite

invertibili

delle

proprietà

matrici

per

simmetriche

descrivere

per

0. In

una

LU

questo

usi

la

in

dei

x

con

az

il 0,

le matrici

minimi

A è definita

proprietà eseguita

e si mostrerà

approssimato

di

su

esse

alcune

definita

essenziali

proprietà e sia

positiva

A,

anche

A una

è definita

del

positiva.

di A.

portante

A una

Sia

di Schur.

complemento

sottomatrice

matrice A come

Si partiziona

Per

senza

31.28

la

importanti

un applicazione il

e quindi

positiva

ad

ora

passa

simmetrica

e utili.

alcune

attraverso

Si

quadrati

interessanti

si dimostreranno

positive

modo

.

trasposta

elemento

si considerino

essere

puo

paragrafo,

definite

curva

molte

presentano

fattorizzazione

l . e sia

di dimensione

zero

AI.

e metodo

positive

positive

e la

di dividere

preoccupazione

sante

defmite

non

Per

è ovvio.

simmetrica

A sia

colonna

segue

-

affinché

poiché

31.6

di

portante vettore

sia x un

funziona

ogni

simmetriche,

A

matrice

generalizzazione

di A sostituendo

di matrici

A tali

che

della

trasposta

Invece matrici

l inversione

per

e si dimostri

Suggerimento

eosriugata

31.12

sottomatrice

positiva,

si ha

Allora

2

modulo

I

al Teorema

ogni

che

.

funziona

interi

fatto

A,. è definita come

A partizionata

O Af ir lps .

l algoritmo

matrici

suo

transitiva

la risposta.

Si generalizzi tratti

matrici

la chiusura

8Tn

L algoritmo quando

moltiplicare

per

trovare

per

che

dei

di

il complemento

Allora,

interes-

metodo

ad A,

di A rispetto

Schur

come

è definito

I

minimi

S

C

B

BA,

31.29

quadrati. La

prima

che

proprietà

si dimostra

è forse

quella

31.14,

S è ben

definita.

Dal

importante.

più

lemma

ed

consistente Lemma

31.

Il prossimo simmetrica

Qualsiasi

Dimostra ione. un

definita

Si supponga vettore

non

che

nullo.i

una

tale

è invertibile.

positiva

m t trice

che

A

A sia 0.

non

definite

invertibile.

Allora.

dal

0 e A non

Quindi,.v A.v

coro essere

pu

1ario

31.3.

Lu

che a senza

posith

sotton . trici

di A. dalle

stato

usato

della

fattorizzazione

prime

Si

si puo

eseguire

dividere

per

dettni ce

la

/ righe

e dalle

una

0 i più t-eiinu prime

fattoriztazione

complessa

LU Si cominciu

suttoutatriee l colonne

portante

su

una

matrice.À

provando di

simmetrica

proprietà

A come

Se

Se

A

iintn etrie i

una

31.29

positiva definizione

la prinia

l

ponendo

del

31.23

per

il lemma

complemento

di

esiste

A,-

31.13 Schur

è

l.

che

mostra

sono

esse

Teorema

le

31.12 LU

e il suo matrici

per

di

complemento

matrici

matrici

stesse

corollario

Schur

e definite

simmetriche

è necessario definite

simmetriche

di

matrici

simmetriche è

la correttezza

dimostrare

per

risultato

Questo

positive.

positive.

c

cletii it

iimiuetriia

de

tnita

pi sili .i.

alloru

l

u

ni

sotlomalrice

del

complevreitto

simmetrica

definita

Lemma

matrice complemento

di 5ehtcr è una

e A

positiva

ad A,

di A rispettn

di Schur

sottomatrice

è sitnmetriia

di A. allora

portante e detrnita

positiva.

Ia matrice.1

di A.

Dimostra-ioide. è

det nit

y

e

Per negatrice

15

3l.

la matrice

di certe

.3/.14 è

nel

A è una

i

Lemma

che

allora

IR

dinsnstrazione

form. ta

lemma

positive

Lesnitta

definita

noti

definii

l1V, 1.

pOS

Si

la definizione

con

e definita

simmetrica

13 matrice

esiste



portante

di

A

è

Dall

qualunque -

computibili

con

-

poiitiv i.

I

consideri

vettore.i-

non A,

e

segiie

31.1-7

Esercizio Si

positiva.

C,

la

p ,rtizi ,ve

nullo.

si

ri pettivuincnte.

, J .

h tar .i

che

5

eli

A P

0

Poiché

per

nell

equ,.vinne

ipotesi. A-

da

Rimane

è simmetrica. data

Si eiiste.

spezzi.v si

ha

mostrare h.

31. in

due

sottovettori

che

5

Operatori

y y

,Tg

i, A -

-

B

Tg ,

y

,T/T

Tp

y

A, y A -.

FX

B,

B

C-BA -.

C

risulta

,

C,X

essere

C. l--

un

polinomio

n

in.

31.30 come per magia. completamento

del Poichéx Ax

nullo

e quindi

si scelga

zione

31.30 ,

lasciando Bz

Ax

come

valore

eseguendo

le moltiplicazioni.

della

quadrato

0 vale

z C

Scegliendo

verifichi

Si

al

forma

quadratica.

vettorex

perqualunque y -A B

che

non

causa

equazione

Quest ultima veda

Si

nullo,

l Esercizio

si prenda

l eliminazione

che

dell equa-

non

x Ax

0, pertanto

Sia

del vettore

fattorizzazione

LU

dei

L interpolazione

simmetrica

matrici

. l, l ,

. ,

e che

si sappia

che

F .s

tulle

simmetrica

corollario

ogni da cui

definita

tutti

definita

perno

si ottiene

il compIemento

che

non

positiva

mai

provoca

siano

proverà

è strettamente

positivo.

a

0. Poiché

e, Ae

di Schur

i perni

Si

positiva.

di A rispetto

il primo

ad A,

a

insieme

simmetriche

,i,t

F dipende

dal

somma

è t.

perno

della

passo

j

dove

gli

conoscenzs

fi .i ,

f

nel

scelto modo

per

scegliere

n, si arriva

ad un

migliore

di punti

definite

positive.

media te

f

una

curva

Si supponga

è un

che

sia

importante

dato

un

non

n, ma insieme

s per

c,, si possa

vanno

oltre

come

di.r

ottenere

una

esatta,

la portata

sovradeterminato ora

valori

n significativa-

necessariamente

Si mostra

possibile.

di

scegliere

i coefficienti

31.31 . di misurazione

nei

di questo di equazioni

ciò

essere

puo

fatto.

f -i ,

.i ,

di valori

coefficienti

applicazio-

.

f .v

.

f . ,

delle

funzioni

di base

di dimensione

i

insieme

nei

richiesto.

dati

punti

cioè

j

fj X

Sia

c

c

il venore

Allora,

-i

f

i

fi -i

f. -i-

y r.

fi - ,

f. x ,

f .i. ,

f

i c.

c

,

F x,

di in punti

F x,

Xw ,

y

sono

soggetti

a errori

di misurazione.

Si vorrebbe

determinare

una

Fx,

m,doveglierroridiapprossimazione che

problema

si sta

Lafnrmadellzfunzione

q,sianopiccoli.

trattando.

tn questa

sede,

l

si assume

che

abbia

è il vettore

q Ac

la torma

di

linearmente

è

il

vettore

ir di

addendi

problema

e le specil che

si sta

tn t

clie md .

fun ioni Una

di scelta

base

f, sono

comune

è fr

scelte

basandoii .vi- .

da

sulla cui

dimensione

m di

di

dimensione

m

minimizzare

vettore

.

di

valori previsti

s. Pertanto,

per

-y

I

del

volta

è meglio

ma

errori

il valore

prevedere

bene

dell equazione

31.15

31.3

c, f, r

il numero

scegliendo

teorici

s

degli

eh

perata

g

f. - .

la matrice dei

Per

Fx

f -

positivi.

g,, ...,

fi fio x

Ac

2 ...

I. 2,

una

risolvere

per

Di solito

significativa,

principi

ciascun

pesantemente

è usata

osservati. che,

esatto

Sia

una

di più

il lemma

,

risente

A

qualcosa

Il primo

annodo

alto

quando

quadrati

di un dato

ne delle

peri

matrice

produce

minimi

F .i-,

matrice

unitario,

induzione,

per

funzione

una

A una

dell asserzione e, il primo

Metodo

di

alcuni

caso.

in

un approssimazione

Esistono

si desidera

risultati

precedentemente

dia

727

l in.i.

cosi

di m e sperare

che

In ogni

che

S

0.

per

implica,

una

PSz

D

LU

Dimostra ione.

y,

c 0, si ha dunque

31.1á

divisione

forte

--

qualunque

positiva.

fattorizzazione

Sia

Per

F di grado

miseri

piccolo F

dati.

punti

dell espressione.

Corollario

La

più

funzione

AS--

dà stati

n

calcolare

può

matrici

i

Cl-

di grado

si

funzione

siano

mente

testo. è definita

una

e generalmente non

vettore

termine

primo

Tuttavia,

31.6-2.

un qualsiasi

del

equivale

...

su11e

llell- pii

de li

gli errori

q,

errnri he

degli di

Fornisce

errori

di

approssi ssa

iosie

appr iiiimazione. una

s in -ir ne

ri ai

sceglie miprinri

. di

miniinizzare

quactrati,

la dato

che

norma

del

Opemrori

sulle

matrici

Poiché

Itl

Il ll. -II - Il

It

-3

Z il

si può

ji

minimizzare

25

fg f derivando

rispetto

g -

ad

ogni

c,.e

uguagliando

quindi

il risultato Fx

ao /2 il

0. 2 14 x

0. 757

31.32

ga,,c,.-y a,, o.

k

l .2

jl

e Le

n equazioni

31.32

v A

Ac oppure,

k

per

l,

2,,

n sono

equivalenti

alla

singola

equazione

matriciale

0

equivalentemente

usi

si

l Esercizio

31.1-3 ,

a 4

3

Ago Ac-y che

implica

TQ

In

g

/Tp

31.33

statistica

è chiamata

questa

l Esercizio

31.1-3,

Quindi,

equazione

e se A ha

esiste

AA

rango

di

e la soluzione

normale. colonna

La

all equazione

matrice

AA AA

allora

pieno,

risulta

è anche

simmetrica. definita

per

.vomn a

degli

A y, la

A

A non con

sia

semplice

A

esempio

è

chiamata della

generalizzazione

l equazione gi confmnti h soluzione come esatta

quadrata.

la soluzione

Come

AA

è una

pseudoinversa

AI

di applicazione

dei

minimi

31.34

la pseudoinversa

della

nozione

inversa

di matrice

come

di Ax

soluzione

matrice

A.

al caso

approssimata

si supponga

di avere

i seguenti

La

A

di Ac

-

, ,

mostrati

. ,

in nero

F .i

r.,

,0 ,

nella

0.300

0.200

O. IOO

-O.

-0.388

0.093

0.190

0.193

-0.088

0. 060 Mol

iplicando

c

-0.757

cinque

.3.

Si desidera

trovare

un

polinomio

quadratico

che

A

comincia

con

la

matrice

dei

valori

l

Xi

l

-1

I

l

X

1

l

1

I

2

4

I

3

l

.v,

- i

I

.v,

J

1

xe

nne

linea

grigi t.

-0.

036

-0.

A

. si ottiene

-0.

04S

Q36

IOO

0. 060

y per

il vettore

dei

coefficienti

corrisponde

al

1.200

polinomio

0.757.r

quadratico

0.214.x--

punti. he

Si

c rm

0. 214

3

F .i tali

nr strc r

c r-

cpv

interpoli

i

1. 200

,3 ,

figura

pruttu

y

punti -

ciascirn

per

0.500

in cui

b.

quadrati,

L errore

è

pseudoinversa

31.34 matrice

i.

quadrerie

è

31.33

A A -iAgy

dove

errori

positiva.

la cui

c

che

5

0

J

9 S

della

fusione

di

base

i la

migliorè

approssimazione

quadratica

dei

punti

dati

rispetto

Ql metodo

dei

mini ni

quadrati.

A A

si i

Teorem i

invertibile 31.6.

petvhé

è simnlctrii i

e definiti

positiva.

Si

veda

I Esercizio

31.

l-3

e il

730

.

Capirolo

31 Operatori

sulle

matrici

731

Esercizi a.

SimostricheR 0,1 ,8,

Siano

31.6-I

Si dimostri

che

A

suo

della

diagonale

di una

matrice

simmetrica

detmita

Si

una

tb

determinante

simile

matrice

ac

a quello

simmetrica

b- è

usato

positivo

nella

2 x 2 definita

che

b. del

dimostrazione

del

lemma

Si dimostri sulla

3L6-4

che

allora

sia

a , 0.

1, allora

sia

a ,

casuali

sono

massimo

di una

matrice

il determinante

definita

di

ciascuna

positiva

è positivo.

simmetrica

definita

positiva

Si mostri e per

sta

I-esima

sottomatrice

sottomatrice

di

portante

una

d.

matrice

che,

tutte

Si dia

un algoritmo

n x n nel

denoti

Si

con

definita

A .la Si

positiva.

fattorizzazione

3I.6-6

trovi

Si

Ci

che

sia

CX

2,

Si mostri

3,

che

1

matrice

A

è il I -esimo

det A, ldet A,, det Aq

durante

perno

la

1.

3I-2

Sistemi

Si consideri

l

3,

4.

ai minimi

quadrati

per

A

i punti

8.

A

pseudoinversa

soddisfa

le quattro

seguenti

para

rato

non

puo

essere

quasianelln usano

0

0

0

A A,

b.

Si risolva

A A. c.

Si

trovi

Si

mostri

di S/ramir

0.

1 ,v.

pei-

che

r . O, I

non

su

parole

moltiplicare

moltiplica-ione

I algoritmo

direttamente

aritmetiche

Strassen

la

per

si è osservato

applicato

Q

di

0

A

operazioni

metodo

-1

Si

33.3.

alla è un di

di aratrici

di Strassen

melln. O lgn

m,tri i

di

Il Teorema bit.

booleane

si

booleane

la moltiplicazione

per

mr ltiplicazione

nutrici

31.10 potrebbe

nxn

in

di m itrici

t ooleane ha

dimostrato

COl11llllCfllC

tempo

On

e.

perché

il

he se ipplic tre

ii

.

trovi

iud

ere

un

et ticienza

para

omihile

nu

con

qualche

piccolo

margine

0

2

0 implica

c

A

corretti

di tempo g con

che è

un

1/2.

probabilità

c

Os -

dato

0. Si mostri

.

che

calcoli l

almeno

sugli

non

volta

una

Ipi

c

Le

scelte

che

assuma

E ii- . Si mostri

al più

almeno

probabilità

consentite

di

0

0

0

0

-I

0

2

-I

I

-1

0

di errore.

una

c.

1-

il prodotto

di due

delle

elementi

la probabilith

è almeno

I/n

per

e. matrici costante

qualsiasi

matrici

i valori

mai

che

v,

sono

r

e O.

ioni

equa

lineari

2

fattorizzazione

l equazione l inversa

positiva

ria alta

in tempo

basato

sulla

Si moslri

A.

per l

l

I l usando

On

vettore

qualsiasi eseguendo

una

determinazione

di A

in avanti

le sostituzioni

e a ritroso.

fattorizzazione

n x ir tridiaeonale,

dimensione

fattorizzazione caso

ii. I equazione LU.

Si deduca

simmetrica, Ax

che

più

A n x n tridi vnale

n. I equaziune

A.i-

b puo

metodò costoso. e per

e invertibile

essere

risolta

essere

b può

qualuttque

è asintoticamente

peggiore

di dimensione

b di dimensione

una

di

b di dimensione

nel

nutrice

qualsiasi

A

matrice

qualsiasi

e per

becher

eceeuende

Ax

per

vettore

qualiiaii

LU

di A.

che

definita

in 1cmpo

Obi

LUP.

il

l qc,esl 31-3

rqg

0 con

a

tridiagonale

-l

2

0

a.

L algoritnro

tridiagonali

l

A, A,

d.

Nel

g.

quasianello

equazioni

Problemi

31-I

che

matrice

valori

i loro

operazioni

la matrice

-l rispetto

nel

simmetrica

forma

approssimazione

della

booleano

uniche

e sia

0, la probabilith

randomizzato

quasianello k. Le

AA

AA A

una

C-

1,

AA A A

che

portante

convenzione

per

della

la migliore

1,

1,

dimostri dove

la funzione

FX

31.á-7

LU,

di

e

indipendenti

le c , assumano

AB

c

1/2.

qualsiasi

scelte

1/2

C

randomizzata

elemento.

R. Si mostri

probabilità

per

Ig ii -le

positiva 31.6-5

1 con

n x it e sia procedura

probabilità ogni

per

A B nsll.anello

c. c

booleane

la seguente

1 con

indipendenti

31.15.

che

che

simmetrica

C

matrici

A usando

0,

implica

diagonale.

dimostri

Si

l elemento

da

a ,,

se a

Sia

in modo

quadrato ,

due

b

se a,,

il

completamento

il

per

Si dimostri

positiva.

c. 31.6-3

A

generi

r,0,1 ,dove8èlafunzioneXOR oresclusivo ,èunanello.

e 8

a,

b

a Sia

elemento

è positivo.

positiva

31.6-2

ogni

A

Un

Spliste mctud

cubiche.

cv-

pratico

per

Si tdato

dv pcri

un

0,

interpolare

it iieme

I....,

un v,.

n

I.

y,

cl 1VCXC

ij

ii1iieme i 0,

I...,.

Ilfl.

lll

nn

plinti y

Il ii tcrv llo

di

n

un l coppie

r ,

cure

i, ci di

valori

e il x

ui trc

1e

spline

r ppreientanti

l irc lcll

i cutxa

l

Capitolo31

732

Operatori

è dato

da j x

nodi.

Per

Per

x.

fv

semplicità,

I punti

ai quali che

la continuità

garantire

.r

si assume di x ,

i polinomi

x,

i per

cubici

i

si richiede

0,

I,

attaccati

sono

...,

sono

chiamati

La

n.

che

di allora,

f

f .i

f, o

0

era

ulteriormente. stato

/ x,

dell algoritmo

pubblicazione

Prima

y,

Il limite

O n-

asintotico

La

i

0,

l,

continuità

...,

o

della

1. Per

che

garantire

derivata

in ogni

prima

non

fx

sia

eccessivamente

spigolosa,

si richiede

la

nodo.

Paterson

155 .

è dovuto

booleane

Teorema

a Coppersmith

. ,,i

f,.

i

per a.

0,

i,

f,. i o

...,

n

Si supponga ma

dei

calcolare

i 4n

valori

che

per

i

0,

.v

1, ..., 1

0

Si usino

i vincoli

queste

ipotesi

c.

Si

mostri

2Dp

3y

2D

3 y,

Si

riscrivano D,

...,

a nuova

un

al

nodi.

si possono

derivate

Un

anche e

prime

metodo

ultimo

Strang

è quello

una

f .r

derivata

seconda

xe

si assume

che

cubica

nati raie.

plina

mostrare

per

0

f

che

0 e

f

i

per

I. 2, ...,

n-

l,

31.35

.

31.37 come

è1.35 - 31.37

di incognite.

sono

Quali

un equazione

gli

attributi

matriciale che

con

dovrebbe

avere

din

in tempo

come

determinare

di n

si una

1 punti uguale

l alg .,ritmo

I coppie

On

v,

splina

a i. Quale

il vettore la matrice

interpolate

conunasplina

31-2 .

naturale

soddisfano equ izione

essere

possono

il l roblema cubica

che

y

di valori

veda

Xg

che l

matrici.ile

rappresenti

...

X

deve

I interpol zinne BAI

he

essere

di i, non

quando

risolta

e quantn

C i1Ul11 .IlC 1

ill

è è

progettato

capitolo

Sono

disponibili

sono

i se ,,uenti

Vetterlin

molti

l6I.

ottimi

testi

Geor ,e

e

I é2J.

e Stran

Liu

che

RI 181,

J.

clcicrivnnn

-.i l b IR

e .

il

V,.in

c tlcol l

Loden

scientifici

49 .

Pr,,i.

Flunnery.

Tc,la,l.,kg

a C.F.

Gauss

una

matrice

il viceversa 182

I11OLIÉI

i

studenti

spesso

uso

quel

mai

fa lineare

una in

essere

può

sua

da

di

ha

Strassen

Strassen

allora

ir x n ed

52 di

tra

Egli

è

finora

tempo

di

è dovuta le

per

informazioni

anche

precedentemente,

famosa

tempo non

e Ullman delle

la

seguente

sulle

matrici

Fu

anche

a

matrici

On è più

dei

sua

Vinograd

primi

scoperta

Strassen

183 , .

fu il primo

uno la

pubblicazione

in

e LUP,

LU

lineari.

matrici

Hopcroft

fa

le fattorizzazioni

equazioni

invertita

presentazione

generale.

mi chiedono termine.

Nella

a Aho,

ottima

di

conosciuto

moltiplicazione

è dovuto

basate

sistemi

fosse

n x n la

sono

quale

1777-1855 .

che

dell algebra

nodi

nodo,

che

Sebbene

originariamente matrici,

31.36

D

necessariansente

Note

e dalle

punti nei

punti,

a , b c,

.

s ,,

insieme

insieme

veloce

nei

dei

di/x

dei

velocemente

Quanto

di valori

valori

equazione

naturale

Si mostri

f.

i

prima

continua

e peri

sulla j

le equazioni D,,

Sideducacheun cubica

dei

coefficiente

- vp

D

D del e.

x ,y ogni

che

D, d.

coppie

rendono

di continuitè 3Y

le coppie Si esprima

c he x

la derivata sia

solo

nodo.

,o

il prinso

j

dalle

seconda

1. Per

D f 4Dj D

non

ricordi

Si

scegliere

f

n

f

b.

a partire

la derivata

date in ogni

fx

D, e D ,.

f,

f

n siano

D ,

di come

x...

f

y, y

coefficienti

la questione

di richiedere

1, ...,

prima

sulla risolvere

per

numerici.

attribuita

0,

peri

di Gauss,

sistematico

algoritmi

la derivata

d in termini

Rimane

l.

che

anche

metodo

l algoritmo

interesse. migliorati

matrici

e Winograd

adattarono

molto essere

matrici

dell algoritmo

grafica

67

tra

moltiplicare

733

31.10 .

L eliminazione f

e Meyer

potessero

moltiplicazione per

matrici

suscitò

18

semplici

della

rappresentazione

Fischer

1969

L algoritmo

f

per

nel algoritmi

superiore

efficiente

.

Strassen che

migliorato.

più

esecuzione

di

immaginare

considerevolmente

asintoticamente .i

difficile

sulle

203

provò

dell inversione

gravosa

è

mostrò

di

4j.

matrici

simmetriche

osservazione asimim etriche

definite alla

pagina

definite

334 positive.

positive I

e miei

Io non

Polinomi

e FFT

j

I L addizione la

di due

mostrerà

come

possano

ridurre

di grado

polinomi

moitiplicazione

con

il

della

il metodo

semplice

richiede

semplice

veloci

le trasformate il tempo

o con

metodo

di Fourier,

o FFT

moltiplicazione

tra

tempo

richiede

tempo

8n

Fast

dall inglese a 8n

polinomi

In

.

mentre

On,

si

capitolo

questo Fourier

Transform ,

Ign .

Polinomi

Un

nella

polinomio

rappresentata

come n-

AX

variabile

x su un

campo

algebrico

tunzione

F è una

.v

che

essere

può

segue

I

/Cl,X l j

Il valore del

n è detto

polinomio.

complessi.

.i

Un

è ct .. Il grado

0 ed

ii

l inclusi. n

I

Varie

operazioni se A r di grado-limite

a .vj g jO

l .t

e I

1

8.

pb,.v , jl

I

allora

C .v

g j- Il

e i valori

polinomio presi

si dice

dal

campo

di grado

polinomio un

posarono

essere

più

n pi tè essere I è un

di grado

polinomio

a,,

....

Ct

coefficienti

detti

SOI10

l insieme

tipicamente

I se il suo

di grado-limite

V iceversa,

a. F,

grande qualsiasi

polinomio

C

intero

dei

numeri da

diverso

coeFficiente

tra

compreso

n. per

di grado-limite

I.

polinomi, ancon

di un

sono Ax

polinomio

zero

qualsiasi

del

grado-lignite I coefficienti

c,.v

e 8x

sono n. tale

dettnite

sui

di grado-limite che

Cs

Av

Per

polinomi.

n, si dice 8x

che per

quantn

la lorosoinma tutti

i valori

riguarda Cr di x nel

l addi ione

di

è un polinomio. campo.

Cio .

se

Capito

32. Pofinomi

gove

c,

ax

- / ex-s,alara

a

$,.

Q.

j

per

...,

l,

I.

n

se

esempio,

Per

-

A .r

In questo

capitolo

verranno

esclusivamente Per

riguagrh

quanto

CCt

Probabilmente

cai

aunpo.

stessa

Per

porcata. - M 4x-5

Wx

di A t

ramine

ciascun

ha già

il feritore

si

esempio,

moltiplicato

di grado-limi e

sono Cx

Az8x,

poi 6x

7x-

IQx

con y

la

7

ád

10x

9

4x

32.1

Rappresentazione

Le

rappresentazioni

un

polinomio

usato

il simbolo

i sarà

dunque

in qualche

modo

equi

alenti

nella

forma

e si mostra

come

24.r

28x

14

2

18x

14.i

44x

20.2

50x

40.i-

36x

dei

a coefficienti.

5

35x

di polinomi

nella

essere

possano n in tempo

-30.r

a coefficienti

polinomi

forma

a punti

In questo

paragrafo

combinate

per

8n

e a punti

ha un unica si analizzano

consentire

sono

rappresentazione le due

comspondente rappresentazioni

la moltiplicazione

di due

di grado-limite

polinomi

Ipso .

45

Rappresentazione I

complessi

1.

e

9

segue

come

per

h,

moltipli-

i termini

denotare

tu e

per

d ora,

prima

sommando Ax

moltiplicare

possono

che

po1inomi

di B x ,

termine

ciascun

per

tale

2n-1

di grado-limite

è un poiinomio

e B .v

se A x

di pofinomi,

la maltiplie one

le x del

i numeri

7- .

ci

il loroprodoge

utilizzati

molto

e FFT

a coefficienti

n-I

I

r

rappresentazione

Una

75. -

86x

un

vettore

di coefficienti

si tratteranno Un

altro

di esprimere

modo

il prodotto

Cv

è

La

1ll-1

Cx

a coefficienti

di un

i vettori

32.1

del

A .v ,

a

vettori

a,.

di

valore

Ax .

In questo

a .v

p

nelle

n è

di grado-limite

l

j

capitolo,

equazioni

matriciali.

colonna.

a coefficienti

l operazione

calcolo

a,.....

a.

come

rappresentazinne

esempio,

pc,x ,

a

Ax

polinomio

45

è conveniente

valuta -ione

del la regola

Usandn

certe

per Ax

poliiromio di Roruer.

sui

operazioni

in

un

dato

Per

polinomi.

t cl

punto. consiste

la valutazione

impiega

On

tempo

j0

x,a

,

X Q

X

c,

Analogamente,

J ga,s,,

a,

n 3

la

a,....,

a,

vettore

dei

che

grado Q

grado-limite C

grado A

grado 8

grade-limite A

e cio

implica

gradn-limite A

tati

deve

..

grado-limite 8

di Comunque, dato

che

si parlerè se un

del

polinomio

di

grado-liini e ha

grado-limite

C come

della

I allora

ha

nella

somma anche

del

di A e di B.

grado-limite I

grado-limite

I.

essere

del

Il

32.1

paragrafo e

esamina

due

modi a

di pnn i.

impiegu

forma

a

coefficienti un

è denotata

convuluzioni pratica.

con

ono

i polinomi semplici

la per

la

tali

iia

sequen iali

coefficienti i

soltanto

calcolare

ione c

Llj

Ar

poiche*

e 8v

di grado-

dalle ciascun

considerevnlmente

è chiamato

anche

efficienti

la

e 32.2 vettore

et

di moltiplicazione più

polinomi.

fondamentali algoritmi

ir rappresenI

nel

la

complessa

Il vettore ione coevo

la mottiplicazione

computazianali su

due

32.

coefficiente

essere

di

l.

imite

equazioni

b. L operazione

soinma

ii

l.....

j

vettore

b. Poiché

incentrato

0, pCr

32.2 , a 8

lg

c dei

di polinomi di che

rappreseata i nie

aprenti

ùi

tn

chi

paralleli.

I

che

,,

.l .

tutti

l ....,

li.v sono

.C .

cliitinli

e

polinoinii

As

eli grado-limite

n è un

insieme

dei e il

considerevole risolvono

a punti

V

di c le lo

dei

si deve

dei

.Cg.

modelli

vettori

dai 8n

rappresentazione moltiplicazione

Una

su

o alla

problemi

capitolo

questo

nel sembra

dal l equaz

c

descritto

tempo

polinomio

punPo/valore

lo FFT

tempo

polinomi

il metodo 8i

di dato ed

si usa

ni coefficiente

o

per

dove

c,, di due

di polinomi

risultante.

delle

c,.....

c.

Se

Rappresentazione

ei ficiente

.

problemi.

rappresentare I metodi

impiega

h

le moltiplicazione

ci e b di input

calce lo

c

valutazione

coefficienti

capitolo

11 IQppresentazione

..

rappresentati

polinomi

...

a coeft cienti.

nella alla

importaisz

coefficienti

due

b

moltiplicato

polinomi

rispetto

vettori Sommario

ora

forma

moltiplicazione

l

grado-limite B

g

coefficienti

Si consideri noti

cl

di

2

ÁO Si

somma

X Cl

Cl

C1OYC

di

n roppie

tali

738

Capito1o

A .r,. ,

y, I

per

l,

...,

n

l. Un

di st punti

Il calcolo in linea

di una

,e

L inversa

della

mostra

che

rappresentazione

reso

a punti è ben

uguale

sia

che

il metodo

in seguito

detla

che a un

forma

interpolazione. che

n punti

distinti

di Horner

questa

in

Il

Per

del

x,,

punto

teorema di

polinomio

per

f AO,

Più

è

di un polinomio impiegano

prob1emi

questi

,

X l ,...,

I, X,

molte

per

operazioni Ax,

C .v,

allora

Bx,

a punti

rappresentazione

una

si ha

se

precisamente

al,

ro ,

conveniente Ar

se C x

l addizione,

riguarda

quanto

è abbastanza

a punti

rappresentazione

La

seguente

algoritmi

Gli

e viceversa .

una

definite

ben

a coetficienti

8 r.

tempo

intelligente-

per

per

di Lagnnge. operazioni

sono

la rappresentazione

convertire

a punti

rappresentazione

una

1gn .

e l interpolazione

e servono

de ll altra

algoritmo

un

di trovare

formula

n punti

di

n

di grado-limite

polinomio

richiede

la

di A usando

i coefficienti

O iè

valutazione

la

Quindi, l inversa

di un polinomin

il grado-limite

in tempo

calcolare

a coefficienti.

On

a coefficienti

assumendo

qualunque

scegliendo

tempo

è chiamata

di coppie

forma

è selezionare

fare

fino

poiché

la rappresentazione.

per nella

1. Con

veloce

più

definita,

al numero

n

diverse

base dato

si deve

1, ..., Si vedrà

8 n- .

essere

come

polinomio

la determinazione

l interpolazione

interpolazione

ciò 0,

a punti

usato

di un

/

per

tempo può

valutazione

dalla

partendo

A.

richiede calcolo

essere

tutto

poiché

valutare

su n punti x ., questo

gli

rappresentazioni

puo

a punti

è semplice

quindi

valutazione mente

x,

rappresentazione

di principio,

x ,x,,...

ha molte

polinomio

distinti.v ..r,...,

è un

32.5 32.1-4

i l . L Esercizio

tutti

y,. per

delI equazione

destra

la parte

Ax

soddisfa

che

che

verificare

Si può

32.3

0,

insieme

e FH

Polinomi

32

sui

polinomi.

B v,.

per

ogni

A,

per

- l

date.

punto/valore

eperB,

Teorema Per

32.1

di grado-limite

x ,, y .

n tale

Dimostra ione. matxice.

Unicità

insieme

qualsiasi

La

X,

Xp

1

Xi

Xi

32.3

polinomio

v,,

y ,...

Ax

y

dimostrazione

L equazione

I

che

del

/

è basata

0.

y,

, esiste

1, ...,

n

unico

di

una

.

determinata

matriciale

i

0 e-I

.o

Se

a,

l

sulla

Vandermonde.

j

k s ri

e perciò, Quinùi.

sinistm

è denotata

Dall Esercizio

con

31.1-10,

V Xg questa

XE

..

X

matrice

ed ha

è conosciuta

come

matrice

di

i coefficienti

a, possono

essa

è invertibile

essere

determinati

non

ciaè

singolare

se

univocamente

data

gli

x,. sono

-ao

a

più

etTiciente

per

l inter olazinne

di

n

. l,

Dati punti

è

basato

sulla

per

coppie

con

poiché per

punto/valore

Data

una

ciascun

il grado una

a punti

rappresentazione

una

per

punto/valore C. ma

limite

rappresenestesa

a punti

rappresentazione

di

estesa

u.

due ottenere

. I..

IX

la

. ,n-

a

forma

polinoini

.-

I,

I

del

punti

nella

forma

cale il l

plls1Olll

-

i punti

in forma

di input

polinomi

di C è

a punti

I ...,

di 8.

.

,,

rappresentazione

una

. lL

X, -

X, ....,

estesa

a punti

I

si ha

estesa. è

ri uhato

On.

che

allora

multo

meno

il tempo tel

a coefficienti.

.i,

i

S

i

Il j

X,,

o.

moltiplicare

g -.n

di

il grado-limite

che

I

l Xzll-

rappresentazionc

corrispondente

di

frinnul r

Lagrn tge

.v

di 2n

/valore,

puntr

W

t

j

coppie

per

punto/valore

cominciare

allora

di 2

. - 2II-

- I rl .

Zii .

allora

A .t

è2.1 Si deve

consistente

una

distinti.

la rappresentazione

...,,r ,

algoritmo

n coppie la necessità

implica

da n coppie

di A e B è costituita

a punti si ottengono

di C.

a

punto

di B, ottenendo

A,

. u..

Un

gradi-limite

il Teorema

a punti

e una V .v . x,,

moltiplicare

a punti il problema

considerare

si deve

.

di A e B.

Moltiplicando

polinomio.

Cl l

31.5,

punti a

e si può

punto.v,.

rappresentazione

una

8

di polinomi.

moltiplicazione

perla

ogni

per

di A per

è pertanto

a punti

forma

n nella

è conveniente

A .s, B x

di C. Tuttavia

rappresentazione

A e 8 ognuna il Teorema

per

r,-l

di grado a punti

a punti

a punti dei

.

-I

polinomi

C x,

allora

rappresentazione

di C è 2n,

determinante

I

per

-l..

la nsppresentazione

tipica

tazione n

.

l,...,

due

Av8x, una

x, ,

/ps ,.

a punti

rappresentazione

una

allora

n punti .

stessi

ir-I

Una matrice

per

Cx

punto

.

addizionare

C è la somma

-I

negli

valutati

I

I,.

rappresentazione

2,n-l

La

.

ù,

tl .

0,.

Analogamente

.n-i

. 3., ,

X i ,...,

A e 8 sano

che

Il tempo

32.4

h-l

noti

si Cè

dell inversa

equazione

As

polinomio

1.

sull esistenza alla

un

. ,.

X n.

. o.

x ,.

per

è equivalente

di interpela ione

i

lIIE l llCI 1111CIltÈ

lllll Lllll

i I

i

illlsillV

nipoti

i

ioli

ùiflirrenri

nei

riiu

It ni.

tempo

per

moltiplicarli richiesto

per

Polinomi

e FFT

741

740

1

Infine

si consideri Per

punto.

il problema

questo

nuovo

del

forma

nella

forma

vi è approccio

non

nella

polinomio

dato

più

a coefficienti

à punti

semplice

che

la sua

valutazione

e quindi

bo

in un nuovo

Si può

usare

lineare,

per

veloce

il metodo

di

nella

polinomi

di moltiplicazione

rendere

coefficienti

efficiente

più

sta

nella

capacità

alla

forma

a punti

forma

usare

può

accurata

dei

lpi .

qua1unque

nella

la moltiplicazione di

forma

a punti,

di polinomi

convertire

nella

rapidamente

un

e viceversa

valutazione

discreta

di

si vedrà

Fourier

coefficienti. delle

mostrerà

come

La

figura

che

richiede

forma

di valutare

la FFT,

si ha

la seguente

A m, ,

8

A e, ,

B

Ae

forma

grado-lenire

Valnra -ione

Si

attraverso

due

i valori

dei

Alolri elica Cx contiene

4.

pirnto

di una nelle

Cs

tpplic azione

ad

FFT

Si

c le la

in o znunu

delle

una

FF1

per

moltiplicare e dell

2h

è2.2

2n-1

i termini due

a

desrra

del

può

0 di gradn

Ax

Il prodotto

32.1-1

di

Le

polim mi.

rappresenta.-ioni

in

all opera iw e

di

1 termini

moltiplica -ione.

cg, so to



in tempo

O ir

t -esime

32.2

di due

e Bx

di

di grado-limite

polinomi

Si

moltiplichino

equazioni

nella

32.1-2

ii può

A .r

i polinomi e

32.1

valutazione

La fatta

essere

e Bv

come

essere

calcolato

e

pi .

72-

x-10

e Bx

-6x

Sv

3 usando

le

32.2 .

di un polinomio

anche

dividendo

Ax

A .r

Ax

di grado-limite

qx

n in un dato

di grado-limite

il polinomio

per n

I e un

s,

x resto

r, tale

punto.r ,

ottenere

per

può un

essere

polinomio

che

r.

q x x-.r

alto.

più

Chiaramente

Av

r. Si mostri

come

calcolare

il resto

r e i coetficienti

di q x

n

lunghezza

rappresentazioni

Queste

molriplicazione

di

efficiente

polinomi

sempre

n coefficienti di

metodo

corrispondo ro unità. dell

Teorema

co, .

sono

di A x

punto

tempo

avendo

8n

xe

i coefticienti

in

di A.

contengnno a ,,s 32.1-3

a punti

punto.

del

polinomio

32.1-4 Cr

polinonsio

punto/valore

derivi

una

a punti

rappresentazione a punti

presentazione

dell unit,. ,. del

Si

per

six,

g.

a partire

, g

peraa,x,,

nssumendo

che

nessuno

dei

da

una

rap0.

sia

punti

rappresent rione

Questa

n -esi,ne

coppie

schenra

a 2ll si usano

output

richiesta

Uno

Esercizi

grado-limite

a coefficienti

a coefticienli su

a punti

riguarda

elementi.

con

input

I

complesse

di

di grado-limite

Igi

rappresentazione

radici

la rapprésent tzioAe

32.1

radici

DFf

dell unitè.

valori

questi

di

2n.

una

Rappresentazione

8n

Igh .

dettaglio

dell

a punti

2n -esime

Cm

a punto

punto

3

quoziente

ognuno

di ordine

la

On

piccolo

tigura

sinisrra

come

Il paragrafo

il loro 2n

32.

alto.

più

Ig n

C Moltiplicazione

B

,

On

scelta

vettore

un

polinomio

hanno

questa

rappresentazioni

radici

moltiplicando di

di 2

rappresentazioni

a poi to

Si ere

ola

le

8n

potenza

0 di ordine le

un

i vettori

rappresentazioni una

Tempo

1g n

a

in tempo

prendendo

in tempo

si raddoppia

nella

di tempo

a coefficienti f

la trasformata di

coefficienti.

inversa

una

dell unità

prendendo

n è un

denotate

aggiungendo

calcolano

ione

il v..ùore

sin

2it

polinomi

8 .r

n sia

creano

applicazioni

Interpokr.,ione una

Si

due

Ar

che

coefficienti

di grado-limite

polinomi

le

di

con

all altra

eseguita

Ancora

Poiché

alto.

più

dove

vettore

A e B, allora,

procedura n,

essere

e DFT

strategia.

dell unità ,

Si assume

aggiungendo

Doppio

in input

2n-2

Interpolazione Qn

Tempo

a coefficienti

ma,

Transform

di grado-limite

polinomi

0 di ordine

di grado-limite

1.

un DFT

questa

di due

complesse

a punti Fourier può

ottenendo le operazioni

radici

a coefficienti.

rappresentazione Discrete

graficamente

valutazione

rappresentazione radici complesse

se si scelgono

l interpolazione,

i polinomi

soddisfatta

3.

esegua

n coefficienti

e B .v

una

di

una

da

1

9 n-

Valutazione

tempo

dalla

polinomio

Rappresentazione 0

Tempo

interpolazione .

punto

passare

dall inglese

punto/valore,

mostra

come

32.2,

inversa,

Il prodotto

aggiungendo Bn -esime le

2.

produrre

DFT

la FFT

32.1

Prima

forma

si può

coppie

il grado-limite.

Data

paragrafo

o

voglia

si può

nel

L operazione

inversa

si

punto

di valutazione,

punti

Come

di valutazione,

punti

Ax

b

nel

a coefficienti

di polinomi

comune

Moltiplicazione

n-l

..

eseguire

Figura

Si

2n.

. --

Tempo

risposta

On

b

punto.

Moltip1icazione

La

un polinomio

apparentemente,

problema,

la conversione

prima

di valutare

calco1 re

per

Si

mostri

l 1ClllO

attr tversn

termine

1 i DFT

come

per

l equazinne

usare

Cállcolinn

Sl

llllJ

pl

x,.

v

e

v,

32.5 i .r . p J x nmaniera

per

interpolare

e

j

g J opportuna.

in tempo X

e

J

quindi

Si ved i

8

. si

l Esercizio.i

Su geri-

divida

ogni .l-

lllVLfSQ.

I Pe

I

p s.,i rf lli

lO,

ClOpO

e

3

richii.dono

ùVCl

1110ltf ltO

temp ,

8n

e

i

e

p..issi 1

COI11C

Ll1ùFC

11

FFT.

VI l .I11 3

4

richiedono

dimostrato

tempo il

se

uv

n tc

8n teure

32.1-5

Spiegare

cosa

oliato

è ba

n ll ovvio ,approccio

divisione

alla

l,i . m

i. divisio 1e

riesce

in

n odo

ei ttl i

c

il

zio

in

citi

cio

nur1

avviene.

polinomiale

quan-

.

Polinomi

insiemi

due

Si considerino

A e 8 ognuno

la sogna

Si desidera-calcoiare

avente

Cartesiana

n interi

nell intervallo

di A e B definita

Ac c che

noti

Si

i

interi

gli

in

C sono

in A e 8. Si mostri

di elementi

nell intervallo

di volte

che

che

0 a 20n.

vogliono

trovare

di C è realizzato essere

può

A e B come

Si

gli

m

C04

elemento

il problema

si rappresentino

Suggerinrento

da

ogni

risolto

somma

in tempo

di grado

polinomi

come

8

10n.

5

Nel

s

e FFT

DFT

32.1

dell

in

unità

8n

Radici

se In

si usano questo

le proprietà,

inversa

complesse

che

1gn .

e se ne studiano e la sua

la DFT

si è detto

tempo

in tempo

radici

si definisce

8n

complesse si

paragrafo,

dell unità

la DFTe

le

si mostra

poi

valutare

si può

definiscono

radici

come

e

32.2

l,.alori

di

ro,,e ,...,co .

nel

plemr

er,inplesso

dove

e

e

è la

radice

ortana

primitiva

dell nnità.

complesse

la FFT

Figura

7

6

s

paragrafo

interpolare

m8

Ign .

On

Cùg

32.2

I

s

8

8.

di C e il numero

elementi

743

da 0 a 10n.

da CO

C x y xe

e FFT

calcola Dimostra -ione.

Ign .

dell unità

ill

ni

g

Cù,

Il lemma

segue

direttamente

dal l equazione

dato

32.6

che

br

e

,I

ri/n k

La

n-esima

radice

l

cd

del/ airità

è

un

numero

complesso

e

tale

che

k

.

Vi

sono

k

0,

un

numero

e

complessa

esattamente

1, ...,

n

figura

sul

cerchio

radici

h-esime

interpretare

complesse

dell unità.,

formula,

questa

si usa

sono

queste

la definizione

e-

per

dell esponenziale

32.2

i sen u

.

mostra

che

di raggio

le n radici

unitario

Per

complesse

centrato

dell unità

nell origine

del

sono piano

disposte

in modn

complesso.

equidistante

3 .6 l a radice

potenze

n radici

Le

ii-esima

primitiva

dell ic rità

tutte

le altre

radici

it tero

Dinrostra iosa.

ri

di

32.4

qualsiasi

La

ir-esime

de l l unità

sono

Legna

32.5

Le runa

Se n

0 è pari,

allora

n/2-esime

co . ii-esime

complesse

co e, ,

un

rispetto

gruppo

m-

e, ,

11-CSllllC

CO11lplesse

Lemma

32.3

-

di 0. vale

è

lasciata

come

Esercizio

I.

32.2-

di diane il quadrato

atnen1o delle

de

l unità.

lem

ni di

n r idici

n-esime

complesse

dell unitè

sono

le

12 r dici

dell unità.

all i

moltiplicazione

si

veda

il para

rafo

33.3 .

Questo

ruppo

allora

. Ammalo ,.u ente. sono

date

m nei

seguenti

ca .

Le

proprietà

essenzi,li

delle

r,dici

Peri

cia.,cun,

k e/

dell unità

e maggiore

dimostrazione

complesse

Dimostra ione.

formano

n pari

Il valore

ll

è chiamato

Coro11ario

di

complesso

cos u

La

n

I. Per

CO -

radice

cancellazione,i

n/Z-esima

dell

unità,-.

ha

onenvta

e,,

-

e, ,.perqualunque

esattamente

due

interol

volte.

in

non

quanto

x2

Cù,-,

y-

lenmii.

CO,, CO Cù,,

di

Le n na

cance1la ione

o Per

qualsiasi

iiitero

n

0.

I-

0

e d

0 *Pt..l

3-.7

tállltO.

0,,

l.,

Ù,,

ll.,llll10

ll

.111Cllt,

Sll.YLO

É LICil,l QLl.llllill .

pB pACl...l

piiÈ

LISCI ,

Clllll grill,ll.,l

Po1inonri

usando

il

corollario

.

dato

32.4,

-l

cheto

implica

-e, ,

co

e

pertanto

.

Il

n-

I

.

ga,u , , Come

vedrh,

si

usato

eseguire

per

infani,

il

tale

di

lemma

tra

le conversioni

lemma

che

garantisce

è essenziale

dimezzamento

all

le rappresentazioni

approccio

di polinomi ricorsivi

i sottoproblemi

siano

j0

divide-et-impera

a coefficienti al

grandi

più

745

A vo,

y,.

eu

e FFT

32.8

e a punti

Il vettore

IQ fQg$Q gg

coefficienti

y

yg

ff

a

a,

è la trasformata

j a,

a,.

discreta

Si scrive

anche

i

di

Fourier

del

DFT

vettore

dei

che

trae

DFT, a .

originario.

problema

FFT Lemma Per

32.6

della

Lenvna intero

qualsiasi

n

soinmatoria

l e intero

I non

negativo

e non

divisibile

n,

per

Usando

un

vantaggio

n-I

0

co

in tempo

.

metodo

dalle On

Il metodo

jO

Dimostrazione.

Dato

limite

che

l equazione

si applica

3.3

ai valori

-l

m,,

m, ,

co, ,

j0

l

Q -

x

a

a

a,

ax

noti

che

v

A

a

strategia

tempo

per

8n

definire

di

Fourier

dell unith, del

divide-et-impera

separatamente

Ne

l

segue

A .v

a .i-

...

a

a,-.x

..

ap

contiene

termina

tutti

con

rappresentazione

1

CO -

dispari

una

veloce

complesse

metodo

usando due

nuovi

FFT .

si può

calcolare

DFT a

banale.

i coefficienti A

polinomi

di A v .,-

x

e A

di indice di grado-

n/2

dell indice

l

1

trasformata radici

in contrapposizione impiega

A .v Si

-l

e,,

come delle

proprietà

complessi, A

n-i

1gn FFT

e di indice

pari

conosciuto

speciali

i coefficienti

il bit

binaria

e A

0

dell indice

di A di indice contiene

tutti

termina

con

rappresentazione

La

pari

i coefficienti

il bit

di A di

binaria

indice

dispari

La

I.

che A

i-

x- ,

xA

32.9

0

Richiedendo che

che

co, ,

k non

1 soltanto

sia

divisibile

per

k è divisibile

quagdo

n si

ha

che

il denominatore

è diverso

da

0 dato

n.

per

cos

che

1,

valutare

Il

il problema

valutazione

della

i polinomi

x

A

di A r

e A .r

in , m, ....cu, ,

di grado-limite

si riduce

si/2

nei

a

punti

e , , , ,..., e, ,

32.10

e poi DFT 2.

Si ricorda

Ax

che

si vuoi

valutare

un

combinare Dal

polinomio

ga,x

i risultati

lemma

solo

delle

due

volte.

nelle

n/2

di grado

limite

cr in

co... co, ,, m, ...,

cioè

o ,,

nelle

n radici

n-esime

complesse

dell unitè

.

il

la

complesse

Allora

calcolo

può più

alto.

essere Si

Si detiniscono

aumentato

assume

che

i risultati

si possono

A sia y.

dato per

/-

nelb 0,

seinpre forma

I....,

a giungere

a coefficienti n

i, come

nuovi a

ii ,.

0 di i rado

coelficienti cr,....

vettore

i polinomi

del di

DTT,

comp1eice

dèll

ui,itù.

di

a ,.

a,.....

a

n

di valori

e A.

Questi

la loro

dimensione

nel

calcolo

cv

3

ll

ifn

C

IC l1gtll

61

t

J

I th n

return

a

n

una

potasi.u

n/2

di it valori

distinti

si ripete

esattamente

soi o

è la meti . due

DFT di

ricr rsivo . potenza

di

non radice

valutati

sottoproblemi

di

il segueme,l,.oritmo

di n elementi,

ogni

di grado-limite

x

elementi

per

dove

ùell unità. na

consiste

32,10

del l unii,

RrcuRsivr- -FFT A I

n .esin,e

originale

è Ia base

a

r

complesse

problema

un

A

ista

32.9 .

a,.

2 radici

nl2 -esime

/2 -esime

decomposizione sempre

equazione

radici

radici

forma

all

di dimezzamento, 12

jO

stessa

in accordo

di 2.

FFT

ricnrsivamente

hanno Si è diviso n/2 che

ma

cn

successo

elementi. calinla

la

esattamente

Questa la

DFT

del

746

Capitolo

32 Polinomi

e FFT

747

Wn .

5

e

6

a

7

I oi

/.

, Oj

4. 1

, 0j

k

/

a a,....,a

a

a ...,

a,,

n/ , 1J

Cùn

yk

yl

a

a,

o

c in

n

8

l a

n

n

t n ai

RECURSIVE-FFT a

kè nl

lg lj

n

gfOJ Il

9

n

Il

mRECURSIVE-FFI a

y

g k tt/2

IO for

k

-

0 to n/2

I 1

do

ym

1

Xa

13

Cù f-

Lasecondalineaseguedallaprimapoiché

cov .

y .

12

,ioi X

nr. E

Cù3 .

perché

co, ,

vettore

y restituito

CùCù Per

14

return

c

y

RzcvRs la DFT

Le

linee

ap

l

O

.

6-7

funziona

elemento

come

segue.

è l elemento

il vettore sia

m

8-9

dei

aggiornato

si ha

e

il tempo

Le linee

vettore

colonna.

Le

stesso,

linee

2-3

dato

che

rappresentano

la base

in questo

co, ,.

sul

eseguono

coefficienti in

modo

il valore

Mantenere

calcolo

di co, , che

il calcolo

ricorsi

i polinomi

per appropriato

deve vo

solo DFT ,

cosi

corrente

di

essere

A

e A quando

coda

Le

T ii

4. 5 e 13

linee

per

in tempo

per

il lemma

nel

1gn

nelle

di

polinomio usando

radici

completa

1, ...,

0.

ora

lo

schema

si noti

dove

che,

senza

n è la lunghezza

del

è alIora

n nelle

grado-limite

la trasfarmata

complesse

di

ciclo

n/2

complesse

dell unità

veloce

radici

n-esime

complesse

di Fourier.

dell unità

in una

forma

a coefficienti.

considerando

della si può

32.4 . di

Vandermonde

mostrando

polinomiale

un polinomio,

Si interpola

la fornu

matrice

moItiplicazione

con

I.

il che

consente

scrivendo

matrice

inversa.

scrivere

la DFT

contenente

la DFT

come

come

di convertire come

una

la matrice

le potenze

di cancellazione,

n

g J ir

linee

linea

-

di esecuzione

On,

il

a.

equazione

prodotto

appropriate

di

interpolare

una

y

forma

le a punti

matriciale

V a.

e

dove

V

e,

l

, 1

Le

un

8n

Dzll equazinne m,,

di input

R cuRswe-FFT,

richiede

Pertanto.

32.9 .

vettore

all altra volta

è una co, ,,

del

prece ,a

invocazione

il tempo

per

la DFT

della

ogni

ricorrenza

valutare

può

Interpolazione

.

poiché

di esecuzione

ricorsive,

Laquartalineaseguedallaterza dall equazione

8n

si

radici

/

è in effetti

segue

1gn .

Pertanto.

poi

a co, ,

y,

2T n12

dell unità

Si ogni

La

linea

11-12

un iterazione

aggiornato

assegnando,

linee le

il tempo

input.

L ultima

della

caso

che

co .

RecvRstvz-FFT

le chiamate di

-co, ,.

co, , e, ,

da

determinare

considerare

A m,

oppure,

,o

un

8i

eseguite

i .

di un

che

fa risparmiare for .

iva-FFT

definiscono

garantiscono vengono

y sia

0

oi

Do

che

vettore

La procedura ricorsione

si suppone

l implica

I I-l2combinano

11 si

. k

i risultati

l

l

y,

I

M

ao Cù,,

DFI .

Per

fg

l

...

l g

a, 2rii-I

l

delealcoloricorsivodi

ha

lo mA

y

4

n.

Il

ClJII l l

y,

6

m,

.

iii.-li Cl

g

lli

k 2 n-li

3i

ii-

I

la-I

In-I

n-I

A

Il

co,-,

A

m

Ae ,

L eleinento formano

dove l

I ultima 0.

1....,

linea n/2

i

ii-

e

eeue

1. dalla

d ll linea

equazione I 2 ci ha

32.9 .

Per

I, una

j

d,



cu, , .

di

moltiplicazione.

tabelle

j.

per

k

0,

I.....

n

I,

e

gli

I

e,ponenti

debelli

elementi

di

1

l y

l

g

j

...

l

j

e

per

Per per

l Operazione la

tllatrice

Per

j. k

inversa. V.

Teorema

0.

I in, er a

32.

1.....

che

svrè di

in lie it i

con

a

DFT i

.

V,.

7

n

I. I elemento

j.

4

di

1 .

è e

/ n.

si

procede

moltiplic tflClO

l

Polinomi

Dimostrazione. di

j, j

Si mostra

che

V V

I,

la matrice

n x n. Si consideri

identità

l elemento

32.2-6

Si supponga

V V

dei

/ co

V J ..

di eseguire si usi

modulo

una

l anello

arbitrario.

positivo

dell unità

In co,,

ir

Si usi

m. Si dimostri

FFT

di n elementi

Z, di

interi

2 invece

che

ni, dove

di co come

la DFT

rr è pari

dove

modulo

e la DFT

radice inversa

1 e t è n-esima

primitiva ben

sono

campo

sul 2

m

definite

in

sistema.

questo

I 0

invece

complessi,

un intero

n-I

V-

che

numeri

e FFL

n-I

bk j -j

g n

32.2-7

40

Data

una

lista

trovare sommatoria

Questa sommatoria

sul

che

fatto

la matrice

a

32.6 .

Lemma

si conta

Data

è uguale

1 se j

Si noti 1

n

V ,

inversa

che,

j-

affinché

si ha

sia

1, cosi

n

j

vale

mentre

j,

che

altrimenti,

0

applicabile che

DFT y

il lemma

j non

j-

è data

sia

il lemma

per della

della

per

lie n .

da

32.2-8

La

di

ripetizioni ,

di grado-limite

ripetizioni .

La

il polinomio

Px

Suggerimento

multiplo

con

eventualmente Px

polinomio

con

eventualmente

On

n.

del

-,

...,

z,,

,

i coefficienti

,

sommatoria,

divisibile

di valori

n che dovrebbe

procedura ha

uno

zero

in

come

si mostri in

ha 0 solo

,,....

,

tempo

impiegare se P x

-, se e solo

è un

,.

x-

trasformata

rilassata

di

un

vettore

a

a, e

è

a,

a,,

è

a,,

vettore

il

n-I Il

...,y ,

y y ,y,,

I

dove

y,.

-j

0

...,

l algoritmo

anche

del

1. Confrontando

può usando

contesto

i ruoli

della

di

n, si calcola

per essere

calcolata

la FFT

e la FFT

di grado-limite

polinomio

le equazioni

scambiare

per

risultato

DFT

Pertanto, un

n

FFT

elemento

a e y,

sostituendo

inversa

in tempo

e veda

si

con

che,

se si modifica

e dividendo

co

l Esercizio

32.2-4 .

due

32.8

vettori

di

Teorema

a coefficienti,

a e b qualsiasi

o viceversa,

a punti

in tempo

il seguente

lpi .

8n

di

i vettori

DFT, b

a e b lono per

estesi

componente

con

n, dove

n è una

di 2.

potenza

che

le

applicazioni

Si caIcoli

la DFT

degli

0 fino

vettori

di

a11a lunghezza 2n

2n

e

denota

il prodotto

elementi.

8n D

32.4.

32.2-3

Si

ripeta

l Esercizio

32.2-4

Si

scriva

lo pieudocodice

32.2-5

Si

descriva

di

3.

del

l, 2, 3 .

0,

Ign

ma

dapprima

che

hn

realizzazione

noti

iterativo

innanzittitto due

di tempo

che

volte.

DFT

in tempo

cgetsene.

in una

On

lgr .

/-

60

0 C

1

ener liz arii ire

clelia

procedura

FFT

al

caso

in

cui

ii ir i

un i

di J

Ll la

ricorrellz 1

per

il

tenlpo

di

esecuzione

e

Si

ri olv l

l.

ric irretlz l.

l

lg

Jl

eu m

tl

i

coeu

.

per

l

-

DFT,

una

come

in tempo

1gn

On

per

l equazione

convoluzione.

32.2.

iterativa netla

esempio

dell

8

circuito

FFT più

paralle1o

di

efficiente

per

quella che

intuitivi

per tempo

impiega

che

piccola

i concetti

segnai,

efficienti

realizzazioni

algoritmo

notazione

di

l elaborazione

due

si useranno

Quindi, un

progettare

ad

esaminerà

paragrafo

nascosta

paragrafo

della portano

la FFT.

FFT

for

alle

terminologia

temporanea

ir/2



poten i l

Si

come

versione

costante

Si può

variabile

to

una

il ciclo

Nella

t la

questo

della

1gn .

8n

for

calcolare

iterativa

sottoespressione

il metodo

una va del

ricordai

zandolo usando

per

si usi

co .

z

prendendo

FFT

della

velocità,

Si esamina

realizzazione

Si

vettore

32.1-1

della

praticQ

la massima

di m, ,y, 32.2-2

valutata

essere

può

5 ggerii ieirto

rilassata

efficienti

Realizzazione

il corollario

la trasformata

Realizzazioni

Dato

Esercizi

Si dimostri

.

ottenuta

- -

.

di due

rilassata

complesso

rilassata.

teorema.

alla

32.2-I

la trasformata

trasformata

Nel

la FFT.

componente

della

voluzione

di lunghezza

DFT, DA , a

vedere

per

richiedono a O b

speciale

- - ,

ogni Pertanto

la rappresentazione

si è mostrato

cover

che numero

qualunque

32.3

dove

un caso

g0

trasformare

si pub

di polinomi,

si vede

1g t .

8

inversa.

e 32.11

32.8

la DFT

n in quella

moltiplicazione

Teorema

Dati

è allora

Si dimostri

2,

I,

per j

La

numerocomplessoqualsiasi.

jO

DFT

32.11 nk

j

un

linee dei

modificare t.

l0-13

di

compilatori. il ciclo

per

REciRstvE-FFT

prevede

qua.,-to

valore

calcolarlo

una

è conosciuto sola

s alta,

il calcolo come memoriz-

750

Pl V

g

a Ipso

di 2 elementi ev

finale .

risultato

l

, il n- i

lo i

I

s., ,

e la un

come

di

entrarono

iirpiit

a destra.

output

come

restinrite

sono

differe,r-n

e la

somma

va1ori

I dne

a farfalla.

Un

da

sinistra,

Ea

figura

è inoltiplicaro

eu,

dofor/ c

ha

do

le due

combina ..

2

al,a3,as,a7

..

di s, si usa

o dei

L albei

32,-l

Figura

eli inp rt

tenori

va

ricorsi

chian crta

alla

detti

Ract.

procederei

il seguente

e della

realizzazione

l

del

l assegnamento a farfalla

opera -ione

Nella

ricorsiva.

di input. non

che

a meno al figlio

Rrcu sivE-FFT

prncedura la

di ngni

DPT

DFT.

e si calcola

coppie

sostituì,endo

farfalla. contiene

14

DFT

elementi

che

pncsono

de li

per

la DFT le due

essi

app iono se

dei

Dl-T

di

che che

tr clurre

contiene,,li Cl .ll alhero

cptest

Poi

2 elementi.

di

elementi

nriginati

elen,ehti

con coii

ilei

elementi di h ura

3

.4.

vettore

tinclté

gli

c

ll

lO

E

ClCVC

C i CIC

Si t LB t

mostrer, i

struttura

forma

la base

nostro

dipende

algoritmo

il corpo FFT

dal

con valore Si in

a farfalla

l operazione con

dalla

e,

leggibilità.

maggior

una

complessiva del

1

del iterativo

ciclo.

si

finale

in seguito.

presenterenso

n è una

di 2.

potenza

2

m

for/ dO

6

di

O to



n

1 bum

I

for

7

è per

to ni/2

j e-Q do

8

r

eA

9

u mA l

10

A Ic

l I-

m/

j j

chiamata

DH

del

elementi

in coppie.

sostituiice

la c.oppia

si prendono

j

n

t

m/2

c

di

due per

j

12

CO

MD

a

ill

di

per

cnpiare

in .ic Ili

un

cr isell-ordine uito

livello

come doli albero,

A0

array in cui

es.,i

..

n

I

comp,iono

qualche il vettore

a nell

di indici

l

si

inlroduce

un

codice

iterativo

e usa

la procedura

per

ordine

A ttell opportuno

array

A

BIT-RFi ERSE-CUPY CI. Il

3

inizi rimante nelle

C

t

ll Il,f f/l C

vari hilC

forse do

tu,.lie

1 tol n n

2

ll

Poiché

dcterminarcqltest ordine.

t

la DFT

ottenere

he

del

finale

calcolo

u

ITERATIVE-FFT n

quindi

DFT

per

eliminare

la versione

ora

Si presenta a

DFT

operazioili

lue

A l-

la sua

con

Il vettore

conterrò t farfalla

dell

Il

si calcol

n/2

questi

di 4 elementi.

il vettore

vettore

l eseeuzione

simulare li elementi

operazioni

si u a

cc lice.

eli input,t

ICI C llll lll l/lOllC

3 nella

per

for

il ciclo

2

a farfalla

di eseguire

permette

I,.

2n7r r

ricorsive

la p ima

dall esecitzione

una

12

i

e

a farfalla

mecliante

nel

oiiirvazinne

m solo

..

invii

n elementi.

Per

la variabile u che

linea

parallela

1 to

3

ispondente

chiamate

due

sistemare

si prendono

Si continua

cumbin iti

eiierc

la

y

operazione

Ak

che

iniziale il con

con

Si esegue

si potrebbe

fo glie,

sulle

opcr zione

quattro

di 4 elementi.

esegue

si potessero

Pria

ue.

n/2

DFT

se

che.

come

conterrà

procedura,

elemento.

introduce

Si

con

1

Si copia

preciso.

più

2-

k

4

invocazione

in una

RzcuRsws-FFT solo

in modo

in ogni

di m usato

pseudocodice

come

piuttn to

la chiamata

etichettato

di un

3

1 ..

Va in A l

che

in

sono 2

k

de tro.

notare

un

iterativa

dove

nd albero

della

vettore

al figlio

usando

coppia il vettore

Quindi

chiamata

un

si può in cui

a nell ordine

iniziale

m, ,

è conosciuto

il

32.3.

ricorsive

chiamate

struttura

ricorsivadi

ricevuto

l albero

Osservando

alle

input

in una

ogni

per

e 1n seconda

sinistro

di

i vettori

invocazione

abbia

-

FFT

dell algaritmo

struttura

sistemati

stati

Ogni

figura

nella

a

è uguale

che y

linea

temporanea

lengrh a s-

5

ha un nedo

8. L albero

vettnre

e

di r da

e la sottrazione

schematicamente 1

rendere 32.4,

figura sono

REcuRs vE-FFT

è mostrato

ed

di

la moltiplicazione

ciclo a t, la somma

prodotto

come

ora

Mostriamo

n

di questo

di operazioni

L insieme

2.

si sostituisce

ottiene

for

y, . ,

le DFT produrre

per

FFT-B. sz a

La

E-FFT.

asti

S.

è per

ihi-iale

chiamata

m variabile

altra

Quando

elevamenti

identificando

Il valore

1.

e dove un

introduce loco.

2

k

ciclo

del

2

di

..

e A k

1

DFT

Recvastve-FFT.

ricorsiva

procedura Ak

il corpo

esprimere

Si può

s

s

2

A

in una

che

elementi

di 2

DFT

L Al

e, z r 4

elementi

su ttura

1a seguente

dunque

di n/2

DFT

due

formare

le coppiep r

si combinano

quando si combinano

1by2*

Otosi

coirrbinatorio.

circuito

alto,

quando

L algoritmo

3

interprernta

essere

può

per

basso.

in

1 tolgn

fors

2 opera-ioide 32.3

Figura

l in

da

n-k

k

k

vanno

che

i livelli

contare

11

f0j

751

e FFT

Polinomi

32

Capitolo

s

pd

i

e

7

for

I j m

0

to /

I

n

è

una

p tcnr. i

di

2

FFT

che

ausiliari iniziale.

inverte

i due

Brr-REvEasr--Cove

cicli

interni a.

A

752..

CapitoIo

32

Polinomi

do

for

9

k m j to

do

c

n

1 by

mA k

e FFT

753

a

tn

a

m/2 a,

10

-

12 13

Cù C

14

return

A/J

Al

n

Ak

m/2 -

t

a, u-t Q

CùQ ,

Yg

A a

Come

fa

la

nell ordine

desiderato

inverso

Cioè,

tazione

sia

binaria

Arvk .

l ordine

001,

binario

significativo

inverso

Poiché

la

scritta

si noti messi

si continua

inverso

foglie

le foglie

100,

010,

110,

101,

110.

sul

a di

nella

a del

111. in

sinistro.

procedura

scendendo

nell array binario 32.4 è

bit

nella

O l I,

Per

mostrare

111

6

inverso

si vuole

si ha

in generale

gli

indici

il cui

meno

significativo

finché

a

1, 5, 3, 7,

il bit

nell albero.

Q

dell array

e in binario

dell albero

A

rappresen-

0, 4, 2. 6,

che

Trascurando

della

posizione

nell ordine

101,

alto

sottoalbero

input

figura dei

vettore

appaiono 001,

livello

vettore

dall inversirne

l elemento

100.

del

appaiono

formato

e mettere

che

nel

questa

delle

bit

si ottiene

meno

s

l ordine

Figura

i

calcola

facilmente,

la procedura

Btl-REvERsE-Covv

2

forhm0tnii-

ant

A rev k J

bassa.

Altern tii nel 8n

D ed

1pi .

tempo I di Igh

di n

surebbe

eseguendv

Problema si mostra è 8n

iinpiega

n

mente.. i

è eseguito,

a

Li

di FFT

impiega

iniziale

l- e rev l .

descritto

9-12

tra

il valore tn

n ,.

iterativa

compreso cipo

c

sicuramente

A

denza

tenipo

FFT-BwsE.

elenrenti

l

FFT

Vne

la su

n

la

FFT

cl e

calcola

ce rrispnnden -a

input

essere

pur

la

con

FFTper

n

I irera ione

calcolata

in

de,l

8

inpat.

Gli

pii,

esternai,

ciclo

profondità

8 lgii

con

perla

FFT

stadi

di elella lpt

8 t

circuito

parallelo

per

che 1gn .

bit

1gn

dunque

Per Ln, Si

ha

usare ion plet re I ri u m rodi

8n

poiché

in tempo

Ign .

O lgii .

In

n volte

impiegate

8n

astuto

in cui

una

invertire

del

FFT

che

la FFT

una

permutazione

in

ciclo

farfalle

binario

più

interno

nascosta

La

parte

restante

impiega

iterazione

del

linee

dei

circuiti

del

simula ciclo

circuito

fnr

esterno

più

essere

eseguite

stadio

di h,rfallè

mostrato

gruppi

di farfalle

uno

in parallelo.

Il valore nella

pero

del

P aAu.ci,-FFT

ecc

ni valore

32.5.

per

da

circuito

iterazione

Bello

di I- nella

s, per

FFT-B se .

con

comincia

con

consistente

di

dal

fatto

indipendenti

s

che

che

Ig .

farfalle

per

ogni

possono

conisponde

l......

2

inversa,

binaria

vantaggio

in FFT-Base

stadio

per

8 lp .

la permutazione

a fmfalla

29 P Rwu.FL-

ognuno

è allora

possono

il Capitolo

8. Il circuito stadi,

Si trae

operazioni

veda

combinatorio

n

lgn

esegue

di s in ogni

figura

32.5

FFT-BwsE.

uv n/2

Si

Il circuito

seguito

iterativa

iterativo

efficiente.

in figura input.

profondità

la procedura

algoritmo

coinbinatori.

degli La

un

parallelo

è mostrato

inversa

in parallelo.

a sinistra

più

e la parte

di realizzare aleoritmo

su n input

binaria

eseguite

inverso

un

modello

di corrispnn-

costante

1 Ev.-inve-FFf del

calcola

consentono

produrre

un

si conosce

tabella una

contatore che

per

descrizione

n/2

con

del

il corpo

e si pub

che

proprietà

a Bn-RcvcRsE-

di solito

pratica.

la dimostrazione volte

chiamata

coditrcare

in tempo schema

La

si ripete

accettabile

lo

delle

una

tempo

Bit-Rcvcvse-Cove potrebbe

I S- I.

On

htolte essere

a uno

vi sono

n/2

gruppo una

2 -i

a farfalla

g valori

g-..ll

Il

7

È-, O ni

mostrare

CrJiHbilreltr ri.

operazioni g

PARALLFL FFT

par-alleln per

A

realizzazione

intero

S3

I

do

Covv a.

circnito

erichettati

length a

3 La

Un

swro

proced rrer

essere

può

Un n

7

5

segue.

BIT-REVERSE-COPY a, 1

32.S

fic,fa1le

rev

l

ad

foglie.

funzione

come

Ol I,

le bit

esempio,

è 000,

010,

è 0 sono

livello,

binario

per

elementi

gli

cui

di 1gn

si vua

32A,

in binario 000,

in

l intero

figura

sequenza

la sequenza

Q mettere

L ordine rev l

di k allora.

Nella

questa

ogni

Bn-REVERSE-COPY

u

.

di

cv us ui

nelle

del

ciclo

farfalle

piii

intenio

corrispondono

linee

R- I l della

a quelli

usati

FFT-B sr . nella

FFT-Bwsr

Si

noti nello

anche stadio

che s ii

i

Polinomi

c.

Si dia

un

algoritmo

che

Esercizi un

per 32.3-1

Si mostri

come

IreRAtivE-FFT

calcola

Ia DFT

del

vettore

d.

di input

2, 3,

0,

Si dia

Si

suo

mostri

come

inversa

realizzare

avviene

consideri

alla

la DFT

algoritmo

un

fine

che

piuttosto

la FFT

per

dove

all inizio

del

di

efficiente

Valutazione

si

Suggerimento

un

Nel

calcolo

e quanti fo

sono

assuma

Si

elementi

quanti

necessari che

sia

addizione,

per

nel

circuito

necessario

un

sottrazione

Si

PAmu.ai-FFT solo

filo

descritto

per

in questo

un

portare

0

numero

che gli da produrre

tale

Si supponga

che

Si

quale. input

moltiplicare

per

due

trovata matrici

una

matrice

di Toeplitz

per

la parte

b.

di Toeplitz

n x n. Si analizzi

di un n,

in un

polinomio

la sua

derivata

punto

t-esima

è definita

da

come

nel

output

esattamente

descriva

all intero

addizionatori

un

uno

come

degli

e

FFT

sia

l addizionatore

osservandone

gli

talvolta

si guastino

indipendentemente

addizionatori

identificare

circuito

la

per

zero,

Si

loro

da11a

descriva

SC

f ll

.

Dati

i coefficienti

b.

.i,

r

per

b,...,

b.

I,

0, tali

a,.

a,...

n

l.

....

a,

di A x

e da

un

dato

punto.v ,

che

i -I

-xe ,

Ax

sapere

/fio, .v jO

si mostri

procedura

efficiente.

A

in

opportuni

una

rappresentazione,.-oefficienti

determinare

input.

di non

fornendo

guasto

output.

dai ma

guasto,

1 t n-l,

posto

a.

circuito

sempre

r 0.

se

paragra-

da

A partire

supponga

le derivate

se

,A

e moltiplicazione

si desidera

modo

lp

moltiplicare

di grado-limite

x

A x

all altro.

32.3-4

O r

la rappresentazione

inversa.

di DFT ,

fili

per

di tutte Ax

polinomio Ax

32.3-3

tempn

ti. Si usi

755

di esecuzione.

binaria Dato

richiede

lunghezza

algoritmo

tempo

32-3

la permutazione

calcolo.

un

l, 4,

5,7,9 .

32.3-2

vettore

e FFT

b.

come

Si spieghi n

calcolare

come

.i

A

trovareh ,

i. mr

b,....

r

0,

b,

1, ...,

in tempo

1. in tempo

n On

Igir ,

dato

On.

Ax

m, ,

per

/

0,

I.....

1.

Problemi c. 32-1

Moltiplica ione

Si provi

che

n-I

divide-et-impera

p n-I

gyrj.

w ., 0e, , gll a.

Si

mostri

come

moltiplicare

moltiplicazioni b.

Si diano che

impieghino input

Si mostri opera

che

su al

due più

8

in una

a seconda

delle

che

per

.

Il primo

meth

alta

i loro

indici

b e cx

moltiplicazioni

divide-et-impera

tempo

di

dividerli e.

algoritmi

av

polinomi una

suggerimento

due

polinomi

due

e una

metà

siai o

pari

a

h

due dovrebbe

bassa

I usando

dividere

tre dove

rado-limite

di

potinomi

solo

cf .

c

e il secondo

algoritmn

x

dovrebbe

dove

passi,

ogni

Si spieghi tutte

Murici

Una

aratrice

Cj

.3,

di

di

La

se

0,

COB1C

l l in-ti

Yalutare

Ax

non

bannl

l e derivate

. l9,

i di,. .

.

per Ios,uno

0.

i,

....

essere

n

Valuta-ione

di

polinomi

in

piis

I, in tempo

On

valutate

nel punto

poliilomio

di

3 - .è

3v

Ipso .

Si concluda

in tempo

On

Ign .

punti

Toeplit

Tvepli1-

è una

matrice

1

a

rt x n tale

che

u,,

a...,

per

i

2. 3....,

n

...,Il. 0n

a.

l

l

passo

32-4

32-2

n

0

che

in O n -

I

dei

d.

di n bit possono essere moltiplicati numero costante di bit a valore I.

e

I

0

-ji .

jO

aj

n

i coefficienti

o dispari.

interi un

grado

è

moltiplicare

algoritmo

d di

r0

somma

di

due

m.,trici

di

Toeplilz

è necessariamente

un,

m,trice

di

Tneplitz.

E il

1n

arbitrari

usando in

la

tempo

FFT. O si

tedio .

Si Ig

-.ia

vulutareun

odo-limite

n

in

n

punti

n,

prodotto b.

Si Il

descriva X

/t

pOSSdllO

cnme

r ppresent re CS iCl C

iùllll1UltC

un,,. Ill

tClllp 1

m,.ttrice

di O /l

.

Toeplitx

c ,,i

che

clivie

m,trici

ci

Tocplit

ùimcxitruziorie.

Per

Csi .Illpi ,

i1reit . . .iv

clisiiiinli

di

I pere

v

è

il

Polinomi

x

3x Data

3x

1

i polinomi

grado-limite

a.

Si dimostri

che

Ax

Si dimostri

che

Q x

Si dimostri Si dia

che,

un

32-5

FFT

Per

come

complessi,

Per

di garantire

che

approccio

che

usa

un

fornisce

un

richiesta

la conoscenza

altro

Si supponga motivo

di

esaminare media Sia b.

g un

c.

Si deduca dove siano

d.

cnme

radice

dati

Si calcoli generatore

Ax

mod

e dati

f Cr 0

i

Si noti

p,, x .

e QgX

A x, ,

A x, ,

FFT

coefficienti bit

per

un

modulo

di

j

n

che

Q x

mod

Qj X

...,

1.

P ., x .

Ax,.

una di

che

o più

kn

/.

i punti.

I sia

al fine

ragionevole

O lp

è

di 2. Si dia

primo.

un

semplice 1pi.

è ragionevole

Il

aspettarsi

è paragonabile

Quanto

un

problema

approssimativamente

ma

è la

fornisce

Questo

potenza

k sia

di solo

problemi

32.2-6

più

una

piccolo,

per

su

numeri

modulare di tali

L Esercizio DFT

di

a errori contiene

aritmetica esempio

lunghezza

che

l uso dovuta

la soluzione

sull Un

Sia

p

aspettare

candidati

che

interi.

33.

richiede

precisione

basata

gestire

k tale

grande

valori

Fourier

preciso.

al Capitolo

più

di

anticipatamente della

piccolo

di

la lunghezza

di n w

e la DFT

g mod inversa

n-esima

primitiva e la sua

parole

operazioni

modulo

p ben

definite,

dove

w è

dell unità.

inversa di

p. sono

funzionare

possono 0

n

bit

modulo

richiedono

tempo

p in tempo unitario.

On

1gt .

Si assuma

che

3

è un

p e i. la DFT di

Z

modulo

p

17 ùel

vettnre

5. 3, 7, 7,

0.

2. 1, 6 .

Si

noti

che

g

f7.

capitolo

anne , Trasformata

Teukolsky lVeloeloce

one di Oppenheim

dei

di

se nati, e iVillsky

A Cooley

n punti

.

P, x

mancanza

in modo

ci si dovrebbe

sia

sulle

si sa

usa

il più

7e

la FFT

Ar .

punto

mod

Discreta

variante

che

O lgn

le operazioni

per

a una

con

essere

la DFT

che

valutare

materiale

cui

di

che

Qx

calcolata

la lung ezza

generatore

Q, . x

di Q n

del

in media

Si deduca usata

modulo

di cercare

di p con

a,x

p

...,

Ax.

x

lg n

una sia

k potrebbe

qualunque

On

polinomi

per

e Q,, x

si ha

problemi,

approccio

euristico

valore

al

due

gp

Trasformata

utilizzare

di

per

indurre

la soluzione

moltiplicazione

a.

alcuni

ed è preferibile

A r, ,

modulare

la

talvolta

può

arrotondamento. interi

j,

definita,

il che

A

e cllC

di tempo

aritmetica

stata

Ax

polinomio

Ax , xe

z

x

k

peri

con

è

un

g ,x

A x,.

algoritmo

di

i. mod

é Vetterling Fourier utl area 153 .

e delle molto

e FFT

757

5 .

gli n valori

P,, x

al più j

c.

7x

calcolare

ha

d.

2

a coefficienti

si desidera

si definiscono

b.

x

x

la rappresentazione

xe, x ...,.v ,,

Note

mod

161. SUO

iljlplt .

conosciut 1

J62

danno 1//Ani.

di

Per 1pplic 17i ilc

una

huon t

descrizione

un

ottima

inttodulioiii

delle

FFT.

Si vecl l

dell t i il tvsto

è stata

scoperta

e Tukey

51

molto

dell avvento

dei

attribuiscono

le origini

è stata

tempo

moderni

attribuita

prima, calcolatori

del

metodo

ma

l ideazione la sua numerici.

a Runge

della

importanza Press,

e Konig

FFT non

negli

Flannery, 1924 .

anni

fu compresa

60.

In effetti

pienamente

Teukolsky

e

la FFT prima

Vetterling

teoria

La

dei

numeri

assolutamente in

grazie

sta

sicurezza

Questo

capitolo alla

base

comun

di

divisore

modulare.

come

Euclide.

ripetute

verificare

per

che

aspetto

essenziale

presenta

una

intrattabile,

fosse difficoltà

Poiché e

di

si

della

creazione ma

can

delle

ii

questo

efficace

in virtù

nsisurerè

quell input

la

della

interi

nella

un

di

di

primalità un

primi,

33.9

il paragnifo di interi

in fattori

piccoli.

auspicherebbe

1 agente

dalla

dipende

dell RSA

la sicurezza

è centrale sistema

numeri

Infine.

else

di 33.6

quadrature

il

verifica

grandi

RSA.

prnblema

che

con

poi

una

n e

paragrafo

operazione

descrive

Ia scomposizione sia

Il

algoritmo

trovare

per crittografia

considerazione grandi.

calcoli

dei

è necessario

grandi.

eli numero

paragrafo

descrive

efficiente

a modulo l algoritmo

a, b e n. Questa

33.8

il massimo

dell aritmetica

usando

33.5. un

33.2

numero ir

paragrafo

33.7

per

data

la

esempio

per calcolare

mod

ii e presenta n, dati

chiavi

aritmetici

di

i concetti

rivedere

dell input

dimensione

element iri.

aritnsetichc

-interi rande

un

del

nel

modo

interi

un

di - b

ax

ad

i conceni

rassegna

paragnfo

in fattori

e costo

dimensione

e non

che

Il paragrafo

in fattnri.

Il

euristica

in fattori

operazinni

capitolo.

in delle

-input In

Il

la scomposizione

ciò

lavorerà

primi.

associati

come

numeri.

dei

multipli

presentato

primalità.

usata

essere

dell input

co to

numeri

algoritmi

di Euclide in

passa

dei

e, mod

RSA.

pubblica

di scomporre

Dimensione

di grandi

scomposizione

n mndulo

numero

la

può

che

i

eft,ciente

in modo

semplice

il fatto

È curioso

dato

di un

a chiave

ratsdomizzata

mentre

il prodotto e gli

La

primi.

primi.

numeri

dell equazione

cinese

resto

efficientemente

crittografia

numeri

grandi

i numeri

l algoritmo 33.3

l insieme

le soluzioni

del

calcolare

per

studia

33.4

teorema

mondo

del

Il paragrafo

interi.

tutte

le potenze

considera

d oggi.

al giorno

facilmente

teoria

della della

e l unicith

vecchi

più

due

trovare

Il

dei

teoria

di base

i concetti modulare

Il paragrafo

mostra

in fattori

della

su

basati

di trovare

ma

bello

pura.

usati

ampiamente

sono

crittografici

di scomporre

matematica

della

argomento

capacità

aspetti

introduce

algoritmi

degli

schemi

nella

alcuni

la congruenza

uno

un

numeri

dei

applicazioni.

33.1

divisibilità,

sta

nell incapacità

di tali

Il paragrafo

studia

degli

presenta

come

di teoria

schemi

di questi

la loro

vista

era

tempo Algoritmi

all invenzione

parte

praticabilità

sono

un

inutile.

numeri

dei

di teoria

Algoritmi

un di

input ii teri

in

termini

dell input,

un

signitica

tiplCQl11Cnte

del

numero l/n

algoritmo

di

input

richiesti

bit n

input

contenente

per interi

rappresentare a,.

a,.....

a

7

a tek

h un algoriuno cioè

di tempo

se impiega

polinomia1e

risotto

polinomiale

In genere,

in questo

alle

libro

lunghezze

divisione,

calcolo

un unità

di tempo.

Contando

il numero

si ha una

base

su

un

bit

su cui

calcolatore.

Le

un tempo

richiede

interi

di

p

bit

con

prendere

il resto

eseguite

in

metodi

più

della

veloci.

Per

esempio

tempo migliore, gli

operazioni

aritmetiche

Nozioni

elementari

In questo

di un

p bit

numero

algoritmi

semplice

e si userà

questo sono

Ig

veda

Si

limite

Ig

come

base

e di operazioni

sui

bit

di

teoria

dei

Il

0 e tutti

Dato

fornisce

paragrafo

numeri

che

2,...

dei

riguarda

una

breve

Sono

le analisi

degli

termini

l insieme

Z

numero

un

nozioni

1,2,...

interi

noti

del

numero

Per

di

di

Se

d non d

non

divisibilità

da 0.

Se Se

si

si

a allora

0, si dice

anche

l e a.

a è divisibile

per

i divisori

Per

di 2t

altro che

. Se

di

teoria

è centrale a

d

kd

nella

per

ei,allorasi

teoria

N

dice

dei

intero

qualche

i divisori

di qvalunaue

divisore

i dii l e a.

sono

isori

I divisori 2, 4,

di 24 non

noti

che

da

come

numeri.

I-. Ogni

composti.

modulare

congruenza

essere

possono

che

in quelli

partizionati

chea

èsnscltiplv

se e solo

se

d f a. cosi

di ci divide sono

non a. Un

l, 2. 3,4,

banali

di er sono

negativi. divisore

6, 8,

i non-multipli k Ia base

teorema

data

veda

si

ad

di n a seconda

di questo

intero

a

I

semplicemente. teori

i ctii primo .

dei

numeri.

unici

divisori I primi

I primi

s no haiinii

classe

che

piceuli

quelli

b inali pfOpl 1r. l I

sono,

nell ordine.

l

e

a

si

dice

Ogni

chiamati

primo un

si ottiene di

.

che

se e soln

na

mod

a

ir, vi sono

positivo

due

unici

interi

q e r tali

r.

Il valore

divisione.

della se ci cod

n

0. Segue

r

a mod

n è il resto

della

che

n

3è.

1

una

33.2

nozione

ben

definita

di resto

della

Si scrive

ci

di un intem

divisione

altro,

pcrun

è conveniente

se e solo

esempio. interi di

se nei b

61

6

possono

a. 11 .

mod

divisi

essere

coiigncen -a

mochtlo

.

13

Inoltre in ii classi n cnnteilente

b mod -

2

n 2

di equivalenza un

intero

se a non

mod

a b modulo

è congruente

n.

5. a seconda

a è la classe

del

resto

modulo

n. La

insieme

sono

di equivalenza

Per

intero

ruga lu

A c

In

a esempio.

Z ..

. 3 j, j7

I l,

4. 3.

l 0,

17....

altre

denotazioni

per

questo

fattori

i

numero

e ricopronu

E, 5 1

e Zuckerman

che

dimostrazione

divisione

i stero

è il quo -iente

LahtJ

q

equiv lenza

sf l. Cl lli

resto

La

a-LnlnJn.

aJ

intero

5 e 10.

molte

del

raffinamento.

Niven

esempio,

della

Teorema a e qualunque

qr

J

n

mod Per

di

e composti

primi

di ti e quelli

multipli

restancto di un

l 2 e 24.

anche

sono

La intero

nnche

numeri

è

Analogamente,

l,

0.

Gli di n. Si

non 39

OppUfC

e l insieme

i

nella

sarà

intero

Si ha

La/n

Z

Numeri

Un



primi

1 che

esempio,

Per

dei

dPa. divisore

esempio, bairali

i fattori

a

detmiscono

il negutivo

tra

esempio,

si

un

per significa

d

d è m

se

ci è compreso

Per

a

si scrive che

generalitè

che

intero

divide

d f o, alloraj

divide

perde

un

di d

legga

a Oc

a e d

sottinteso

di a.

e di

classificando

33.1

qualsiasi

Data

nozione

d.



a

intero

né composto.

è né primo

e divisori

notazione divide

non

Teoret ra

algoritmi.

a modn

La

interi

ottenuta

teorema

questo

due

naturali.

Divisibilità

e non

Un

primi. compos1o .

l algoritmo

elementari

degli

unità sono

resti

dei

n. Il seguente

per

divisione.

1, 0,

n, gli

partizione

dividendoii

numeri

2,

...

divisione,

che0 r nea

delle

infiniti

semplicemente,

più

non

negativi

vi sono

che

o, l è detto

intero

interi

gli

di

di questa

richieste.

presentazione

L

43,47,53,59,....

di essere

moltiplicare pratici

teorema

a

Questo

composto

ò 39.

4l,

37,

di dimostrare

nu nero

perché

Il valore

33.1

richiede

33.1-1

31,

di due

33.1-11.

in

29.

23,

19,

-

nn

sui

possono

per

per

possono

Analogamente.

ai fini

analizzati

generalmente

17,

è detto

l intero

esegue,

o l operazione

l Esercizio

Tuttavia

p.

composto

operazioui

corto,

più

divide-et-impera

Ig

p

intero

richiedono

mandi,

bit.

corto,

più

un

è primo

moltiplicazione sui

intero

per

metodo

8p

algoritmi

un

per

sono

una

13,

fendei

di un algoritmo

quante

operazioni

7,11,

elementari

un algoritmo

input

modello,

di p bit

semplici.

che

misurare

Op

che

di esecuzione

i loro

quando

2,3,5,

Iga,

L Esercizio

primitive

reale

conveniente

Iga ...,

aritmetiche

operazioni

tempo

però,

di

le operazioni

del

richiede

intero

un

che

a Iga,,

in binario.

aritmetiche

numeri.

di esecuzione

capitolo

questo

un

di . isione con

è spesso

In

di

8p

ha

dei

codificati

operazioni

diventa

comune

tempo

di p bit

Op

elementari

rispetto

polinomiale input

fossero

di tali

Pertamo

metodo

divisione

resto

ragionevole

di teoria

il

suoi

comodith

per del

stima

operazioni

algoritmo

di

una

maggiore.

un

l operazione

interi

fare

tempo

dei

si è assunto

moltiplicazione,

richiedere

di

Algoritmi

99

o. critici

pii

La

X

i 0

aj

a

n

I

.

33.3

detit1izione

0.

I.....

ii

l ,

33

4

762

Capitolo

33

minimo.

Tuttavia,

sottostante. aIla

classe

deve

Per

esempio.

n

1 ,

essere

però

tenuta

un riferimento I - n

poiché

in

a-

I come

mod

n.

considerazinne membro

la della

classe

classe

di

di Z è

equivalenza ragioni

per

un riferimento

analoghe,

L equazione combinazione

lineare

combinando Divisori

Se

comuni

d è un

esempio.

d

divisore

di a e anche di 30

d

che

a e d f b implica

d

ed

f b implicadj

e y interi

pere

e b

h

divisore

divisore

1,2,

dei

cosi

di due

comuni

e d J a

d è un

15 e 30.

comune

divisori

b

10,

b

divisore

covuate

i divisori

interi

di a e b. Per

comuni

di 24 e 30

Per

è che .

a implica

allora

a f

oppure

b

b

0 che

implica

comun

di due

comuni

di a e b

è denotato

da

MCD 0.9

9.

Se a e b non

sono

Si definisce della

MCD 0.0

funzione

0

MCD

a e b, non

MCD a,b .

Per

entrambi

ad

esempio

entrambi

0. è il più MCD 24,è0

esempio

0, allora

definizione

questa

come

interi

i CD a.b

è un

è necessaria I equazione

che

33.ll

dei

grande 6,

intero

rendere

per

valide.

i tC

seguenti

sono

D a,h

interi

gli

le proprieth

elementari

segue

di a e b per

d

d ll

0

s

implica

s.

i CD a.b

che s

MCD a,b

si conclude

che

s è il

MCD a,b .

equazione

il Teorema

a e b e qualunque nMCD a,b

dii

MCD a,b

essendo

33.6 ,

una

33.2.

segue

della

funzione

intero

n non

negativo,

.

n

0, dell

piccolo

il corollario insieme

è banale.

0 allora

Se

hne

cuu-

che

è n volte

54CD nn,

l elemento

è l elemento

bn

più

pnsitivo

piccolo

by .

av

1 e Corol1ario

l e min iseo.obi .

le proprietà

Se

più

dell iitsieme

isori

MCD á,7

tra

positivo

Per

standard

33.5

tutti

interi

gli

e SICD a,n

a e b, se n ab

n,

i b.

l, allora

universalmente 11l Dimostrazioire.

Le

e

s.

b ed s è una

33.4

tutti

Dir tostrazione.

divisore

s

a che

che 3 è.7

Il massimo

b

s si ottiene

e d b allora

se d a

corollario

Questo lineare

MCD an.bit

h.

a

MCD a.

sia

divide

33.5

33.6 h,

Ma

b.

iVfCD a.b

a e h e cosi

d di

MCD a,b

di a e b.

a e b qualsiasi,

interi

combinazione

Per

se a

e

comune

s. poiché

s e MCD a.b

divisore

Dimostraziotre.

by Inoltre,

a

divisore

33.3

due

Corollario

ax

di

s è un WCD a.b

qualsiasi.

che

qualsiasi.

comun

Corollario

sono

che

MCD a.b

massimo

di b, allora

3. 5, 6,

divisore

a

si ha

generalmente

un

sono

1 è un

importante

a

a

noti

proprietà

Più

comun

i divisori

1, 2, 3 e 6. Si Una

e massimo

Pertanto

sub. implica

33.6

La

r ..

dimostrazione

lasciata .

è

Esercizio

come

-

3.

33.1-4.

.

MCD Interi

MCD b,a ,

loro

tra

primi

33.8

MCD a,b

MCD

iviCD a.b

M l

a,b , 33.9

I.I I ,

MCD a,0

33.1 per

I-c Z

qualunque

a,

I

detti

sono

tra

primi

loro

se

il

loro

unico

comune

tra

loro,

alloro

il loro

se

1 cioè

è

divisore

l

RCD a a

interi

Due i

33.10

33.12

tali

che

tra

loro.

di essi

ognuno

e 1*intero

p sono

primi

e p Sono

prodotto

primi

80l tlllC gg.

I Sca

ih eh

so Mno

elce-nto o

io eri

ii positivo ime

Siasil

qualsiasi, dell insieme

il Piùi

-

e

non

piccolo LalsJ.

entrambi

zero,

by

az

x.y

g

allora Z

di combinazioni

combinazione

positivo L equnzione

il MCD a,b

line,re zllor t

33.

è il piii lineari

di a e b. e,ia

Teorema

piccolo

Per

s

c,.v

a. 1 e

intero

qualsi rii

di e e b.

33.6 se MCD ci.

1 e MCD b.

p

p

I. inrrss inne. Dinrristrn

implico

. Dal

-r

Tenrema

..

segue

33.2

MCD ab,

p

l.

.,

j li

cii .toito

che

1. allora

interi

s.

y..v

e y

t tli

che

fAQ4$ gg CI / Y

l,

4- av bv A.r

A 1 -qx

l,

s

b b 1 iltiplic m k

C

g C

sG

una

cc unzioni

queste

i

5C .

c

ii

ririitentaocl 1e

hl

l

combi

naz

ion

e lii eare

Positivo

di che

a

e b.

i I t.

è combin azione

poiché

a lineare.

n od

s All t t.

s.

ii syr

b ,c

lu t.

i, yb.v

Poiclli Aid

l

I i

I

Il

fii Oi

l.

CO4l i C

pc,v lll I

I .

pv,

COllll 1IIJ/lOllC C

.

lino tre

ili

tl

c g . . apjilieitndo

i

il Tcorilll Tc .ri l

. ., 33.

i1cOI11Dlr. tùp

Algoritmi

Si

dice

che

n,

n,,

interi

gli

ir,,

n ...,

n,.

sono

tra

primi

loro

a

coppie

se,

i c

per

j,

si

ha

MCD

33.1-6

Si dimostri

che

della

Una

scomposizione

in

elementare

proprietà

ma

per

fattori

primi

importante

sulla

numeri

per

per

è la seguente

primi

33.1-7 Teorema

tutti

Per

p e tutti

interi

gli

a,

b se cab

allora

intero

esima

o p b.

pia

Si supponga

l eMCD b, a né

b.

cab,

il Teorema

poiché

33.6

implica

cab

contraddizione

Questa

che

ma

cab

che

p P a e p E b. Pertanto,

I,poichégliunicidivisoridipsono

p

Allora

assurdo

per

implica

KICD ab,

l epe, che

p

completa

MCD ab,p

MCD a,

I ipotesi

del

p.

33.7

è che

intero

33.1-8

Si dimostrino

33.1-9

Un

intero

P

della

Unicità

composto

a può

essere

Si mostri a,

un

intero

ha

seoinposi -ione

scritto

un unica

scomposizione

in fattori

33.1-10

modo,

in

come

un

fattori

La

esempio,

33.5-4

33.1-5

ipotesi,

che

che

un

che

n

qualche

intero non

potenza

I

intero

1. Si mostri

banale

n è una

k-esitare

potenza

non

1 è una

come

in tempo

se esiste

poten --a banale

determinare

se è una

/-

se un dato

intero

tutti

interi

in p.

polinomiaIe

33.8 - 33.12 .

l operatore

MCD

è associativo.

Cioè

si dimostri

che

per

gli

della

prodotto

un

il Teorema

un

algoritmo

intero

intero

forma

iMCD MCD a,b .c

33.S.

efficiente

corto

più più

corto.

un

algoritmo

.

l operazione

per

e l operazione

di resto

L algoritmo

di divisione dello

dovrebbe

divisione

impiegare

di un

intero

di un intero

tempo

Op

di p bit di p bit

per un

per

.

dove

i p, sono

numeri

primi,

p,

p. ...

gli e, sono

pe

interi

positivi.

Si dia sua

e

dimostrazione

è lasciata

come

Esercizio

33.

la cui

a decimale

I-IO.

il numero

6000

essere

puo

scomposto

in

fattori

in

primi

modo

unico

efticiente

rappresentazione lunghezza

un

Si deducà

è al più

essere

può

convertire

per

decimale.

eseguita

divide-et-impera.

che

p richiede in

AI p ,

tempo

ottenendo

dato

OMp le

intero

di p bit

binario

se la moltiplicazione

due

allora

la conversione

1g .

Suggerimento

metà

del

nella

o la divisione

risultato

da

binario

si usi con

un

ricorsiani

separate.

come

.

33.2

i

Si

dimostri

che

p,,

primi

33.1-3

0, si dice n. Si dice

MCD b,c

Si dia

pritni

Massimo

comun

In questo

33.1-2

per

che

approccio

33.1-1

le stesse a

b e c vale

di interi Dimostrazinne.

Eserci

k

le equazioni

Si dimostri

33.1-12

2 .3.5

0,

Pr

PP

in un unico

per

e b

D

33.1-11 33.8

sono mod

a

che

è una

primi.

Teorema

afb

7á5

che

la dimostrazione.

Teorema

che

numeri

x e y interi.

potenza

MCD a, conseguenza

Una

a e b, tali

qualsiasi

dei

p

peripotesi,pnondividené

1, contraddicendo

x y

a tale

n di p bit Dimostrazione.

dimostri,

qualunque

33.7

i primi

b

mod qualsiasi

un Per

Si implica

qualunque.v.

x -y

divisibilità

interi

teoria

moda xmoda

xmodb Unicità

due

per

1.

di

vi

p ...,

sono

infiniti

p divide

Sirggerimeiito

primi.

4 p

si

mostri

che

nessuno

dei

1.

p

due

tn Si dimostri

che

Si dimnstri

che

Si dimostri

Si

a

cr. b

b

e Iole.

se p è primo

il Corollario

dimostri

interi

se

che I.

e a

se

tutti

p

inod

c.

e U

I

d l1

allon

i fCD l ,

p

I.

è

e

prin1c

prin i p

.

0

I, p,

del

tempo

di Fibonacci

che

ruppresentai o

questo

i p,

allora/

f

Si

concluda

che

per

tcrtti

1i COI1

p,.y ..

ci

paragrafo

equazione

in f i tori c

l algnritmo

L analisi

AA .10

Generalnsente, p.

33,5,

i ninncii ll

ullora

si usa

para rafo,

interi.

numeri

divisore

si pu di a e f .

pritni

di

di Euclicle esecuzione l input

si limita

che

interi

asserisce

c alcolnre

che

calcolare

nne

il massinlo

a una

peggiore

MCD n.

il iX1CD ei.l

In effetti.

per porta

per

negativi. l

i per due

interi

comun

sorprendente l al oritmo

Q restn

restriziollC .

positivi

cnn

di Euclide.

MCD ja ., l cr e/

C

dal l

gillitltlC ta

scomposizione

s

...1 ,.

Pi

P

P,

P, ...P

Cif10llCll

33,13

33. I

p,.pera

di

divisore

connessione

cVl. lltU lllllClltC

e

l.

U il 1li

ill ra

a

tar

in

m ida

la

ui nv.

Io

itera

il iicl11C

Cl

I4

pl lllll

i

Algoritmi

Et CLID 3.

nel

vengono

non

massimo L algoritmo

Pertanto,

polinomiale.

non

sembra

di Euclide

per

il calcolo

algoritmi

i migliori

finora

33.9, tempo

in

divisore

comun

un

ad

portare

il

calcolare

per

In questo

efficiente.

algoritmo

massimo

del

approccio

La

divisore

comun

seguente

sul

è basato

calcolo.

a al la linea

b

MCD b,

non stretto

l equazione

per

Prima

una

combinazione

MCD a,

b

che mod

a è una

che

Poiché

Se

si pone

q

La/b

implica

b,

d

mod

a

poiché mod

dei a

allora

b.

MCD a,

Allora.

b.

da

e

b

è

mod

poiché

b

è

modb MCD a,b mod

allorad bed a

che

b.

Poichéa

di b e di

lineare si ha

che

o equivalentemente.

b,

a

b.

Se

simile. b,

mod

a

qb

mod dal

d MCD a,b

molto

Si analizza

ora

di a e b.

Si assume.

tamente

l equazione

33.7

per

le equazioni

ricorsi

doveq

pone La/b .

Les tnta

33.16

basato

per

essere sul

direttamente

il MCD

negli

è descritto

di origini

ancora

Teorema

33.9.

più Gli

vecchie. input

E1enienti

di

È scritto

cnme

la prova.

si completa

a e b sono

Euclide

interi

300

circa

dopo

l

che

a

argomenti

chianvata

0. allora

sempre

b

I

di Et. cuo

La

dimostlclZ1OM

F,

e pniché

ricorsiva vale

per

del

a mod

a.C. .

esegue

I

b

else

a muù

Eucuo b,

negativi

ricorsivamente

al

1 chiamate

QUUIC

C iCl11pio

di

dell

esCcltziol1e

al ora

su k. Per Z a

a

i1sod

b

a

I

n

di

EUclide,

si

coitsidiri

il

calcolo

di

più

il lemm i

b.

impliCd

1

b

-l

a

implica

a

moel

ia

a mod

ChC

l

vero

e

b Fg

che

vengona Poiché

ricor ive. z sua

provando

volta coii

fatte I

Eucuo 9,

3

di

chiamate .13 .

allora

esegue paiate

all .

La/l,J

a

i

sia

mod

b.

0.

F,,

e

/-

1.

in ogni a

l ipotesi

LII1 COI

OI1J -lO

Pert,,nto.

111llllull..ltll

61

gLICStO

1 chiamate h

f.

lèllll11.,1.

ricorsive

0 e EucLio u.

I chiomate

de1 lemma ,

I

1.

/-

l

I

té 1tclltil

a

secondo

0. si ha

F

iC .LICI1tC

b

del

grande

F ,,

Il

9

Eucuo 21,

una a

ricorrenza

dell induzione,

Poiché

21

21 Eccuu èO.

oritA10

numero

dalla

la base F,,

è strettamente

I chiamate

per EucLln

induttiva

avere

qualsiasi.

b ll

se b

ricorsive,

ha

F ,,

MCD 30.

usa

Eucuo

0.

definiti

a

return

può

immedia-

ricorsiva. che

il lemma

induzione

si deve

argomento

chiamata

induttivamente allora

L ipote i Si

poiché

3

grandezza ipotesi

richiama

è proporzionale F,,

della Questa

secondo,

a.

return

la soluzione

Analogamente,

procede.

di Fibonacci

b

a,

è per h.

a

il prinso ogni

b

then

0.

Et cuD a,b

poiché

Et. cuo

i numeri

b

ifb 0

2

con

in funzione a

è minore e poi

ricorsiva. di

utilizza

peggiore

argomento

i suoi

complessivo

L analisi

caso

di generalità, se b

il primo

una

0 e l invocazione

chiamata

ricorsivo

un progrumma non

se

nel

perdita che

scambiare

esecuzione

Dimostra-ione.

b

Eucuo a,

termina

decresce

33.10

si prnverà

algoritmo

Evacuo

a.

argomento

che

Euclide

potrebhe

il secondo

perché

restituisce

MCD a.0

b F ,,

o equivalentemente

e 33.17

di

f

chioma

sebbene

se l algoritmo

MCD a,b

Euclide

di Eucuo

piccola

si conc1ude

33.6 ,

33.3

una

Cioè, va per

termina

Si assuma

Il seguente

che,

che

are

allora,

di

fatto

implica

Quindi

di

dall osservazione

R

Algoritmo

ricorsiva.

di esecuzione

con

ve richieste.

ricorsi

33.17

combinare

e dal

all infinito

dell algoritmo

Eucuo b,a .

chiamata

Alloro. Usando

33.9 33.11

sé stesso

chiamata

il tempo

giustificata

Se a

Dall equazione

Corollario

si

b.

MCD a,

ogni

esecuzione

la procedura

è3.16

MCD b,a

e d a,

déb

ad

di Et. ccro.

Teorema

l equazione

richiamare

negativi .

J. Quindi, che

d MCD b,a

che

non

b.

combinazione

a mod

MCD b,

b.

33.6

implica

entrambi

quindi

Il tempo

dimostrazione

si ha che

di

essere

dove

qb,

l equazione

33.3

a mod

MCD b.

d MCD b,a

d a.

di a eh,

a

b

l un l altro.

si dividono

b

sono

poiché a mod

b MCD b,

il corollario

b,

uguali

mod

a

mod

e MCD b,a

essere

MCD a, 33.2 ,

lineare

mod

e d a

La

che

si mostra

Dall equazione

0, coine

può

ricorsive

dal

.

MCD a,b

devono

33.7

déb.

db

che

Si mostrerà

Dimostrazione.

b

a mod

b

chiamate

segue

b positivo,

intero

Tempo MCD a,

tre

corretta.

MCD

e qualunque

negativo

a non

intero

del

ricorsione

di

Teorema

qualunque

767

0

di Evacuo

2, allora

in modo 33.9

vi sono

correttezza

L algoritmo

Per

numeri

in fattori

la scomposizione

per questo

teorema.

Teorema

dei

3.

paragrafo

eseguiti

teoria

33.15

P,

si vedrà

Come

min e,./,

-..P,

min e..f

min è,.f,

P,

di

e a

b

ricoriive. mod

l

F.

768

33

Capitoli

Algoritmi

33.11

Teorema

Per

intero

qualunque meno

esegue

che

consecutivi

Numeri

Lamé

1, se a

0 e b

b

l invocazione

F allora

EucLtb a,b

il limite

superiore

chiamata

sono

input

gli

ricorsiva

dal

stabilito

e poiché

Teorema

33.11 Euct.to.

peggiori

per

0

2 si ha F ,

per

è il migliore Poiché

mod

F,.

F,,

MCD Fa,

F,

MCD Fi,

F,

superiore

Eucuo F ,,

E,.

r mod

de

33.11.

Teorema

equazione

dall 33.2-5

La

esegue

limite



operazioni

Op

33.1

tripla

Un

di chiamate Segue

aritmetiche

un

che

k

esaErainente

I volte,

ricadendo

limite

dove

p è il rappoito

ricorsi

ve in EvcLto

è O lgb .

è applicato

a due

se Euclide

e Op

di p bit

sui

operazioni

richiedano

Op

sul

dell algoritmo

estesa

di

Op

numero

aureo

bit

ora

l algoritmo

sui

bit .

d

d

d

b

MCD a,

az

bs

3 -2

15

6

2

3

1

3 -2

6

3

2

3

0

3

l

0

99

e 78.

Ogiti

calcolo

al

7á9

y

14 ll

I

di

che

informazioni

calcolare

per

i coefticienti

d

la moltiplica-

Il Problema

33-2

bit.

utili

interi

bx

a

ap

bx

Pertanto

aggiuntive.

x e y tali

99

si ha

d

la

chiamata

3

Exte DEt -Euct.e

input

sugli

rripla

78

-11

by,

v .y

d

c/te

sarò

nel

usata restituisce

ExmiDEo-Eccito 99,78

riga

mostra

alto

piii

listello

di

MCD 99.78

cosi

3.-11,14 ,

14.

caso

in questo

ax

e l equazione

Poiché

cali oltre

per

3

numeri

d

MCD a,

b

riscrivendo

si comincia

d

a mod

MCD b,

l equazione

f .

usando

33.19

Per

ottenere

l equazione

33.2

allora

Euclide

di Euclide

si estende algoritmo

lare,

3

I

diventa La

Euccro,

per

x e y tali

l Esercizio

di p bit,

che

sui

di operazioni

veda

Si numeri

assumendo

operazioni

definito

/5 12

l

resti cita

3 e MCD 99,78

limite

nel

ricorsive Si riscrive

3

15

di fioi ionamento

successivo.

La/lr

x

y ey

si soddisfai

La1bj

equazione

d

by.

av

dimostrando

di ExteisoEo-Evacuo. it numero fatte

è lo stesso.

In partico-

Jb y

Lalbly .

scegliendo.i

la correttezza Forma

esempio

r.y

d

Come

di numeri

di mostrare

richiede

stessa

d I /5,

stretto.

più

e la divisione

zione

richiama

il numero

2.14 ,

un

per

21

21

dei

F,.

.

F . è approssimativamente

Poiché

78

a/bJ

teoria

si ha anche

ricorsione

Pertanto,

1

F,

Figura

Fs

MCD F,,

x

b

78

possibile.

Evccto F,.

d

a

99 D

ricorsive.

di Fibonacci

una

fa esattamente

k

di / chiamate

dimostrare

Si può

di

Teorema

di

di

chiamate

ricorsive

in Exts oEo-Euct.to.

a meno

di un

i

fattore

fatte

costante.

in

Eucuo

di esecuzione

tempo Cioè.

per

a

è uguale

al

di Eucuo b

di

numero

chiamate

e di ExvzioEo-Eucuo

0, il numero

ricorsi

di chiamate

ve

è O lgf .

che

.

33.

8

utili

per

Esercizi Si noti

che

il calcolo

x e y possono

essere

reciproco

modulare.

del

di interi

coppiaqualsiasi l equazione

non

0 o negativi. LÞ

negativi

In seguito

coefficienti

questi

ExtevoEo-Euci.to

procedura e restituisce

una

tripla

saranno crome

prende

della

forma

.y

d

input

che

una 33.2-1

Si dimostri

33.2-2

Si

33.18 .

ifb 0

2

then

3

d.

33.2-3 return

d.. ,y

5

return

EXTEYDED-Eucuu i ,

Si

x,

cf.

y

I equazione

implicano

33.14

restituiti

in

chiamata

della

output

33.15 .

ExtewovD-

o 899.493 .

dimostri

MCD a.

r inuma h

33.2-4

y

che

33.

I illustra

Si riscriva

l esecuzione

di

Ei-,rior.o-Ecc o

con

il calcolo

per

tutti

gli

interi

lei.

ir .

a,

I e ri,

vale

MCD a

EXTEYDED-ELICl.lD

i.

llll 1

V lrl 17il tle

dClla

Fucun.

procedura

l algoritmo di

in forma

Eicun

memoria

iterativa solo

menloriZzi

cioè.

un

che

in modo nunlero

salo

usi

di

costante

una alari

quantità iilteri .

di vICD 9 .78 . Si

mostri

ricor ive. procedura

st

cost mte

33.2-5

La

valori

i

e

33.13

-LalbJy

dry ..v d .v.

t-,gura

La

le equazioni

a,1.0

x, y

4

calcolino

Eucu

ExtE ozo-Eucuo a,b l

che

soddisfa

La

linc

l

e

che. Si

mi

e liori

b questo

0.

l i chi nu t lignite

Eucuo a.

ubbassandolo

b u l

fa sl li

l

piii ,l

chiamate

logp

IMCD a.

b .

i

.b al

equivalente

noli

restituisce e,

a,

controllo

l y.

solo

0 cl

Sebc0.

a

Eivt

in -Et

nell 1

nell,

li,aa

line..t cl

tripri

1 di . llla n.. .alcol

Eu-un.

.,1ncl1e

Sé i

r cl

b

0.

coetticieilti ..v,y

allora X

c

.,i

cltert

E u, nrn-E ,n.i, I,

0. MCD l .a

33.2-6 Cosi nt cl

e

d

Ii

ci mo

bi

. 33.19

che I,l

Cosa rispnst .

restituisce

Exrr r.ru-Evcun F ,

F

Si

dimostri

la

correttezza

della

770

Capirolo

33 Algoritmi

33.2-7

Si verifichi ax

33.2-8

l output

Si definisca a ...,

stesse

.

lg max,

a .

33.2-10

argomenti

hBCD a ...,

a .

che

che

Xp

Z

tali

X

il numero

con

se d a,

l equazione

Si mostri

dall ordine

trovare

Si mostri

v.

db

e d

che

con

cui

che

MCD a,,

di divisioni

ricorsiva

MCD

sono

specificati a,,,

eseguite

cioè,

a ...,

il più

a

come

intero

piccolo

mcm a a ...,

Si dimostri

che ll

n,,

dall algoritmo

ed

delle tra

primi

i,

comune

negativo

in modo

sono

Si mostri

se gli elementi

tnultip/o

che

è multiplo

efficiente

usando

degli

di ogni

0,

tranne 1,

...,

che, n

modello

1

interi

informale

utilizzando

l operazione

Figura

XICD

Un

tra

primi

loro

coppie

se e solo

che

di un insieme

se MCD 17 I2

n n...

n sono

gruppo

ora

dei

1. 2.

è un

di I Ig/-

1 coppie

di numeri

per

Idéntità

3.

Associatività

4.

Reciproco

di

modulare n,

ogni

se

si

ci

n

limita

un

come

risultato

a x modulo

descritto

bo

v va

alle

aritmetica

sostituito

x è sostituito

cioè,

modello

all ususle

operazioni

con con.x

di

formale

più

dei

l elemento mod

addizione,

per

numeri

0 è l identitè, a O S

b

insieme

S con

a, b c

ogni

o opposto

si consideri e t oppostn

b O n per ,

alIoru

è un

4

4

H

I

13

l4

7

I I

2

7

7

14

13

4

Il

2

I

3

4

5

0

2

2

3

4

5

0

3

3

4

5

0

l

4

4

5

0

l

2

3

5

5

0

l

2

3

4

Dr e

I

2

ll

4

I3

l4

7

T

14

2

I3

I

8

4

l

l4

h

4

2

7

4

8 I I

I

13

t3

Il

7

14

14

l3

ll

un

operazione

binaria

Q

n.

di

modulare

su S per

S, si ha er

a,

Stille

b, c z ogni

per

ci O

else

cui

S, si ha ci e

5.

8

a

esiste

b un

8

a per

c

a O

unico

l

ogni S

eleinenta

s

S.

c. b e

S tale

ogni gruppo

il noto

ruppo

edi a è n, b e

a.

S. allora

de li

Z. Se

un

gruppo

i u,t gru ,o

interi S,

Z Q

alrcfiam .

otto

l operazione

sorklisfu

che

Sc

di

la legge tn

,ruppo

a O b

ddiziOIlt .

coiwnutatiia 5,

di equivale Z,

t.a

sono

denotare

dai

loro

elemeirri

rappresenta-

.

e dalla

Oj

due

un

Questi

moltiplicazione

modulari

di

sulle

di opportune

su

la classe

ii

l addizione

basati

addizione

e moltiplicaziane

mad

usando sono

vi è bisogno

operazioni

univocamente - a

se a

finiti gruppi

e la moltiplicazione

modulo

di equivalenza

classi

degli

interi

33.1.

su Z ,

gruppo comuni

di addizione

determinano

abeliani

gruppi

positivo. al paragrafo

le

eh

e

n,

binarie

che

È

facile

Z perché

le classi

di equivalenza

b mod

operazioni moltiplicazione.

somma

1e

definire

di equivalenza

loto

della

si ottengono

di due

o del

loro

interi

prodotto.

allora

e a

-a

b

b modn , a b mod

.

si definiscono

l addizione

e la

moltiplicazione

n, denotate

modulo

e

con

-,

segue

a

b

a

b

b ,

a b . sottrazione

divisione e Sa

Il gruppo

valgono

S.

ea

Le classi

b

dall addizione

intero

definire

La

b c

finiti. ,.

Z,.

n, definite

Cioè,

Questo

sottrazione

l aritmetica

definita

I

h

gruppi

formare

operazioni

e.

esempio

13

I

2

n è un

di usare

equivalenza

c u eEo

eseguite

tante

della

analogamente

complicata,

conveniente

sono

essere

puo

è più

come elementi

gli

si eseguono

di solito

sui

classe

cioè

sua

Usando Per

II

I

definiti

ab

elemento

per

7

l

ottenuti

gruppi.

ogni

vi è un

I

5

I gruppi

loro

proprietà.

Chiusura

l4

4

tl grappa

come

8

H

3

Si possono

modttlo

è sufficiente Verrà

S,

4

2

ll,l g

tra

primi

finiti

le seguenti

2

l

Pertanto, Gruppi

l4

2

0

33.2

rii i. a

in generale

più

aritmetica

è congruente

la teoria

l

0

a

loro.

all

operando

moltiplicazione.

l

5

a,,

modulo

pensare

che

h

4

a,. Si mostri

Per

interi

ro

7

3

ridefinendo si può

i

4

2

è On

modulare

Informalmente,

ir

2

l

ap j

sottoprogramma.

n, 1.

il minimo

non n

come

lg

n, sono

Aritmetica

771

i suoi a

tr, dove

33.3

7

numeri

I

0

restituisce

dei

2

MCD ll /lq

dagli

come

argomenti

se e solo

di due

più

indipendentemente

calcolare due

di

per

MCD a ,

mcm a,,

a.

come

a

Q

Si definisca a,

MCD

Si mostri

QX

mostrando

MCD a,b .

soluzioni

argomenti.

33.2-9

d

la funzione

MCD a,, le

di ExtewoEo-Euct.to a,b

d v,

allora

by,

teoria

di

Z.

tornisce

la ubella

.

La

non

definita vedrà .

calcoli

da.v

mod

del

dell nperazione

ma

Teorema Il

sistema

/.

33.

ui1

rupp i

rappresentanti la sottrazione

ni risultato

pratica di ogni

ma

la

comune

e

classe

di

e la moltiplicazione sostituito

viene

b .

a la

dal

rappresen-

n. modulo

,d,litigo grupp, gruppo Z. de1

12 i

iJ ,b giustificano

conte

somma.

La o

sud J i.,l ,

finito.

Z con fatti

minimi

in Z .

del l aùdiziin e

cardinaliù

su

Questi

negativi

rappresentanti.

definizione

questa

n come

si

ih lian i

f inito.

n. si definisce mode,lo .

n è

il gruppo X

additivo ,. La

t,guru

modulai 33.

a

T A1gori i

Nel di

seguono

dall associatività

e dalla

di

coDmutativiu .

f l.

e la commutatività

L associatività

oige.

b

a

fe

fbl

resto

e

le usuali

con

modulo

seguenti

a

hl,

b

a

ax

b .ri

I elemento

a

cioè,

Inoltre,

come

è 0

Z,

cioè

a ,

n

L opposto

0 .

di a

a

poiché

un

elemento

a

a

a

cioè

è

aJ

la definizione

modulo

n come

Z che

sono

Z

a e

Per

interi

gli

interi

Gli

.

rispetto

7

0 a

13

che l.



di questo

I

definito,

Da11 Esercizio

/ . Poiché

elementi

n ben

modulo

n, si definisce sono

gruppo

il gruppo

l insieme

moltiplicativo

Z degli

elementi

di

. che,

allora, kn

a

per

0

MCD a,

k e

Z ,1

a n

n, si ha l implica

insieme



kn mod

a

MCD a

ben

ia ,

definito.

Un

n n

per I per

esempio

di

Z5

2

l

dove

4

7

8

l operazione

elemento 8 I l

11

del

a

con

13 mod

15 ,

Teorema

Il sistema

13

a.

è la moltiplicazione

La

figura

operando

33.

in

modulo

33.2 b Z, .

mostra

L identità

15.

il

per

In

gruppo

questo

caso

questo . .

Z,

gruppo

si denota Per

è un

abeliano

33.12.

l.

di Z e

QI

Il Teorema

essere

possono

dimostrate

elemento

sia

tl

i

x,y

d,

e ntità

l.output

33.6

implica

per

come

è

1 .

che

Per

la comoda

e le operazioni

rispettivamente. equazioni

in Z .

Inoltre.

Per

esempio.

di 45

tale

a un gruppo si farà

Quindi

S, 8

a Z,

è chiuso. fatto

l esistenza

di Exvexogo-EvcuD a, .

Allora

vitè

cosi

che

denotata

con

Per

- 4

417 con

n.

in Z si

13

àn.

mod

a

esempio

7 mod

divisione

7-

in Z è

13

definita

15 ,

mod

reciproci, d

conosciuta

come

la finzione

fi

. 33.20

i primi

che

dividono

n compreso

si comincia

con

ana

divide sono

n, si cancella

ogni

n se n è primo .

lista

multiplo

degli

dip

n resti

nella

lista.

Si dimostrerà

O, I,....n Per

I

esempio.

ora e poi.

questa

per

- 1

3 e 5,

l -, -

ar-. -i

un

primo,alloraZ

I

1,2....,p

e

mutativ

del

Teorema

a un

elemento

e s

33.21

n è composto.

allora

n

p n

l.

i tè Sottogruppi

Ze Se

8

S.

écru

è un

ppA.

S

c

S

e anche

i. i .

6

i

un

ruppo.

un

sottogruppo

allora

S.

l

equivalentemente,

Perito. i,oeamente

mod .zj è

n

S.

8.

Per

di

aùdizione.

7ione

esempiv.

interi

gli Il se

uente

p iri teorenu

formano fornisce

uno

strumento

degli

8

è detto

iiiteri

utile

sottngruppo

rispetto

all opera-

riconoscimentn

perii

dei

. un

reciproco

è rimandato

di

a

modo

al corollario

n.

mo zz

che

nc

ogni

i divisori

poiché

esempio.

e la cons

sia

I, poiché

poiché

15 .

funzione,

Questa

La

ha

24.

dimostrnzlone dei

Z,

l equazione

-

è I.

L associati nella

per

con e

i ltOHI1lppl.

ax

le

semplicemente

riferimento

PV -u-

Z,

mostrare

n.

mod

I 5,

mod

su tutti

primi

tutti

finito.

si è gih

l

Intuitivamente. p che

di

oppure,

come

ci si riferirà

contesto.

a è denotato

ab-

di Z è

p varia

primo

Se Dimostrazione.

dal

elemento

, ,rr i

Sepè

ppo

talvolta

chiara

tutti

13

Z,

-

14

gruypo

un

soddisfa

formula. a

sia

a/b

91

è

gruppo

la giustapposizione ,

o

interpretate

si seguirà

.

rappresentativi

rispettivamente. di

cardinalità

dove

si noti

33.2-3,

a

Z,

773

equivalenti

convenienza,

per

Z,

di Eulero.

a n

Z MCD a.

vedere

gli

di moltiplicazione

Z,

primi

sono

l operazione

dall equazione

La Usando

e essere

elementi

nw ri

n,

mod

ancora

Ze

aj .

-a o

aritmetiche ii possono

e

Z,

gruppi

i loro

dei

lb1 .

Il reciproco di

con

espressioni

S quando

b identità

dei

di equivalenza

teoria

c

bg c , al,

L elemento

si parlerà

quando

classi notazioni

1e equivalenze

c

a b

fa

b

capitolo,

di denotare

due

al

del

pratica

di

no

e m

3-.2á.

e

W a

S. O

I,

8

i .S

ui per

rt ppo ,ani

lini o t,

I,

c

c S..

5 all ,r,

à. un

iottuinsiemc

qu llii iii .4

. 8

i

tn

so tn,gruppo

vuot

non di

5.

G .

di

S

tale

che

774

33

Capitolo

di

Algoritmi

Dimostrazione.

La

dimostrazione

è lasciata

come

6

un

Esercizio

esempio,

Per

l insieme

teorema

Il seguente

2, 4,

0, è chiuso

cioè

forma a

rispetto un vinco

fornisce

di

sottogruppo

Z,

è chiuso

poiché

rispetto

Se

S,

di

fS .

33.15

di a

L ordine

.

nel

è un

8

di

utile

sulla

gruppo

è un

di

sottogruppo

8.

S.

allora

è un divisore

S

qualsiasi

usato

un gruppo

S 6i

al

nell analisi

33.8

paragrafo

S è detto

sottogruppo de11a

di

procedura

II seguente

se S W

proprio

Miller-Rabin

per

corollario la verifica

di

a ,

a ,

a

33.1

Coeotlario è un

sottogruppo

di un

proprio

finito

gruppo

è distinto

genera.

cioè.

è uguale

di un elemento

a c S, l ordine

ogni

ord a

alla

a afe.

S, allora

jS

da

ge cerati

un

fornisce

si sceglie

O

S,

un

a usando

da

generati

un

che

l

modo

interessante

del

tutti

elementi

gli

di un

che

si detmisce

In particolare,

gruppo.

sottogruppo

un

produrre

a e si prendono

elemento

l operazione

per

per

ci

t si supponga

a a

a dato

contraddizione.

i

0.

che

Ma

della

a

a

a

pe che

implica

il valore



positivo ,,

a

a ,

sequenza

r,

i

e

a

questo

r ma

t-j

elemento

1, se

dopo

assurdo

per

I,-

per

elementi

k

per

che

ciascun

e. Pertanto.

a

a

altri

sono

a 5

t .

a ,

....

a

con

è periodica

r

periodo

cioè

ord a

a

a

se

se

e solo

D

r.

mod

gruppo essere

possono a

che r. Allora

j

S

a

non

Quindi,

33.18

sequenza j

i

a

elemento

i 33.14

tale

i.

dimostrare

Per che

a

AS 12.

La Il Teorema

a . tali

e e a

a

Poiché j

e. una

e

Corollario Sottogruppi

finito

e per

che

ord a . qualche

a piccolo

più

á

r

per

...,

i ej

qualche a

S

finito

sottogruppo

Sia

a

ailora

primalità.

Se

S,S

gruppo del

cardinalità

Dimostra -.io,re.

sarà

che

0 tale

D

sottogruppo

Un

t

il minimo

33.17

Lagrange

8

come

è definito

ord a ,

di un sottogruppo.

cardinalità

Per e S,

finito

con

denotato

S,

gruppo

w

o estremamente

Teorema

775

.

1.2,3.4,5.6

Teorema Teorema

numeri

dei

33.3-2. 3

all operazione

teoria

I

Per

1 con

il corollario

definire

si puo

precedente

come

a

come

e e a

a

per

ogni

intero

mod

t,

i.

R

a

Q

a

a O aO ... k

Z si

gruppo da

generato

a

tn

denntato

I

a

a

ha

a,

.

n 2

se si prende

Peresempio. Nel

Sa

33.19

Corollario

vi lu.

l

con

nel mod

n e nel

a

oppure

il sottogruppo

n

la sequenza

Z,.

gruppo

Z si

gruppo

con

a

a ,O

,

,

a

Se ...

a

ha

, è definito

.4.0,...

è 2,4,0,2.4.0. a

mod

h.

Il sottogruppo

S.

O

è un

t

e. allora

identità

con

Il Teorema

Di nostra-io,te.

da

finito

gruppo

che

implica

di Lngrange

S vale

a c

ogni

per

ord a

ci

e cosi

S

e.

- 0

j

dove

ord a .

. Esercizi

Si dice è un S

che

a gerbera

finito

sottoinsieme

o che

comprendente

di S, eventualmente

di

a è un generatore tutto

a.

Poiché

S. Poiché

5 è finito,

a di

l associativith

33.3-I

implica

Si considerino che

rj

ri g

a

Ci

i

ji

è chiuso

e quindi,

ha

loro

i

CI

il Teorema

per

33.

l.

ya

è un

snttogruppo

di S. Per

esempio.

in Z ,

questi

a

si

delle

le tabelle sottogruppi

sono

elementi

tale

n lie

ac

n od

operazioni

i gruppi

per

una

esibendo

isomorfi a

che

b

-

c

cod

4

e

se

solo

5.

4

f O. 1,2,33,5

33.3 2

Si

dimostri

33.3-3

Si

mostri

33.3-4

Si

1 4.

3è.

il Teorema

in

A11Jlù JlllCllle,

.

che

intero

ed e è un

se p è primo

positivo.

Z,

ii

lu

mostri

f,

Zm

Si

elenchino

che

per

ir

qualunque

lievita

Z def

da

f .v

uv

l mod

e it

per è

una

l,

33..3-5 1. ,4 ,

allora

.

0.2.4

I

atra

biunivoca

0, l

Si mostri

e Z,.

Z,,

corrispondenza

tutti

i scelto

ruppi

ùi

X,,

e di

X.

qualunque permutazione

p f

n

p

s

Z. di

Z

la

I.

funzione

se

776

Capitolo

33

33.4

Risoluzione

di equazioni

lineari

- Si considererà b

a.z

ora

n

33.22 .

che

siano

Può

esserci

il sottogruppo

a

l equazione 33.15

nella

di trovare

pratica,

le soluzioni

dell

che

una,

nessuna

di Z generato ha

33.22 dice

a, b ed n e si debbano

dati

di

da

soluzione

deve

a

carattenzWzione

una

essere

o più

a.

Poiché

se e solo un

trovare d una

l

di n.

n che

x

a

0

Il seguente

mod

ax

Il Teorema

a.

i

x

di Lagrange

mod x, è una

d

teorema

fornisce

una

I equazione

precisa

x, sia

e che

una

soluzione.

se d

positivi,

d, 2d,,

MCD a,

ii ,

allora

x

sono

d-l

nld.

Si

Dimostra ione.

Si

Poiché è

un

interi.v

d c

ora

ai

m e

np per

d c a.

y

contiene

a

osservi

d. Quindi

ax

ad

perché

di J appartiene

Percio,

Si

ngni

a

che

d

cosi

modn . un

elemento

ExTEioEo-Eccuo a,

in

multiplo

di un

d c

n e b sono

c

a

Se

rf . intero

qual he

m e

allora

a,

y. Pero

t

d fa e d n,

av

mod

dam

quindi

risultati.

questi

esattamente

n cf

si ha

multipli

che

a

di d tra

cfj. tt

0 ed

Per

2d,

n per

multiplo

...,

di a

intero.v

qualche

che

e cosi

1

d,

2

if déb

n/d.

ar

Corollario

b mod

si osservi

che

l inctusi.

ir

v

s fzlcl

i

0 to

do

è risolubile

nell incognita

x se e solo

se

MCD a.

n jb

e

mod d

l equazione

a risolvere

Gli

di quest equazione.

input

arbitrario.

positivo

n

l

stampa

n

mod

i n/il

x

nessuna

stampa

ha d soluzioni

distinte

modulo

n, dove

d

MCD an .

oppure

alla

n 11

3.

l.

appare

i...

di

a

indici.v

di

,

lunghezza cl posizioni

Teorema

33.23

soluzioni

e ii

n c il ul tti

IIl

l11 Cl

perioù

n ll

sono

cuppon, .

soluzione.

uha

ni

ripetuto le

sc luzioni

av

il

per

mod

n.

esattamente

che 1.

tuoil

allora

n/d,

a

b

i

per d

u

i

il

volte

dell

equa inne

ii,. .

perqualchi

v Iure. , .

c

a.

Corollario 0,

La

sequenza

33.18. I.....

con

n

b

in ero Se

b

c

1. poi hi da mod

v e i. cl b,

cri

Se

i crescente ax

E cri. sano -Eucl.in .

pn cedur t l

II

ha

e Jucnza i

nell t

dell equ rione X

n

con

n/il

queste

gllelli

mo

volte

d

MCD er.

COI le

b

è periodica

esattamente

valori

-

av

Se

i 0.

allora

mo

a.

n,

30

sia

il blocco 0

n

mod

soluzione

100

funzionamento

in

I, si ottiene

linea

questo

cl

iVICD c iq di av

soluzione

che

i due n.

cl mod

pereiempi , una

di

delle

.

i

100

questa

14.

b

1.

30

2 30,

Poiché

alle

Il ciclo

95.

si

procedura. e n

100 . sono linee

n/ill

in

n/ct

funziona

MODULAR-LlNEAR-EQUATION-SOLVER

a

lnve

7.

mod

15

n

2.

di

eseguite 4-5

l*equazione

consideri

Exte ioEo-Eucuo

Chiamando

3-5.

le linee

Alla

linea

soluzioni

le due

stampa

e 4S.

1. Gli

n,

caso.

i

d,.v, 7

si calcola.r

LQ pl OCCdlllQ

allora

di

esempio

Come lux

n

mo

Dittiostra-irite.

.I ,

8

n

EXTEVDED-Eucuo a,

-

else

6

soluzioni.

Si

1

for

95

di

X,

5

8

33.22

L equazioneav -b

b

33.

33.21

L equazione

per

le soluzioni.

b, n j

Er ci,

abeba-Egu vtow-Sou

then

3

Pertanto

336 .

a

intero

e n è un

33.18 ,

il corollario

Per

tutte

le soluzioni

x ....

xe,

n corollario

1d.

ri/d

dall equazione

vedere

interi

arbitrari

1, i valori

d mod

ai

necessari

matematici tutte

stampa

...,

1,

soluzione.

sono

...,.v ,

strumenti

gli

algoritmo

0, sequenza

x, è una

ogni

x ,.x,,

distinte

d soluzioni

a.

4

sono

il seguente

i

per della

allora

quindi

tutti

presentati

n,

n

MCD a,

d

dove

pb,

l.

d-

periodicità n.

mod

d soluzioni,

it

MODl LAR-Li

d,

0,

che

n

rlj.

Corollnrio

ha

eu-

multipln

a.

che

Combinando vi

che

che

a.

mostra

nt

mostrando

tali

ogni di

cPj a

Si

ey

a.

multiplo

Cioè.

comincia

cosi

sono - b mod

ex

- b

di az

soluzione

esattamente

sono

n. Dalla

modulo

distinti,

tutti

33.23

e pertanto

gli

l,2,

i n/d

cioè

esattamer,te

ha

quest equazione

0

Oc

n/d

Poiché

sia risolubile

n

b mod

i n/d ,peri

da.v .g

date

una

se. è

1d,

iild

vi

produce

ar Allora

33.20

0,

iai

n.

mod

33.24

che

Si supponga

modulon

e n interi

qualsiasi-a

a

di a.i

soluzione

Dimostrazione. Per

n

Teorema

0,

Teorema

a.

Teorema

-b

si ha

n

mod mod

e cosi

soddisfino

p

- d b1d

n,

mod

777

na meri

soluzione.

a

se b c

divisore

le x modulo

i

equazione 33

0. Si assume

l equazione Sia

rilevante

n,

mod

dove

il problema,

eu M

Poiché

DimostrazEone.

modulari

dei

reoria

di

Algoritmi

m chilo

t.

valnri.r Se

cI nvn

e y

tali

cliviùe

che

cl

b.

allora

nx

come np .

l equazione,n

1

La linea

segue.

che.r

dimostrando - b

mod

n

CBICOla

è una non

ha

778

Capitolo

33

MODULAR-LINEAR

le operazioni ogni

EQUATION-5OLVER

aritmetiche,

iterazione

del

richiede Expo

poiché ciclo

for

al e

tempo

reo-Euct.io linee

di esecuzione

richiede

4-5

richiede

O lg t

O lpt un

i CD a.

operazioni

numero

di

corollari

Corollario

del

Teorema

ed

forniscgno

caratterizzazioni

di particolare

Il

teorema

n

qualsiasi

1, se MCD a,

ii

l, allora

l equazione

ax

b

n

mod

ha un unica

reciproco

caso

di a,

comune

modulo

di

notevole

interesse,

la

soluzione

x che

si

sta

cercando

è iI

n.

il loro

Per

n

ax

l

I,

se MCD a,

n

I, allora

dC.,

23

tune

del

un unica

primi

n.

Altrimenti

In

ha

33.26

reciproco

di a madulo

soluzione

dell

permette

di

usare

n,

non

la

ha

ai

i

mod

mod

a tra

primi

è l intero.r

loro.

n

Se

restituito

fnre

per

iVICD a, da

l equazione

implica

n

1

riferimento

i

l,

al

allora

Ex Exoeo-E .cu .

l

mod

105k

tra

un

usi

Sia

principali.

il teorema Z come

di

n

l intero del

cinese

termini

in

Sia

n

n.

Pertanto,

tutte

Si dimostri .

che

Si

mostri

moù

a

n

le soluzioni

dell equa2ione

l equazione

nx

che

controesempio

33.4-3

con

gi consiQeri

essere

po

calcolata

la

mod

condizione

MCD a,

i/ seguente

- ai

campi

n

3

then

x ,s-x bld

e

3g.

-f , f

Sia x da Qtl1lOS

Z

cod

Giustificare

dove

,.-x p P

gg

è gg

10

ntod

implica

x

n

I

MCD a.

tr

-

35x

modulo modulo

dove

n, i,...n , teorema del

n,-

i fattori di struttura cartesiano

prodotto

in

ognuno

bit

che

cinese

del

resto

primi

tra

sui

. sistemi

eisci

o

modulo

lavorare

Z p

può

rivelarsi

più

n.

f Teorema

33.27

i fattori

dove

il,

sono

la corrispondenza

Si consideri

loro.

è3.25

a a,,a ...,a ,

poiché

c

a

ac

Z.

Xe

efttcientensente

COI1

er

ii,

a cod l,

i

2,

...,

eseguite s

la

Allora,

k.

in n odo

corrispondenza

. corri pnndenti d

sulle .

equivalente

tn

33.25

y è

zioni

indipendentemente

a m

a,,

a ...

a,.

b m

b,.

b,.....

h, ,

cnordinata

ogni

per

Ze

cartesiano

t--u p le eseguendo appropriato.

cisterna

nel

il prodotto

le operase

Cioè.

.

50 .

n

mod

per

necessaria

KICD a.

allora

ii

tornendn

un

a

b

a

b

mod

i -

b,

a,

mod

II

,

...,

lg

Cip

l11OCl

li

33.26

.

I.

al

m rl ù

Clell

t li he i 3 fi Mow

SOLVER

Funzioziona.

Il

arbitrario.

di equazioni e un equazione

a quella

identica

operare

poiché

operazioni

di

n,i ...n .

eessere

33.4-2

I intero

è un

resto

Esercizi

Si trovino

interi

ne

EXTENDED-EUCLID.

33.4-1

per

sistema

3, 5 e 7

esempio,

per

gli

Un delle

una

ct,

-

a

ar

due

struttura

la

efticienti

algoritmi

dove

MCD a,

23

forma

trovare

7, rispettivamente.

3,5e

soluzioni.

notazione

a e n sono

quando

equazione

di

polinomio

il pmblemadi

risolse per

corrispondenza

a coppie

luogo.

primo

descrive

Teorema

Il corollario

un

p è primo.

l equazione

efficiente modulo

r che

numeri

105 .

resto

del

loro.

che

loro

fra

primi esempio,

cinese tra

oottenere

soluzione,

su

p dove

divisi

della

sono una

fornisce

33.24

ha

induzione

Sun-Tsù

do venarono

quan

le soluzioni

resto

per

cinese

il matematico e

di moduli

descrittivo

n

mod

è x cinese

Il teorema

33.26

qualsiasi

per

modulo

distinti

dei

resto

del

resto,

prodotto

sono Corollario

100

come

insieme

un 1, un

nel

danno

soluzione teorema

soluzione

.

Se b

cinese

All incirca x che

Per

1. Si provi

t zeri

teoria

interesse.

33.25

modulo

r

al più

avere

di

operazioni

33.5

33.24

t può

grado

di grado

gx

polinomio

per

aritmetiche

costante

aritmetiche. I seguenti

n

Atgoritmi

cod

n n

m et,I ,

mod

l7

Cl cod

i,,

n,.....

b

a u,li,

nnl

n,

i i, 7

n.,

mod

33. 28

.

L R-l-i

imo

.

nkA

mod

ra io

.

.

..

.

i

abbastanza

semplice.

Per

la riiposta.

... m P mo. è

f f

x Si

uno,-zero

mod dice

p che

u poli a

c

..

di

f,

allora

pi.l

non io Z,

I

è .i

di

uiw -

,ero

t c n

gr,clu pii f a p .i

coi

l t iridanti

sc/ta m d

0 p

mo pr

/ pii,i . qu ilchi

Allora. Si

I .......,,I ,.

...

ponenelo

k.

51

llOtl

Clli.

I l,.

l1

-....,...,..... 1l....., ,,lt,,,...

ll .

C llil

CI1l.

Ill, l. Ill

p

cr

i,,t i

/ c

i.

ieri

Algorifmiditeo d c,

m,

mod

...,

k, si ha

a,c,

a,c,

si noti

un vettore

mod

0

...,

0,

I, 0...,

che

senso,

m,.

mod

mod

4

5

6

7

8

9

lO

ll

12

55 lá

30 56

5 3l

45

20

60

35

io

50

25

6

46

21

61

36

ll

51

52

27

2

42

l7

57

32

sia

si ha

tra

primi

definito.

loro

7

47

22

62

37

Per

il Teorema

per

verificare

33.6 ,

12

3

f3

53

28

3

43

18

58

33

8

48

23

á3

38

l equazione

4

39

l4

54

29

4

44

19

59

34

9

49

24

64

resto

cinese

per

cosi

33.30 ,

la corrispondenza Figura

che

mod

n

mod

n,

nella

i-esima

coordinata

la rappresentazione.

per

ir

mod

si può equazioni

I seguenti

eseguire

dove Per

ha un

ogni

n,...., i

qualsiasi,

e dosi

a destra

di

verso

destra

i versi,

direttamente i

1,2,

successivamente

la corrispondenza dall Esercizio

33.1-6,

tra

loro

una

colonna

il basso

3 40

52

poiché

...,l .

nel

2 26

a

è biunivoca.

120

a Si veda

capitolo.

la tigura

Quindi primi

ll

5 e n,

13.

Iir

esempio.

questo

si

incremenra

e a desrra,

a di

richiudendo

40.

As menrnre

a di

circolarmente

le

l eorrispoirde

diagonali

a spostarsi

dal

basso

afl alto

e

usaré

la

a sinistra.

per

33.3

a coppie

ed

n

ll l1

...

11g.

Qllora

interi

per/

di equazioni

et,, a...

come

a

mod

65

mad

65

mod

65 . un

per

operare

rappresentazione

sistema

del

e

modn,perqualsiasixe

n sono

teorema

si ha

33.28

n,,

del

I. Le c, formano

i allora

.

in entrambi

usati

Un ilh stra-ione

diagonalnrente

seguono

saranno

33.3

bum

la trasformazione

33.Z6 - 33.28

corollari

Corollario

i

ir, sono

n,.

Pertanto

tranne base

una

n,.

n, xmodn

per

3

15 4l

da

xmod

a,

m,e

0,

ha 0 dappertutto

certo

rn,

n, .

mod

a,

x

2

40 t

.

poiché

a c, - a,vr,.

Se

e

definita.

implica

m,

che

in un

a

a,r,

c,

0,

0,

cosi,

..., è ben

33.26

che

c, m

,

33.29

il corollario

Poiché

I

o

33.30

L equazione

Le

0

p

-

781

n, ,

33 29

1.2,

peri a

m,

illustrazione

modulo

risulta

più

si

n

trasformata

che

conveniente.

del

usare

puo

impiega

I calcoli

teorema

cinese

direttamente

i calcoli sono

del

il

nqodulo

assolutamente

resto

65.

modulo

moùulo

.

oppure

t, separatamente.

a seconda C

11



equivalenti.

n,

mod

Esercizi 1, 2....,

k, ha

un

unica

soluzione

modulo

n nell incognita

x. 33.5-1

Corollario Se

n,,

x

u

per

i

n,

primi

mod

loro

a coppie

e n

1l ll

..

11 .

Bllora,

per

tutti

gli

interi

a e.i-,

Ii se e solo

a

3

mod

io de l teorema

132 ái R

delle

equazioni,v

-4

mod

e x -5

5

mod

I 1.

Si

spieghi

- 2 mod

cinese

5 13

- 3, 3 5

che,

in

base

alle

mode

resto

I, 2, 3. 4.

2,

divisi

3, 4, 5 e 6. danno

per

definizinni

del

modllj . cr.

Teorema

33.27,

n1od . ... n,.

a

del

resto,

si suppnnga

In

33.5-4

di avere

le due

ba e

e 5-,

y ir,

rn, ..

- 8 imod

3 e si, vogIia 13 .

calcolare.

a mod

65.

alle

detrnizioni

equazioni equazinne

equazione

13-, mod

x che.

carne

se

1. allora

lv1CD ei.n

moda .

8

13 ,

ntnd

interi

gli

se

dell

percuia, ,n, m, 5,Q che

rispettivamente.

ei

esem

mod5 ,

tutti

5.

n.

2

,

tra

33.5-3

a

c.

le soluzioni

n,

1. 2, ...,

Come

Dato

tutte

Si trovino

33.5-2

n . sono

m od

x - a

trovino

Si

33.29

. essendo

ny 65.

33.6

Potenze

di un

fix / .v

-0

del mod

0

Teureissa n

mod ir, .

Jh

33.27.

è

ug,n,le -

0

si

al

n, ...

m id

dimostri

che del

prodono f .v

il

numero 0

nunsero di

radici

di

radici di

o,,ni

H

i

n .

n od

elemento

si ha

26, 40.

n Hur llc

Il l

cotTsidcrare I

.

I

lu

se ilcnzil

delle

p toni .c

ali

I

111OCkilo

n.

DOVE.

Cle

I, .

1 ,

I

.

Cl

.....

e di

Algoritmi

Teorema

modulo

da 0, il valore

n. Indicizzando

valore

è a mod

n.

esempio,

Per

0-esimo

le potenze

di questa

sequenza

di 3 modulo

è ao mod

n

33.33

Se g è una

radice

l

2

3

4

5

6

7

8

9

10

3mod7

1

3

2

6

4

á

l

3

2

6

4

di 2 modulo l

2

3

4

5

6

7

8

9

10

11

2 mod7

l

2

4

l

2

4

l

2

4

l

2

4

I

kOIII

r

k

8

ordine

l

con

ord 2

il paragrafo

il Teorema

si può

33.3 ,

il sottogruppo ordine

della

dia

di Z generato

in

funzione

enunciare

e la sua

di Eglero

Teorema

si denota l

la definizione

3. Usando

veda

si denota

a

n

di a modulo

Z.

33.19

a e con

2

come

nella

dove

Z,

per

esempio,

di Eulero

pn

il Corollario

specializzazione

Per

da

in

1,2,4

dimensione

notazione

p è primo,

per

Z

di Z si

di Z per

ottenere

ottenere

anche

di g

elemento con

e

di

ii

mod

i

mod

n

mod

ir .

qualsiasi

a

I

n

intero n

mod

33.31

Se p è primo,

a c

Per

Se p è un

33.32

di

ogni

ac

Z

l equazione

l

.

3.i,3

ogni

si h che

a Z,

ord g

è una

fZ .

radice

modulo

1 se p è primo.

p

da ogni

a

allora

a

Se Z ha

dimostrazione

del

ogni

oppure

pris titiva

7.

W

elemento

di Z

tranne

lo 0, dato

che

0 e

7,

. Tuttavia,.

over

Se

n

g

di n

una

in Z è di

generatore

Z.

si dice

primitiva,

teorema,

una

che

Per che

è provato

di g modulo

potenza

da

esempio,

3 è una

il gruppo Niven

n e si dice



radice

ciclicn.

in

base

g

gli

g

radice n

x -y

essere

a

i/ ii .

mod

dei

sulle

il ragionamento

equazioni

teorema.

seguente



omette

- 0

Per la

risolvere

.

Z ha

che

implica

33.32

r diee

una

primitiva,,,

come

scritta

33.35

. che

0, si osservi

ind ,, l

else

mod

Il Teorema

essere

può

l.

il Teorema

che

implica

33.33

l equazione

a 33.36

.

pii

ind l ,

quest equazionenell incognita cl

Ponendo Teorema

l.

l equazione

l. allora

e

g

primitiva. Si

e Zuckerman

che

n

equivalente

se p è primo.

modp elemento

un

radice

seguente

I per

tutti

è una

che

deve

semplificare

talvolta

dimostrazione

l e.v

modn

notato

sia

33.35

ed

soluzioni,.v

Sia

che

33.24. ha

l equazione

che

sono

che

2 e notando

h i esattamente

è3.è6

2 soluzioni

esattamente

il metodo

si applica

lp

p

MCD 2.

MCD 2,p

cui

interi

7. è

ciclico

sono

2,4,

p

e 2p ,

per

tutti

i numeri

dispari

primi

.z

-

è.w

numero.i

e,

positivi

corollario

mod

quc.sto

di

primitiva u. valore

Questn. si

Z ed è chi

denudata

a

un

at1sato con

qualsiasi il lr garilmo

elementn discreto

di

Z. oppure

ullora

esiste

I indice

uii ili

Per

n.

I mod

radice esempio.

Teorema

del di

di primalità tale

allora

di g è periodica

di potenze

la sequenza

ogni

di g genera

di potenze

la sequenza che

33.34

-g

Un

-

qualche

per

x

del s1 0.

l e x

1 per

di

1 mochtlo

verifica

33.4. per

l equazione

Allora

2 soluzioni.

d

paragrafo si ottiene,

diretta.

33.32

teorema

p e per

Poiché implica

n,

mod

può

nella

dispari

33.34

g

33.34

I salori

k p ir

y

p

due

2 ind ,, x Se

x

Allora,

33.34

primo

L equazione

Dopo

per

n.

33.18

g

discreti

è mostrato

cod

solo

ha

Fermat

33.21 ,

è verificato

corollario

Questo

se g

logaritmi

Dimostrazione.

Dinmstrazione.

ip it .

mod

Eulero

Z.

Teorema

per

y

mod

g

g -

il corollario

Quindi,

come

allora

-1 modp

d

x

il

.,

Teorema

se ùale

l, ogni

per

che /n,

g

p n.

periodo

Considerare

Teorema

mod

Teorema

Per

che

prima

si supponga

Viceversa.

e

modulari, 33.30

se e solo

ord a

di Fermat.

Teorema

vale

n

mod

g

n .

Si supponga

gl . o

paragrafo.

g

I . Quindi,

t

. -G

questo

l equazione

allora

7 sono

i,

In

mod

y

5 intero

le potenze

discreto

ll Dimostrazione.

mentre

di X,

primitiva

x

l equazione 0

logaritmo

783

numeri

dei

I e I i-esimo

7 sono

i

del

Teorema

teoria

33.34

Miller-Rabin

akron banule

quadrata 6 è ama sarh

radice

usatn

quadrata

nelb

prova

non

i se

della

di correttezza

prncedura

33.8.

t1el paragrafo

valore

cr m iduli

Cr rol1vrio

33.35

ind ,, a . Sl.

CsIStd

LII10

f idlCC

Cfll lCll .1li

llOll

b

Jtl,llC

ll

I

111OJLllc

11,

UllVI ll

ll

i

1 equazione

soddisfa

I modulo

di

Lianale

l ùl11pOslù.

35.

Il seguente di verifica

il

33

Grpisolo

$84

di

algoritmi

g imosrrazione. rapire

corollario

Questo non

quadrata

banale

di

è proprio 1 modulo

l antitesi

ii, allora

n non

del

Teorema

può

essere

33.34.

Se né

primo

esiste

una

a potenza

con

ripetute

quadrature

i

9

8

7

6

5

4

3

2

l

b,

l

0

0

0

l

l

0

0

0

0

r

l

2

4

8

17

35

70

140

280

560

d

7

49

157

160

241

298

166

67

l

Figura Un operazione

che

di

a

un

numero

e1evame ito a

mod

potenza

e nel

primalità ripetute

è sistema

risolve b,,

b ,.

lunga

k

b,,

1 bit,

calcola

non

si

negativi

a chiave

c attraverso

in

modo

efficiente

di

procedure Il metodo

delle

e incrementi

da

a

di MODULAR EXPONENTlATIOil

e n

Si

33.á-I

cm0

2

dml

3

sia

b,,

4

for

i c

b.

, ...,

b,

k downto

6

d

7

ifb,.

XE

è

0 ab.

d

d

return Ogni

esponente

b,

la rappresentazione

binaria

33.7

modn

un algoritmo

cmc

I

d md

a

ona 7.b é60

for.

Il risultato

finale

e si

di

ogni

una

calcoli

elnnento

tabella

Z.

in

Si

la

prenda

ind ,, x ,

dando

ogni

per

invece

a potenza

di elevamento che

da

sinistra

modulare

che

esamini

di b da destra

i bit

a destra.

spieghi

come

calcolare

a

n

mod

per

e Z usando

a

qualche

di cnnascere

nell ipotesi

Ia

procedura

i .

a chiave

RSA

pubblica

di crittograha

sistema

a chiave

puo

pubblica

essere

usato

per

messaggi

in codice

ia i messaeei

in codice

scrivere s

modn

in una

sequenza

incrementato

di

l

operazioni

quali

è il doppio

del

sono

ese

uite.

esponente

precedente

la rappresentazione

binaria iterazione

Ogni

oppure

di b è letta del

ciclo

la usa

il

destra una

a

delle

elettroniche

b, 0 o 1, rispettivamente. quadrature ripetute

il nome del

prefisso

e ir

spiegazione raddoppi un

b,,,

l .

561,

...,

l algoritmo

la sequenza variabile

devonn

e incremei ti numero

totale

essenziale

. Appena

della

il bit

c. mo trata

neceis iria

hnch

c

dei . lln

valori

riga

/ . Si

li

input sui

bit.

modulo

ogni

e altre

elettronici

comunicazioni

autenticate. -

..

.-

f.

ori

il

due

rodottodi

numeri

e il paragrafo

di c i lo

esempio.

561

33.9

discute

della

il prohlcl11Q

in tattori

scomposizione

interi

rundi.

iteruzionc

il valore

di f . Per

c della ns

ad

quadrato

ed elabnrato,

binaria

I invariante

di operazioni

del letto

ncll ulgoritmo,

I algorirn o,iuntiene

Op

b,è

r ippivsentazione la sequenza

usati

è in realth

migliore

b,

L uso

cnicnla

di esponenti c non

d acquisto

ordini

elettronici, essere

nlodn,

a

grandi che

che

i ro,.

moon.

a

a seconda

controlli

elettronicansente,

,

a

a modn

richiesto

Si

Crittografia

Un

calcolato

controllare

per

modn

una

r,

di b

identith

c con

l ordine

mostri

piccola

he

esponente

sinistra

La

mod

del ciclo

d

precedente

33A

che

g più

1 then

560

a

si calcola qua odo ogrri esecu ione

2C

8

b

dopo

Z

Si dia

33.6-2

0

9

stesso

tabella

primitiva

MODULAR-EXPOAENTIAT10 .

dOC

spiega

una

mostrati

sono

procedura

33.6-3

5

a

valori

EXPONEYTIATIOA a,b,n

1

10

561.1

disegni

radice

a sinistra MODULAR

526

Esercizi

di b. binaria

seguente

0

di

quadrature binaria

La

785

per

verifica

la rappresentazione

Cioé,

significativo

numeri

è l.

come

L elevamento

positivo.

la rappresentazione

di b.

raddoppi

un

anche

1 risrclrari

33.4

l 000110000

è l elevamento

conosciuta

molte

RSA.

è il meno

numeri

vorrebbe

usando binaria

e b

dei

e n è intero

pubblica

efficientemente

significativo

teoria

operazione

essenziale

la rappresentazione

b,

b . è il bit più n aumentando

cf mod

numero,

un operazione

problema

della

precisamente,

interi

di crittografia

questo

calcoli

altro

Più

a e b sono

anche

nei

un

nodulare.

n, dove

modulare

di frequente modulo

potenza

a potenza

calcolare

Sia

si verifica

dei

di un

potenza

primo.

Elevameato

teoria

per

mostrata

a

di

Sistema

crittografia

a chiave

pubblica

7.

in figur

tabelIQ. è stata

che

I

a. b c n wapiti

aggiunta n

mod

numeri

per

poter

d rc

n al crc.,cerc di p hit.

allora

critto

ra

sono non,,

ui 1ti

ùi i e

sc

rete

.

ia .. -. ,. . tr alizion llnicnlc cun

Pc

5,

ne li per

Alicc

c

P/f

Alice

.

. riempi

ti e 5,,

pCI

-t criltii Bl l .

rl a

..

.ii.

cn

at l t ino

Ic

l rcichi,vi

-Bob è j j,ubhliche

78á

Capitolo

33 di

g goritmi

Ogni

la chiave In

pubblica.

in

chiave

chiavi

essere

potrebbe chiavi

pubblica

comspondente sua

la chiave

Po

chiavi

di

e.segreta

specifichino

tutte

chiave

di

pubblica

partecipante

funzioni

l insieme

di

sequenze

di



che

possa

che

e segreta

specificano

ognuno

sia la

biunivoche

denotata

con Pe

finita.

da con

S .

Le

S, siano

D

Si

a se

PE

applicate

Per

permessi.

lunghezza

PA è denotata

le funzioni

per

Alice

qualunque

funzioni

che

S

M

P 5, M ,

P,

calcolabili

che

La

e la funzione

funzioni

D

richiede

stesso.

sono

partecipante

sono

una

l inversa

dell

altra.

in entrambi In un capace

i versi, sistema

che

Alice

si basano

il motivo

Alice

sistema si

sull ipotesi Alice

S,

di crittografia rivetare

possa

in una

Alice

mantenere

In un modo

deve

sistema

l unica

a

cr

M, accetta

data

che

come

e1re

conosce maggiore è capire

per

firma

S .

Bob

canale in

verifica

utili--ando

inessag

I a chiave

crittografia

l equa ioite

g io firmato

ad un ficcanaso

o Bob

appaia

da

ubblica. pubb

lice

Se

P O.

M

il tnessaggio

. A1icefirmc f la co

rras nette

ntessuggio/firma f cata,

spia

l equa

egli

Alice.

un gergo

Per

incomprensibile.

spedire

un

m

p era

ottiene

la

calcola a

il testo

chiave

di Alice

pubblica

P,

una

da

cartella

o direttamente

pubblica

da

cifrato

-, corrispondente

, P, M

C

s p edisce

messa n ioMe

al

Cad

Alice

La

rivelare

come

33.5

La

la

pubblica desideri

trasformazione

mandare

ad

di

in

Alice

un

codice

messaggio

P ,

la

di un

sistema

da

in cui

C applica

Ia sua

calcolare

lu

funziona

Poiché

processo.

in codice

segreta

chiave

S sono

Pe

5 per

il

recuperare

funzioni

inverse.

Alice

può

Aliceice

nel

Per

ccalcola

la .sua

l equazione

Alice

usare

o

spedisce

Alice

la firma

L M

la coppia

desideri .

numerica

essere

dall

al

ao in un sistema

analo

si opera

una

a Bob

mandare

di crittografia

ris p osta .

M

firmata

segue.

come

-.. cr per il me,sgggio

numerica

firvur

il messaggio

protetto

in modo

realizzate

che

supponga

ha

Alice.

sia

facilmente

sono . Si

P

di M attraverso

non

che

numeriche pubblica.

numericamente.

, usando usand PE

la su chiave

segreta

. messaggioltrrma

o

M,

a Bob.

Af in codice

nome

di

Alice,

verificata,

interpretazione

C

cifrato

S, C .

questo

qualcuno

firme

Le

ia a cchiave

Alice

comunicazioi e

codice

illustra

trasformazione

scoperto solo

progettazione un

figura

unicità che

calcolare

creare

il testo M

è C.

la sua

può

riceve

originale

di

richiesta

Questa

messaggio

sia della

L ipotesi

nella

come

questo

Alice

numerica

perderebbe

Pe

Bob

trasformazione

la

coine

ò

SA .

a chiave che

di

Alice.

L*inviolabilità

necessaria.

difficoltà

senza

tranne

della

lo facesse,

se ognuno La

P

inversa

crittografia

sistema

Alice .

e S successivamente.

ragionevole.

la sicurezza

realizzabile

pubblica trasformazione

Si supponga

in

segue.

Se di

Bob,

M,

cosi

corrispondente

nessuno

di calcolare

se non

anche

efficiente.

che

e l autenticitè

capace

farnirle

a ch ave una

Alice

segreta

valere

trasformazione

seguente.

ad

potrebbe

in modo

di tempo

quantità

sia

O

corrispondente

P,

in

.

Cioè,

chiavi

è essenziale

pubblica

e mandata

non S

di

5

che deve

calcolare inversa

le due

numerici e

messaggio.

a chiave

in codice

di crittografia

possa

funzione

W con

Firme ir

33.6

Quando

scritta

cui

per

lo stesso

crittografia la funzione

viene

e il sistema

D. Trasformando

si ottiene

di

di calcolare

posta

Mc

comunicazione c

Figura i ura ag

quindi

efficiente

coppia

una

di

canale

funzione

sono

in modo

Mo

le

corrispon-

e S,

riconoscimento

33.38 messaggio

o

S M

a

esempio,

W

qualunque

verifica

cr AA

33.37

per

71

Bob

firma

Bob

M

numeri

renderla

conoscere

essere

possono

messaggi di

bit

funzioni di Alice

che

la

mantiene

e anche

dei

A

le

D

le

pubblica

Si assume

che

qualunque

Ognuno

S comspondente.

pubblica

senso

con

segreta

segreta. a chiunque

pubblica

partecipante.

denoti

chiave

che

specificano

l insieme

chiave

chiave

assumere cosi

aItro

e quella

pubblica

la sua

conveniente

segreta Si

di D.

permutazioni

Le

e

alla

alla

rivelare

pubblica,

di qualunque

messaggio.

chiave

propria può

cartella

pubblica

qualunque

dente

ma

è spesso

una

pubblica

Le

la

segreta,

réaltà,

disponibile

nel

crea

partecipante

segreta

teoria

PM

allora

I equazione

M

si

M

ssonot

non aalterati

cosi

che

Bob

conclude

Bob

che

è verificata,

di

chiave

quale il messaggio

Bob

ermre

per

sappia

conclude ., . trasmissinne

usare.l

pubblica

era

vamente

effetti

o il media

che

che

o

la

da

o la tirm . è u

io M

coppia

l equazione

Se firmato

1.cr

è

Alice.

Se

numerica

o

tentativo

di

contraftazione. ficcai aso ca dell idehtith

C

..l

analoQQ na testr

r ifratn

C

P, M

ri IA/ir

e.

Vu

/ir

anrrsc.

r hè

r Itteri

il I

str

i fi rii i

t

irsw

ssii

nrnt

r ni

ne

r/r

firmatario

del

pn

iilla

p

finll,.l

che

scritta

a

l autenticu

Alano

ill

del tini.

docullle1110

un -

-

i

di

-e

contenuto

-

me.. di

fornisce a

.

l autenticu

firmato.

da

chiunque

vagr, iri

originale

M

è

abbia

ana .

nrei

essa

carL,.t.

r ficabilc

I

sia

.io

l

lOI O

VOll, l

VCI l7lC ll C

l SiOilO

l

5, C . finn Il I.

.

.

Pcreicmpio I.

..,

il mc sa

io

,,

pulrebhc

e seri

ua

.

ai , cgm

l

il I

IClll

Ollli

l1ll

I

Alll

l.

I

BCltl.

D lpO

788

Capitolo

che

33

Bob

Afgoritmi

verifica

Si noti

che

firma.

appende

la sua

numerica.

Può

to

e quindi

destinatario

è in codice

del

il documento

nei in

ottenere

busta

equazioni

interpre-

i cl

crittografia

sistemn

del

pubblica

Poiché

mittente

il documenaperta

solo

5PM

I.

con

a caio

numeri

Seleziona esempio.

di

2.

Calcola

3.

Seleziona

un

intero

e e d sono

ed

1

l p

per

qualche

univocamente Pubblica

6.

Tiene

le sue

chiavi

e q grandi.

p

I prinai

e q potrebbero

g

essere,

M

per

5

schema,

questo ad

una

dispari

e tale l q

n

mod

n

che

e e i/

siano

n

tra

primi

loro,

dove,

M

per

trasformazione

sua

n

d.

D

pubblica

P

Il

corollario

33.26

che

garantisce

d esiste

chiave

ed

è

come

sua

RSA..

pabblica chiave

segreta

5C

C

i

mod

per

cifrato

M.

firma. testo piuttosto Le

il

firmatario

cifrato.

applica

Per che

operazioni

verificare un

me s i cnn

chiave

alla la

su i

una agio

e,

mod

7.

La

M.

trasformazione

di

un

messaggio

mottiplicazioni

1,

allora,

se M

0

mod

p,

si ha

il Teorema

usando

33.31

p

p

.

p

se M O

mod

Pertanto

p.

chiave

t

aiformazione segreta

firma,

la

pubblic

c

al

chiave

trasformare

in

segreta

pubblica in

chiave

codice

messaggio

e da

del

sicurezza

del

S

d,

n

alle

t rme.

firmare

firmatario

Per

è

piuttosto è applicata

creare che

chiave

essere

realizzate

una a un

dei

moùulsri.

ungendo

Op

fattori

crittografia

RSA

interi

è dift cil

si

operazioni

sui

bit.

allora

del

crittografia

teorema

RSA

cinese

si bàsa

del

in gran

resto,

grandi

vedrà

è facile.

al

sorprendentemente

la

difficile. si può

i iol ta

essere

pro,spett ,

in un di

di fornire

essere

affr wst ito

ra

idonei

una

gr odo

la

di .sicurezza

mndo

In vicenza di alle

più

non facile

di

le attuali

di nuovi

e decisivi

il sistema

pubblica. di

in trattori pro v ta. violare

i . Come

primi di

tecnolo risultati

è

grandi 100

cifre

ie.

di critto rat,a

di

Dopo

il sistema

il modulo

primi

con

interi.

per

numeri due

la

il sistema

è itoti

in fattori

casuale

cl e,

pubblica

f tt ,rizz. ione

fattori

violare

la scomposizione

è ditTicile

metodo

in in

chiave

se

ir

usando

chiav

della

della

il modulo

pubblica

anche

al or

di scoinporre

scomposizione

COlllpUt abile.

33.i .

R SA

chiave

il creatore

che

alcun

quello

ragionevole. per

cioè

trcivatn che

li usa

è facile,

il si tc nu

Selezionando

tempc

a1to

olmentc

al j ar gr rio

la

creare

algoritmi un

RSA

33.9,

paragrafo

è stato

non

pubblica

in cui grandi

oppoita. violare

anche

pero.

a chiave

di interi

L asserzione

e allora

di ricerche,

m do

stesso

in fattori

dalla

difficolth

scompone

può

segreta

sulla

parte

malintenzionato

la chiave

derivare

può

un

Se

grandi.

p e q nello

se la scomposizione

di crittografia

a questo

ungendo

di di interi

pubblica,

moltiplicandoli. possono

sistema

in fattori

conoscenza

codice. segreta

33.29

M.

di una

alla

il corollario

per

M

grado

Qp

1 q

n

mod

ogni

del

richiede

p

q Pertanto.

è

C associato

chiave

dl

pn

Analogamente,

un decennio applicano

Z,

p

scomposizione r

33.40 si

M c

qualsiasi

.

modulo

k. Ma

mod

M

La è l insieme

.

equazioni

Queste

per

1

-M mod

mod

ogni

per

33.39 testo

che

RSA.

. di un

mod

mod

M

Cosi, La

si ha

33.40 .

1. git .

come

il dominio

chiave

n

e

modp

M

ogni

M

la coppia

intero

M

per

pc .

di e, modulo

e.

di Z che

ciascuno.

p

P

inverse

pubblica

definito.

segreta

M

primi

n

la coppia

associato

crea

le trasformazioni

33.3S .

Af reciproci

1 q-

- M

un partecipante

e

33.37

33.39

M hF

Inoltre,

decimali

piccolo

33.20 ,

RSA.,

pubblica

n

d, il reciproco

5.

PM

cifre

n dall equazione

Calcola

Per

due

cento

l equazione 4.

a chiave procedura.

RSA

detmiscono

3330

equazioni

- Ml

la seguente

789

dal

RSA

di crittograjia

e segreta

Dalle

P5M

M di

e

33.39

le equazioni

Dimostra Eone.

desiderato.

Sistema

RSA

soddisfano

prima

originale

viene

di

Corrette- a

isomeri

messaggio/

il messaggio

che

33.3á

dei

in codice

è di firmare

carta

Teorema

è protetto

Il destinatario sia

cartacei di

e non

la coppia

la chiave

sistemi

una

la

teoria

di fondi.

Il firmatario

in codice

usando

banca,

la trasformazione

desiderato.

la firma

combinato

processo

chiaro

e in codice.

per

sua

Le

in

è

trasforma

segreta

alla

trasferimento

per

firmato

destinatario

verificare

quindi

sia

e poi

chiave

l assegno

l appropriato

precedenti

che

pubblica

dare

può

il messaggio

i protocolli

la sua

sigillare

egli

effettuare

al messaggio

tramite

Il corrispondente

carta

ed

messaggio

la chiave

ricevuto

firmatario. su

assegno,

non

un

numerica

tnmite

la firma

sull la firma

firmato

creare

firma

risultante

Alice

Componendo

si può

ta il messaggio che

di

verificare

accidentali.

la

firma

firma

può

un messaggio

da scoperte e per

la

volta,

a sua

quale,

di

non

ne

e può

l ambito RSA

c., in

ipplii azinni.

In p ir ic 1 ire.

si deve

essere

c q ici

di trovare

primi

790

Capitolo

33

Per

motivi

veloci

di efficienza, di

sistemi

trasformare un

a chiave

crittografia C. In questo K usando veloce

P h

per

che

In questo

e può

essere

sua

chiave

messaggio.U.

la

validith

della

Infine

sia

tutti

M per

è uguale

a

a lt AS .

è impossibile

come

nessuno

Poiché

un

altenre

creare

può

P,

due

che

da -la

di

si assunta Alice

chiai

e pubblica

abbia

verificare

la sua

di Alice

è proprio

di Alice

è P . il suo

la chiave

facile

messaggi

era

da

lei

immediutamente

firmata

Si consideri

un

dovrebbe

di chiavi

essere

usa o

nella

con

RSA

segreta

chi wc

I l, n

p

che

sé poiché che

firmati.

cosi

in modo

da pot

sa che

è il codice

Qual

L

approssimazione

piccoli

ii. Per

di

tmvare

di

primalità

della

primi

di

approssimazione

2, 3, 5 e

cioè

a 10,

a

o uguali

minori

o uguali

minori

troppo

appropriata.

dimensione di primi

il numero

grandi

primi è richiesto

non

che

cosi

rari,

casuali

interi

utile

un

necessith

la

specifica

4 numeri

vi sono

dei

Teoreo a

mn .

nttsneri

priori

.

48254942.

n/Inn r

valore M

messaggio

1nn

lunghezza

di n. Per di,

Questo

numero

Nel

100.

del

resto

primo

scelti

un

trovare

essere

pun

di notazione.

issuma

solo

scegliendo

che

la

e

della

sia

stessa

la verifica

richiedere

di

casualmente.

scelti

cifre

numero

approssima-

che

primo

100

in eri

un

esaminare

un

dispari. se un

di determinare n abbia

che

probabilità

potrebbe di

numeri

230

il prob1ema si

cifre

per

50847é34

piccolo.

trovare

per 100

di

1n 10

si considera

paragrafo,

Percoinodith

ad

primo

a meth

diviso

che

anche

n

zn

dove

si doserebbero

Pertanto,

vicino

casualmente

esempio,

numero

si ottiene

primi,

10,

t

per

è un

10

numeri,

a l/Inn.

approssimativamente.

primalità

è primo.

interi

numeri è pari

6 7e

di

accurata

ragionevolmente del

meno

per dei

teorico dei

sia

scelto

tivamente

di d

un

Per il Teorema

Utilizzando

errore

un



stima

una

n fornisce

n/In

esempio,

la cltiave

3. Quale

del

via

n

fornisce

primi

33.37

l

casualmente

e e

è19

verifica

-n lnn

eli Alice.

insieme

la

pubblica

da

T. il destinatario

da

via

è

troppo

sono

non

primi

4. poiché

10

lim

chiavi

di lei

si autentica

ai messaggi

certificato

chiave

dei

vi

crittografia , grandi

verificando

primo

numeri

Teorema

la

delle

certificato

certificato

presentando

con

Eserciti

33. 7-1

n dei

7. Il teorema

al

la

i primi

di distribuzione

esempio

n. Per

e mantenere

T la cui

firmato

e quindi

primalità

una

anche

e Rabin.

come

un

trovare

del

applicato

distribuzione

di tiducia

disponibile

chiave

la

messaggio

Questo

di Alice

la sua

Poiché

T un

da

pubbticz

molto autorità

una

ottenere

includere

può

rende

vi sia

che

può

la chiave

tirma.

che

certificati

tutti.

PE. Alice

conoscono

il destinatario

primi

ri n l uso

esempio.

Per

numeri

apphcazioni

ione

La fica

firma

poi firmata

firmato

messaggio

a Miller

Fortunatamente,

per

tarmare

che

che

dovuta

12S tempo

versione

sua

e verificando

hW

dei

molte Per casuali .

due

esempio

desidera

hM

digitale

di

una

trovare

per

Se Alice

procedendo

primi,

approccio

plausibile

efficiente.

h pubblica

breve

M.

Bob

calcolando

la tirma

numero

l impronta

S hM

M,

randomizzata

molto

dei verifica

la

per

un

con

Si comincia

grandi.

primi

ad esaminare

interpreta

in modo

one-way

messaggio

ottenere

che

impossibile

è un

Ir M del

è veloce

incompleto

firma.

conosciuta

stabilisce

verificare

ricevuto

si segnala

pubbliche.

Manda

digitale.

impronta

Il valore

se

densità

sulla

discussione

in codice

di trovare

ema

il probl

si considera

paragrafo,

questo

Densità

hash

fitnzione

in

di

cifrato

il testo

a Bob

numeriche

firme

mandare

M.

è computazionalmente

digitale

h ad

P K

C,

di primalità

Verifica

33.8

per

il sistema

trasforma P K

C, ottenendo

una

cui

per

piccolo,

ottenere

per

con

ma

applica

puo

usato

hM . impronta

segreta.

5, h M

stessa

/r M

prima

Bob

messaggio

che

considerato M,

interpretare

è combinato

da calcolare

tali

K per

K, ottenendo

calcolare

trasmette

chiavi

desidera K per

Quindi,

piccola.



Alice

è spesso

RSA

Poiché

Quindi, usa

ibrido

è facile

messaggio la

K e quindi

J 1 e Af

messaggi

con

P, M .

approccio, che

di Bob.

Alice

casuale

M usando

K è abbastanza

M ma

RSA

pubblica

approccio

funzione

come

le

sistema.

Se

chiave

con

di chiavi

gestione

tale

identiche. una

in codice

e trasforma

pubblica

calcolare

ottenere

Un simile

un

non

sono

seleziona

a

o un

Con

pubblica.

il codice

privatamente,

C è lungo

caso la chiave

più

interpretare

a Bob

ibrido

in modo

non

a chiave

e per

lungo

usato

è spesso

crittografia

in codice

messaggio

bit

RSA

n dispari

intero

grande in fattori

scomposizione

la seguente

33.41 .p

ll p p,

33.7-2

risultato

33.7-3

Si

dimostri

P,

1,

Si per

per

usi

richiesta rimane

che , rtf. uesto

in tempo di

anche

RSA

è

f tto

inti rpret,ri

in

interpietare

c n

al

lettore

potrh

sc la condizione

illod

e

ienso

nel

molliplicativn

dins strare

per

rispetto

polinomiale

,, h1,Af,

è 3 e un

e di Alice

il malintenzionato

allora

diinnstr irln,

vern

-

ico

pubb

d di Alice.

n di Alice

il modulo sia

l esponente

segreto

l esponente

non

e

che

Si dimostri

ottiene

malintenzionato

al numero

di bit

interessare

il

3 è rimossa.

in fattori

scomporre

potr1

di n.

fatto

Si veda

Miller

147 .

n.

che

Asscimendo

un

malintc.nzion ito

aves e

una

prnccdur l. c

modu

t uonv

cl ticicnte

proh ibilitè

l

di n. Naturalmente,

che

o ni

prava

eli divisione

richieda

tempo

coitantc. s ...

se

ihe

primi

I /c

dei

o ani

mesa., gai

mcssa gio

casualmentc

coditicat

scelti

con

P,.

se r

questo

.

ir

i fattori

p,....,p sono

se e solo

I.

e e,

Sebbene

che

l e p,.

r

dove

n è primo

tra

di n.

di esecuzione

il tempo r

p

l

792

Capitolo

33 Algoritmi

ln questo

calcolo

si è solamente

paragrafo,

è composto,

non

interessa

del l a scomposizione

è costoso.

Può

o no che

in

forse

la sua

a sapere

fattori

di un numero

sorprendere

determinare

interessati

scomporlo

in fattori

il fatto

che

facile

più

in fattori

dato si

numero

vedrà

da un punto

primi,

è molto

scomposizione

se un Come

primi.

sia

il

computazionale.

se un dato

caso

se n 33.9,

paragrafo

di vista

dire

nel

primi,

ir è primo

al

numero

che

è primo

un numero

soddisfano

di

consideri

ora

sufficientemente che

ne rimuove

non

nulli

di

metodo

un

il controllo

per

buono

in molte

i piccoli

difetti,

della

applicazioni sarà

che

primalità Una

pratiche.

corretto

raffinamento

in seguito.

presentato

quasi

è

e di

di questo

Si denotino

con

Z,

Se

n è primo,

Si

dice -

Il

Teorema

1 mod

n

metodo,

Verifica

soddisfi

cosi

base

Mooi

maggiore

di 2.

che

Pertanto,

e

se

criterio

definisce a

per

di

Z,,

t len

3

else

verifica Se

di

è falsa,

in effetti,

il

primalità

AR-Exeoi

si dichiara

si sa che

i t questo

ENTIATION

modo

del

il controllo 33.6.

paragrafo

della

a caso del di

di numero

50

citre

,lliliollc,li primo

base

spesso

Si assume

che

l input

n sia

usa

un

la

p

che bit,

la

tende di

l, ii

1 mod

de

di

che

essa

Miller-Rabin

sbv lia

errori,

dice

riiu

ma

che

n

solo

pli

pieudoprimi caso

a

Uttu di

di

è primo.

c uattro

questo .

i sbagliati

lt t

i primi che

per

una

un

tipo. fa

però.

Cioè, un

Raramente.

di

teli

programma

Usnndo

base

di

dichiarato

una

una

eli u

h.,Le 10

data da l t

printo

pscuck pritllo poi.,ihilitè

di Miller-Rabin

valori

calcola

quadrata

non

a di base

ogni

giustifica

in modo

scelti

di

1 modu o

casuale

se

errore

dice soln

.- ,, casualmente

scelti

e solo

ie a è un

come

si vedrò

invece

stima

, di

v lori

sono

taccia

un

piii

dimensione,

si ha

i. L tl essere

llltnlcro uno

di

puh

ps udnpritno

solo

56 u

dOVllt

tnen

l ÙO

I,

errore

precise

procedura

sono

34

l

stilll ltC

I,

che se

un 1

2Z

645

e

numero

A

I

testimone

da

del

fatto

n è composto.

che

tn

n

n è

è

n. Se è cosi.

si ferma

e restituisce

Z.

che

lli

di

1 l 05.

Si

Il codice

usa

usato

come di

I

Sia l .

2

de-

base

Wtvsess,

sielto di

..1 c,.liodiclliar b,ic

una

radice

Il corollario

coiivosto.

è possibile

n è composto-cioè

PsEUDOPRI11E

per quindi

si mostra

3

for

I

. I

ll

I 1ppresentaziane

l i c

57

l dnwnto

do

c il c if

0

d

7

et

cl

mod

n

l e .i- w l e .v w n

1

return

tlten

l

rt ur

lllllllClt iu

ifb,

l

un

I citre

di base.

s op erto

ddi numeri

il generatore

WITNESS a,

n

COll

come

tt

è simile,

Si presenta

2.

la procedura

di Miller-Rabin.

á

scelto l

Ull

valore

solo ha

cnmposti.

Il controllo

uno

valori

POIllt .I lllCt .

p iiiihilith

se

casuali

R. ioost

usare ma

a per più

dimostrare ft care.

e

n

mod

è stato

8 di

di un

rileva

Pset. oovRiite

controllo

4

Vi

verifica

semplice

modulare,

dei

ricerca

questa

della

a potenza

elevamento

banale

il problema

supera

ITNESS Cl.ll

li

Se

db

probabilità a zero

alcuni

Mentre

primalità

spera

corretta.

cui

Prova

ir

2

scelto

meno

Si

procedura

per

es ere ha

in modo

proposta

intero

2.

questa

l ù000

mostrare

può

solo

rari.

di primalità

sicLiro.

produrre

sempre

è di

di

D Di I

può

allora

minori

n

PRIVIO

procedura

pseudoprimo

n

randomizzata

di primalità

modifiche

la costruzione

COMPOSTO

return

Quanto

di

sono

che

n è o prill10

di n. Essa

primalità

ca

daapro, provare,

a

retlirn

composto.

100000000

quasi

che

Questa

di

come

I numeri

e 1729.

1105

piccoli

composti

che

2.

if MooLLAR-EXPONENTL4T1ONg,

2

conosciuti

soddisfa tale

PSEUDOPRIME l

l

interi

sono

di Carmichael.

primalità

due

33.35

Sorprendentemente,

2.

se,

n

a e

qualche

una

anche

primo

allora

primo.

con posto.

è3A2

n sia

è

n

trovare

n è certamente

questo

che

che se si può

l equazione

simula

procedura

implica

allora

si spera

di

pseudoprimo

procedura

Z, ,.

se n soddisfa

Altrimenti,

seguente

a in

33.42 .

valido,

verifica

n è composto.

La

ogni

per

è quasi

o uno

a se ir è composto

33.31

Teorema

l equazione

Si

di base

33.42

Fermat

33.42

perfetta.

Z, ,.

pseudoprimo

.

di

viceversa

cosi

la verifica

migliorare

i più

quel

56 561,

semplicemente

vi sono

interi

Questi sono

sono

perché

controllando

3, perché

elementi

gli

con

Z, ,

n è uno

l equazione non

Z.

numeri

fatto

.

1 allora

che

a

a

dei

Z

2....n

1,

per

te a s

esempio,

per

a spiegare

come

i numeri

errori

gli

carne

di Carmichael

numeri

rari

tutti base,

ratte

per

tre

aiuta

in seguito

faIlisca

La verit Z,

. I primi

33.8-2

Si mostrerà

numero

33.42

estremamente

L Esercizio

non Si

sono

eliminare

possono secondo

l equazione

Carmichael

pseudoprimalità

si un

per

di Cannichael.

255. VeriTica

33.42

tnumeri um

composto.

non

Sfortunatamente, l equazione

teoria

di

tt 7 l0 11

12

if l II1i. 31

r turn

then

rl

I1

YRÁ I

1 iCtljI

i.st

ii

cl

ri

mod

n

binarizdi

il

1

viene

e si giustitica usata

nella

dapprima verifica

di

di

Algoritmi

o -67

aQuesto

elevare

a alla

usato

5 è eseguito

impiegato

l elevamento non

da

di

linee

3-9

binaria

calcolano

si controlla

l. In tal

caso,

alle

linee

PSEUDOPRLl1E

Si mostra

modn

in questo

caso

se WITNESS a,n

che

ora

6-7

1 che

sarà

mod

n.

Il metodo

Ogni

volta

che

alla

restituisce

restituisce

appena

e restituisce

usata

per

una

Le

Se

restituisce

Ie a c

Se Wn

Z,

alla

n non

Quindi

nonèugualeal,propriocome

restituisce banale

non

Il Corollario banale

di

modulo

linea

allora,

TRII,

I I, allora

Teorema

usando

la procedura

di Fermat

essere

può

di

1 modulo

n, cosi

a, è possibile

ha scoperto 33.31

Teorema e I equazione

primo,

prova

dimostrazione

h



mass a.

che

n è composto

come

MILLER-RABLS it,

for

che

che

provare

Se

che che

a

la procedura

si ha che

d

a

mod

n

n

per

- I mod

a

modn

la dimòstrazione

ha

x

w l è una

ci può

che

scoperto

1 mod

se ii è composto

risultato

TRUE.

facilmente basata

di

allora

x è una

n

che.i

nella

fortuna

essere

una

radice

l

radice

quadrata

ne

radice

più

precisa.

Se

n è un

banale

WivvEss

è completa.

la

chianiata

con posto

usando

di Wil

Se

a e n.

e una

Si esamina

di

1

la verifica

then

4

5

return

return

t

Di

t

Quasi

La

Il ciclo 2.

linea

nessun

piccola

risultato

esista mostr.ire

Supponendo radice

a scelte

qu uirata

risultato che

che anche

la procedura se non

ne

non

7 sia banale

sia

cofanetto,

posia

di

icelto di

COli1L

può

corretto

è stato

essere

che

casuali

n sia

di WitNFSS.

IQ

flCUiil

33.4

passo

di

n

il

B

mostra elevamento

di che

t1.

nta a e che

x c

I mnd

t

.

sottogruppo

tale

Z

x

particolare.

testimoni

i

sono

tutti

contenuti

deve

in un

1 1-.

almeno

essere tutti

,

n

Z

Poiché

diX contenente

proprio

è composto.

che

Z /2.

8

testimoni

ogni

Z poiché

fatto

del

si ha

l 6 allora di non

il numero

un

In testimone

i non

che 33.

corollario

testimoni.

i non

casi.

inàue

si ha

B è un

che

che

im

a B, pqiché

h t che

8 è un

Caso

. Per

nom

sottogruppn

a soddisfa

testimone di

proprin

l

a

mod

modulo

moltiplicazione ogni

che

Si noti

33.14.

il Teorema

di Z per

alla

rispetto

B è chiuso

. Poiché

I mod,t

sottogruppo

testimone

non

.

Poiché X C Z

n.

Z.

qualche

scopli.

56I.

l

le r c

tutte

mod

n

Zg , .i

.

Llll l In

quadrato,

-

b

X

c

vi è una

Carmi .hae1

Wrrr rss al

Pertanto,

un

b

MiLLee-R ai

grande,

numern

. hague

soluzioni vi sona -non è ùna a

non

1, allora

d

Z, , è un

di Z

di

elemento

un

essere

33.21.

corollario

dal

Dal

Z.

trovare

deve

e se MCD a,n

si mostra

8 di

come

ii

mod

e1emeisto

1 I2.

Esiste

appartiene delle

n ora

Se Sia

in s prove,

scelta

da cui

1 12.

di

di a d X ,

alcuno. sia

I

Caso

n,

mod

la dimostrazione

restituisce

la correttezza

nella

è più

i3,43

Miu.w-R,isis

trovato

stortunata

Mirra-R otv, l3 l iC,

dimostrazione s valori

allora data

essere

una

prende

se s è sufficientemente

trovato

1 nell ultimo

1

n è composto,

n è composto

funzionunsento a

che

linea

è sempre

che

di

probabilistica dalla

a dire

porta

è probabile

il che

fatto

ricerca

cominciare

a

4. Questo del

possibilith

testimone Per

delle

linea

testimone

questo

è una

principale

Se una alla

COXIPOSTO

che

MILLER-RABlN

procedura

l

la dimostrazione.

Bf

mostra

Si

sicuramente.

l ogni

proprio

si ottiene

sicuro.

-

a

testimone

non

qualunque

-

av

completare

Si spezza composta.

che

Pertanto

sottogruppo

vRii o

testimoni

di noi

il numero

che

a soddisfa

testimone

1

COMPOSTO

non

n è

che

fatto

del

1 12.

Si mostra

si osserva

Prima

n

IVITiXESS a.

if

testimoni

il teorema.

di

IvEss

non

n

di

il numero

allora

composto.

dispari

è almeno

Dimostra ione.

Per 3

33.38

numero

x all equazione

Rwwoqnt 1,

presentaun argomennzio-

di

dimostrazione

ora

teorema

di un di errore

il tasso

che

vi

s e dalla

stringente

è più

in generale

aspettare

o un non

da n

è mande

quanto

controllo

ogni

poiché

Il seguente

a caso.

da

dipende

ci si può

33.42 . n scelti

interi

per

Teorema

non

quadrata

S

a

comme.

n.

mod

non

dell equazione

piccolo

soluzione.

do

abbia dipende

non

di errore

Piuttosto,

a. Inoltre,

di base

valori

che

possibilità

piccola

la possibilith

però,

algoritmo.

questo

per

vi è una

allora

PsEuoovRmE.

dei

scelta

controllo

semplice

1 to s

j

più

l elevamentò

iVliller-Rabin

di

primalità

PRI510,

da

Diversamente cattivi input

sono

di

prova

è una

e anche.x

essere

n è sicuramente

costruita

sull uso

di

restituisce

RARE

composto

correttezza

test

del

errore

MILLER

n è composto.

essere

può

7, allora

solo

della

di Miller-Rabin

primalith

linea n, poiché

che

che

la

Wn

alla

1 modulo

stabilisce

ciò

2

TR c

33.35

n è una

Con

di

Tasso

debba

xzss

quadrata

1

mm

si ha da

però,

l operazione

asintoticamente

poiché

essere

COMPOSTO.

fatto.

questo

modulare.

errore.

WITNESS

tutte

sui bit,

a potenza

risulta

onemsa

e O sp

aritmetiche

operazioni

O sp

richiede

n è composto.

che

fatto

coesisto.

restituisce

MILI.ER RABI

del

testimone

7 è un

a

Allora.

e Mtt.iER-Reste

di p bit,

numero

n.

mod

maui

linee

n è composto.

w 1. Se n è priino,

l

e a

restituisce

operazioni linea

trovata muE.

n

n è un

Se

n

mod

Wiv ass 7.

a

se è stata

si ferma

Moocc R-

procedura

di n

d come

I algoritmo

10-IlrestituisconoTRUEseilvalorecalcolatopera la procedura

della

pseudocodice

iVoovt.Aa-ExvoxawvtAvtow.

al quadrato,

banale

sullo

la rappresentazione Le

potenza.

a quello

quadrata

è basato

1 determina

1 -esima

n

è identico

radice

linea

LB

EXPQNESTIATION.

Wtvuas

per

pseudocòdice

795

numeri

dei

teoria

poiché

questo

lo aritnio

l

cui ,

discreto

n

non

pui

Teorema

essere

di

potenza

33.33,

cos

i

uht

primo.

0

implicano

Per

il

vedert e

che

n

si.

motivo,

l

-

0

mud

n

pn .

g .

i.44

do

e

I

OppUfC

s

I

Y

destro

è potenza

di 1 e primi

si sceglie.

detmiscono

p,

p, ...

che

n

di un

essere

il lato

2 u,

sinistro

in un prodotto modi

t

11

fare

p ma

per

il

un

per

n, p,

I e u è dispari.

Per

,...

e non

importa

en,

p,

a E Z,

qualsiasi

funi

djyi

elementi

gli

con

ternlina

durante

un

Ora

v

j e grande

Essendo

v per

rispetto

conseguenza,,B

Si usa

oltre

ora

l esistenza

--

si ha i

la j-esima

1 mod

n,

a interi

Sl

contemporaneamente

1 valori

una

v c Z

tale

di

che

esiste

la rappresentazione

-

i

data.

I

da Witr

n

mod

Se

non

non

ass

testimone

deve

per

dimostrare

che

il corollario

esiste

33.29.

8

essere

Cioè,

per

del

fatto

n non testimoni

esistono

interi

-v mod

scegliere

iterazioni .

2

rodo valore

che

un

un

sottogruppo

elemento

o di tutti

di

X

di B. dato

n-

da

che

non di

probabilità

n è

scoprire una

tale

casuale 1 14,

il meglio

però.

usando

il numero

una

di non

sia che

versione è

si voglia

ottenere

il numero

molto

più

si possa

del

farlo risposte

medio di

piccolo

dimostrare

migliorata

testimoni

non

improbabile

casualmente,

che

la MtLizR-R sis

sebbene

è molto

scelto

è probabile

applicazione

qualsiasi

per

applicando

grandi

dimostrare 3

come

composto

quasi

primi

è che

Teorema

di non 1 12.

ii

Se

iI numero

33.39.

Inoltre,

1 14.

n

l o altrimenti

8.

cnrollario

Poiché

33.28,

l

33.8-2

È possibile -

intero

dispari non

quadrata

definire

l

dove

--

v

vi è un

se un

n

1 non

banale

di

è primo

né potenza

I modulo

di un primo,

I mod

ic che

allora

it.

il Teorema

di Eulero

in modo

leggermente

n

mod

il. n

tutte

per

è definita

le a e

forte

più

contenere a

iv c Z

che. radice

nella

forma

Z

come

n.

soddisfa

ln

mcm

1n

l. Il più

n

.

j p, ...,/ p, che

mcm 2,

n.

l6 liberi

sia

80,

sia

il prodotto

composto

n è un

di Carmichael

che

dal

è3.47

nunsero

numero

piccolo 10,

essere

Un

divide

560.

tre

di Carmichael

l I

17

che

i numeri

per

il quadrato

ragione,

essi

se

in questo

divisibili

Perquesta

primi.

numero

3

Si dimostri

non

quadrato

di almeno

è 56I

caso,

di Carmichael di qualsiasi non

sono

molto

comuni.

2 u

Insieme

con

33.8-3

.

il corollario

33.29,

equazioni

queste

Si

dimostri

che

MCD .c

implicam

1, n

che

se

.i è

una

e MCD x

radice 1. i

non

quadruta sono

entrambi

banale

di non

divisori

1 modulo banali

n,

allora

di n.

1

iv

moon . 3346

e cosi che

e B. Poiché 8 è un

In ogni

sotris

caso,

i c

I.,

ruppo

si hz che di

proprio

i è Z,

Pertanto

n c

Ze

cosi

is z

Z-

33.9

Scomposizione

che

il numero

un

di testimoni

del

fatto

che

n è comp stn

è almeno

n

1 /2.

supponga

proclott

Retro i.

intero

s

Ji.

un

errore

di di

composte .

33.39

qu itunque

disp ri i

al

n iii

in fattori

primi

Z.

sembra Per

di interi

B. Si conclude Si

si iede

Teorema

e

La

esecuzione fatto

Di che

n

mod

ogni x del

sfortunata

principale.

si può

di s

n dispari

n

cui

una

primo

iv

allora

testimone

se è cosi

sufficiente

numeri

allora

piccolo

n è composto

è al più

Si dimostri

.

n, ,

ciclo

essere

di trovare

in modo

n per

ln

mod

solo

del

dovrebbe

Allora.

l

errore

un

D

casuale,

intero

un

devono

w-

se n è composto,

di scoprire

Esercizi

le equazioni

ir-

fa un

che

1/2

j dovrebbe

si può

n,l.

- I mod

iv

50

in

Si dimostri w

s

cercando

un

è scelto

di non

di j.

un

Dai

è

essere

la massimalità

si vede

almeno

Sia

n,

deve

di s si sta

scelti

esiste

testimone

delle è al più

scegliendo

33.8-1 modulo

ognuna

scelta

grandi

che

l intero

al quadrato.

u è dispari

poiché

33.38,

probabilità MILLER-RABIN

insuccessi

la

testimoni

binaria

di d calcolati elevamento

A5

.

posizione,

per

r sono

la condizione

Dgni

di v per

I.

gli ultimi

ta1e j certamente

ii

da un

prodotta

esista

2 n

r operazioni

moltiplicazione

, Z j.

divide 33.45

di a sono

soddisfare

alla

n. Poiché

le ultime

cui Un

1 mod

chiuso

I non

ii

r per

possibile.

0. Si fissi

sequenza un

mod

1, ....

0,

modulo

e gli elementi

c Z .v

x

calcolati

di a

il più I e j

B

r zeri

calcolo

si trovi

essere

sono

ha

procedura

immaginabile.

erronee. 33

dove

il Teorema

1-4

in di

Pertanto,

quale ... p .,

p

,

a

La

testimone

qui ,a

linee

n, e n, sono

n dove

ciò

la sequenza

a a ,a

Usando

alle

sequenza

si puòscegliere

dove

è divisibile

primo.

diversi

allora

p ., l

caso

si scompone

V i possono

sen u tali

esso

ciclo

composto.

in tal

è potenza

primo,

tra loro.

t ed

1, poiché

n non

di un

Peresempio,

consideri

e

per

lo è. Pertanto,

n non

randi

gj

fallisce

non

poiché più

del

condizione

Questa lato

Dimostra -ione.

z-

e 2

.

iran

il1lr. l

O s

f 1Sitivn.

Ia

pr h hilit, i

Che

uht

avere

numeri ma

essere

di

un

abolito

molto

intero

non piii

du

n verifica

La

primi.

fnrnisce difticile

scomporre

in

li

del

pri nalit,

i t itteri che

festtori

li

prinsi

determinare

n.

cioè

priini, ronfo

p. ra

Scomporre

semplieensen e

i.rascomp iire

in

fattori

primi

un

numero

irhilr irio

ci

0

cilre

da

clccinia i.

scomporre dice

precedente in

t ittori

se

n

è

un p im

in

èolo intero o

che gr md

cnmp sto.

un n

è

798

33

Capitolo

rho

Euristica

di

Pollard 310

996

La

di

prova

qualunque

euristica,

molto

per fino

numero

qualsiasi un

divisione

numero

fino

il suo

tutti

a B a

la stessa

non

si

sia

e il suo

di esecuzione

tempo

di

di lavoro

quantità

che

meno

a B garantisce

fino

interi

gli

a B-. Con

scomporre

la seguente

successo

non

scomporrà

procedura

Poiché

sfortunati .

sono

la

essa

garantiti

XE

è solo

procedura

tuttavia

xe è

3,

84

177

/

t

in pratica.

efficace

396

814

completamente

120

1186 PoLLwRD-RHo n l

i -1

2

x,

m

3

p

E-X

4

k

5

while

529

339

1194 Ib,xoow 0,n-

1

1053

595

63

63

r -.,

2

6

muE

XE

dei

i

7

x,

8

d m

9

if d c

10

f

t

l moda

l

x,, MCD y

x,.n l

l e d w n

then

stampa

Xi

2

mod

d

then

13 La

x,. c

y

x,

k

2I

funziona

procedura

casualmente fattori

come

in Z .

Il ciclo

di n. Durante

ogni

1

.v,-,

è usata

alla

mod

linea

segue.

Le

che

comincia

alla

del

while,

svhile iterazione

linee

1-2

ciclo

i a l e x,

inizializzano linea

5 si ripete

a un

all infinito,

valore alla

dei

la ricorrenza

n

33.48

7 per

valore

il prossimo

produrre

di.v,

nella

sequenza

intinita di

ceippia

il valore

di

Di

nodi.

urna

c1ella

e ami

b

petrte

de/la

c.

parte

33.49 i è incrementato

per

variabili

73

c

scelto

ricerca

X . AI. XE. Xg,

variabili.v,

mod

b

k

ifi

12

2

l9

mo

1387 a

Il

8

g

chiarezza,

fossero

omessi, in

quando

recentemente.

solo

i

il programmo

I particolare.

i valori

valore

di.v,

vari abile

nella

vengono

Il

6.

codice

ugualmente

recente

più

salva ch

linea

funzionerebbe

il programma

poiché

quando,

alla

corrispondentemente ma

salvati

essere

deve

li

i cui

quelli

usando indici

Questa

alle

Si

m mtenuco.

il valore

i

sono

è scritto

se tutti

di

stampi

enerato

.,

indici

noti,

sono

più

potenze

per

procedura però, è

divisore

un

assolutamente

nulla,

vi è una

ra ione

buona

un fattore

trovare

non

Poct. Ro-Reo

che

non

ci sono

non per

di

banale

all inizio

che

una

Tuttavia

n.

che

garanzic

aspettarsi

puo

mai

stampa

produrrà

Pnl.l.,iRo-Rwo

set11brare risposta PoLLwaD-Reo

risultato. un

numero

qualunque non

potrebbe

qualche stampi

ntisteriosv.

modo

in qualche scorretta

st impure

Si vedrh

fattore

però

che

di t approssima-

Cll 2.

Xt,

Xi.

A2,

Alla

Xs.

linea

3

inizializzata l- segue Alle di

x,.

cl i.

li un

si

dopo

salva

a 2 lu

lilla

Xl ,.....

alla

sequenza

C 8-10

cerca

2, di

olia

particolare, divis are

linea I.

i

valore

il

non

b In Ile

4 4.

r,

e

e s iene 8 e

tros

db

lie

linea

b di

n

un ii

alla

linea

12

raddoppiata

alla

eli n

t Ittore c lcola

salva.v .

l inclice

sempre

controll to

si

il

massimo ella

linea del

tiwiido

se 13

se

9.

uguale

La

ag

alla

d

.

l- è

in

il v tlurc

,v n ,

Mi CD y l

ii

I

y.

corrcntc

stainpa

g cl.

n

è minore

Quindi,

i. lvare le

line i

variabile

iornat

valore.v,ù s.tlvatoùi divisore

il on

/.

viene

y

prossimo il valva comun

linea

i è

aggiornarnenti. di

z n .

poichi

Oglll

flHiOIC

pi II110/

dl II. ll 1llllC

CVCllfUQllllCllte

il più

rande.

Algoritmi

figura Xj

33.7,

lj

la

ij

...

Sj studia di cui

si ha

a

una

bisogno,

.

p,

.l

tutte

x, ,

come

fosse

si assuma

le

che

non

è realmente

del che

dei

ma

p è proprio x

il più

induce

una

il ciclo

sempre

primi.

Può

Sia

un

p

cio

del

non

tale

che

prendere

I

segue

esempio

da tenere

al più

p. dove

n

Teorema

cinese

del

resto

teoria

dei

Pouazn-Reo

di

e non

numeri

801

minori

un

di

la sua

il fattore

identificato

diversa

in pratica.

della

forma

ragioni

per

q.

il fattore

reale

problema

evitati

e sembra trovare

per

e cosi

n p

piccolo

p

la ricorrenza

poiché

un numero

di Ln

p e q sono q e pertanto

identifica

ricorrenza

in pratica

scelta -J

che

un

dove

pq,

di r e ir per

viene

essere

rigorosa,

e al più

fattore

è spesso

che

una

ir

ori

che

non

adatti.

bene

il metodo

aritmetiche

aritmetiche

valori

completamente

trovare

che

essere

2 dovrebbero

si comporta È

non

con

altri

è euristica

primi

operazioni

si supponga

sembra

0 e c

molti

scomporre i fattori

esempio

questo

c

ci sono

euristica.

tutti

2

I valori

analisi

Per

ricominciare

la procedura

Per

solo

operazioni dal

qui, questa

grande.

di trovare

di

le i. Inoltre,

n. ma

dalI analisi

numero

si può

modulo

x,

n

indicato

Anche può

mod

Tuttavia, di

allora

di n, un buon

c

Naturalmente casuale

6.6.1,

è inutile.

l on.

di t e u identici per p siano ai va dalla stessa operazione di MCD identificati allo stesso tempo,

vengono

l euristica

x,

.

banali

i valori sempre

ir, il che

pg

-

fattori che

i fattori

approfondiremo

una

dei

p è identificato

necessario,

x,

allora

può

paragrafo

banale

... p, ,

p,

porta

Z secondo

è Q Hi

fattore

Se

ipotesi

uno accadere

entrambi

banale

n si comporti

Si da

in ciclo

primo corrispondente

sequenza

mod

Pot.vwRn-Reo.

fattore

piccoIo

il fanore

p

x,

essere

Poiché

questa

compleanni

vada

p,

l, allora

p e

è esattamente

1

x

casuale, di

paradosso

la sequenza

richieste.

non

indipendentemente

preso

Dall analisi

modifiche

del

Questo

la funzione

di

coda

la

l argomentazione.

osservato

stato

prima

ripeta. modificare

comportamento

fatti

passi

sequenza

mOC

stima,

come

Peresempio,senhalascomposizionen

e, La

in seguito

se

di Z .

ora 1.

Se

presente . X

come

di

esaminano

p

per

x

medio

n/p

la sequenzax si

perché

il

vista

p.

Naturalmente

uniforme

MCD p,

può

Xj

si vedrà

con

ogni

il numero Si

ma

esserè

t

del

richiesto

consistenti

distribuzione

X corpo

obiettivo questa casuale .

funzione

considerare

il

il tempo

come

risultati

V

x, come

ora

Avendo come

sequenzQ

ci si aspetta

di

caratteristica

fattori

composto

2 p

come di

piccoli

n di p bit che

un

è veramente

efficiente

primi

sui

numero

un

si ha bisogno

Pot. Ro-R o

operazioni

con

n

non

essere

richieda

bit.

La

medio

capacità

8 p

di

attraente.

pii

modp Esercizi

33.50

poiché xmodn

33.P-1

xmodp

modp

In

riferimento

33.7 a , l Esercizio

per

33.9-2 ripeta

come

è 8

p.

rapidamente

della

della

sequenza i

parti

b

e

Si denoti del per

ciclo ogni

Si noti

con

r I indice

deI

cosi

primo

prodotto.

r, , ,

i olta

il numero

valore Cioè

argomentazioni

sex, , una

che

medio

di passi

rispetto p è piccolo a n, la sequenza x,. sequenza Infatti, la sequenza x, . si ripete x, . siano congruenti modulo che modulo p, piuttosto una spiegazione.

per

è stato

si trova

Se

0. Dalle

che

Quindi,

prima,

c,

che i

che

allora

Pou Ro-Reo

ripetuto re

u

sequenza

i valori

i valori

precedenti, pf

nella

O sono

x,. ,,

-x , .

abbia

s.il vato

medi

prima si

appena

n. Si veda

modulo

correttamente essere

dell esecuzione il fattore

di 73

di

PoLLweo-Reo

1387

dalla

Zm

Ze

mostrata

nella

figura

procedura

un problem

p.

possa

ma

multo

essere più

t. In secondo

/ di più grande In questo p. lentamente di quei to richiesto. luogo, i divi iOri eli riprodotti

e con tali

di t e u sono

ic che

d

.v

oritino

l il

pr itica, q rcito

della

efficiente

una i

0,

1, ....

coda

e

funzione f 2, .... Siano

l. Nella è la

determinare

per

33.7,

0 la lunghezza x, ,

33.9-3

questo I

oritn1 i

Quanti

x, , O

dove

j p

t e u

terminologia

un

valore

0 i valori

del l algoritmo

lunghezza

del

r e r in modo

esatto

ciclo

del

ti

I.

33.9-4

icmbra piitrchhi

non iii

Uno

ed

svantaggio

MCD

per

e

scopra

Z

tali

che

rha

rho.

Si

e si analizzi

Pou. ao-Reo

perché

X E

piccoli

di Pol fard, dia

il suo

un

un

nella

5i x,

r è la

algoritmo

tempo

fattore

.

d esecu-

forma

p,

l

yirsso

del

MCD

il MCD

prendere come

di Pou.xRo-Rwo

c gni

il calcolo

si

numero

cosi

ricorrenza.

accumulando

di questo

opportuno

come

è scritta

è che

È stato

suggerito

che

il prodritro

prodotto

realizzare

potrebbe pii,

della

con

quest idea.

di .v, d,

di

alcune

la y salvata.

e

in calcolo

x,

in

riga

un

e quindi

in modo

la correttezza.

si operacon

del

concentrare

una

Si deieriva

giirstittcnndone

considerare

richiede si potrebbe

preciso è il

Qual

numero

n di p bit

Problemi

3.7-I

j

ii compor i

ci si aspettano

passi p è prinso

iniziale

più

.

j

In

dati per

i

per

lunghezza

elementi

la figura

entrambi

MCD x .,

caio

.r ,

., più

siano

f v,

zione.

piccoli

Pertanto,

che

.,

molto due

Si supponga definisca.v,

la sequenza ripetere

può

non

x,

più

che

in y valore quaIunque di con / r, al 10 J p mod p è sempre sul ciclo moduIo volare p. Se un nuovo è salvato in y, anche valore è sul ciclo quel modulo Eventualmente, p. a k è assegnato un Valore che è più grande di si e la allo fa un intero procedura attorno al ciclo giro modulo cambiare p senza il volore di y. Un fattore di n viene incorre scoperto quindi quandov, nel valore y modulo p, precedentemente memorizzato, cioè .i-, quando y inod p. Presumibilmente. il fattore trovato i il fattore p, sebbene occasionaln,ente possa accadere che vene scoperto un m tltipIo di p. Poiché i valori attesi di t e di u soro 8 medio g . il numero di passi richiesti il fattore per produrre p è O gp . Vi sono due ra inni per cui questo.ilgoritm non comport potrehhe irti come ci ii a pctta. valori

tracciato è stampato

33.1-6.

Ragionando si

al

quando

Su intero

1 lw molti

ite tr

cale il it ri. bihariu

e divisiOllt .

e1el le

.1fCD

binario

operazioni pf

di p iSOlli

s iter vi in , I NSDt

cnntnill i l LtQllltC plÈI

di lilplCI

p iriti llllClllC

pari CIL

o I C

dispari IICYllo

di dei

resti.

ui

Questo nell

studia

problema algoritmo

l algoritmo

del

AfCD

binario

che

evita

i calcoli

del

resto

usati

a.

Si

mostri

b.

Se

p è primo

a.

Si dimostri

che

se a e b sono

b.

Si dimostri

che

se a è dispari

e b è pari,

c.

Si dimostri

che

se a e b sono

entrambi

entrambi

allora

pari, allora

MCD a,

iVICD a,

b

2MCD al2.

b

MCD a,

MCD a,

b

residuo

b/2 .

Si

un

progetti

a

b, che

algoritmo

venga

sottrazione,

efficiente

eseguito

controllo

dispari,

di parità

il MCD

per

in tempo

allora

b/2 .

binario

O lg max a,

e divisione

di

b .

interi

Si assuma

2 possa

per

due

MCD a

essere

b /2,

a

et e b in

che

eseguita

ogni

input,

a.

A talisi

Si mostri a per

b.

Si

deEle

che

operaziosti

il comune

b, ottenendo

definisca

eseguite

c.

Si

mostri

che sui

carta

per

richiede

0 1

unità

di

di tempo.

c.

Si dimostri

Euclide

radice

divisioni

lunghe

Igq lgb

la divisione

operazioni

sui

d.

di

Tre

Questo

Eucuo a. bit

b

nel

mostri

Si

ridurre

è al più

richiede

che

il numero

il problema

c p a,

b

O p a,

è applicato

quando

di

di calcolare a mod

p b,

b

a due

01,

a.

Si mostri

operazioni

MCD n.

b ,

sui

c.

il tempo

ricorrenza

2.13

Si mostri Si mostri

0

che

di

il costo

dalla

che

interi.

Si

descriva

operazioni

input

d.

Si

cakolare

come

calcolare

qualche

costante

in

generale

e Op

Note

sui

bit

Ni ve n e Zuckerman Knuth

F F

dei

l n-esimo

numero

o moltiplicare

due

ricorsivo

diretto

per

calcolare

F,

bai to

Knuth

jl22

delle

Sia l

p

che

la

usando

la ricorsione

con

a.C.

usando

un

primo

mod

p

quadratico

in

h richiesto

. allora

Z

trovare

per

tn.tti

solo

addizione

e molriplicazione

trovare

un

residuo

aritmetiche

non

quadratico

richiede

in media

unico

Knuth

di

due

t umeri

di

di p bit

ichieda

tempo

8p

con

questa

di questi

aritn etiche

tre

metodi

p

richieda

bit

tempo

Op

può di

era

alcuni

stata

agli

del

dei

da

contadino

lá8

numeri.

Di xon

un

G ietti

articoli Esso

Eu fide,

della

nel

iI più

Libro al 300

a Eudosso

piii

algoritmii

la moltiplicazione

si

attribuisce

un

cinese Lo

stesso

e

che

esso

li

caso

Su n-Tsù caso

fu generalizzato ne1la

visse

nel

speciale

tu fornito

da Chhin

Chiu-Shao

sua

è l al oritmo

del

speciale che

completa

randornizzato

generalitè

di

teorema

i.erit,ca

del

tn

periodo

il 200

dal matematico nel

1247.

ila

L.

dell..t

resto

cinese

a C e il 200

Eulero

primalith

nel

la dat

Nicomaco

greco Il teorenn

cinese

è3.27

Teorema d.C.

attorno del

resto

ra ionevole,

Un

numero nell

a

c X,

incognita

i x.

un

resielrrr

que zlra1ico

se

al 100

1734.

più

veli ce

finora

cono iuto

ri i

I t.

AI,A

t. I Ill

C ll lt.

t U

j1t.

i

pel

Ill

lli

I,.tl .

d.C.

fu fonnulatn

dei

l equazioiie

al

è piuttosto

j

soluzione

il

egizi.

antichi

elementuri

l

una

non veda

j dispari.

7. a.C.

intorno

antico

. misura.

16 dà una

56

conferenza

attorno

dovuto

di essere per

comun

e Bach

appare

scritto

algoritmo

russo

numeri.

di rassegna.

Euchde.

l onare

dei

il massimo

Riesel

di primalità.

greco

tratta

elementare

trovare

numeri.

piacevoli di

vantare

può

è l algoritmo

noto

verifica

e delh

matematico

essere

Euclide

dei

teorie

per

computazionale

dell algoritmo del

alla

algoritmi

teoria

teoria

contengono

E/eine iri

rivale

che

della

origini

introduzione

tr ai

ice

quadratici

ha

la

p per

sugli nella

in fattori

le

Euclide

di

29

recente

l59

discute

ottima

algoritmi

scomposizione

L algoritmo

suo

banale

memorizzazione.

un

discussione

più

1 e 2, degli

Capitolo O lgn la

somma numeri

di esecuzione

operazioni

Resid i

- a

tempo

operazioni

Quante

p.

buona

importanti

Pomerance

descrizione

al 375

altri

della da

e dimostrato

di due

è il tempo

a è un residuo

residuoquadratico

Quanto

efficiente

primo

forniscono una

un compendio

pubblicati

La

a n.

potenze.

Qual

numero

3 e a è un p.

a modulo

randomizzato

151

e anche

panoramica

di

numeri

Esso

costi

forma4I di a modulo

quadratico

numero

contiene

122

proposizioni

metodo

O ir

in tempo

si consideri

calcolare

per

sottraiate,

numeri.

rispetto

tempo

in

metodi

ly

33-4

.i

algoritmo

1

ora

della

residuo

arbitrario

se un dato

al capitolo

matematico

assuma

1 se a è un

trovato

forniscono

tre

del

è esponenziale

come

moltiplicazione

a

. allora

a quello

b

per

di p bit.

di sommare,

grandezza

di esecuzione

Swggerin enro

e le sue

se a c Z

dell algoritmo.

quadrata

di un un

un

uguale

che

Si provi

determinare

per

primo

radice

quadrata

incerta. y l

p.

Legendre

bit

di Fibonacei

l efficienza

n. Si assuma

indipendentemente

sulla b.

i trumeri

per

confronta

F dato

sia

modulo

quadratici di

grande.

algoritmi

problema

Fibonacci

residui

l altrimenti.

l efficienza

se p è un

p è una

modulo

bit.

efficiente

che

mod

divisore 33-3

1 12

il simbolo

.

analizzi

Si

p.

1 algoritmo Igb .

di Euclide b

di

e penna r

Iga 1

a mod

0 sufficientemente

dell algoritmo

cg e resto

1

algoritmo

operazioni

bit

algoritmo

b

p a, dall

sui

quoziente

di calcolare v CD b. c

pZ,

p

p e

modp

un algoritmo

modulo

operazione

in un

Si dia

con

a e

per

modulo

-s 1 -

b.

a 33-2

esattamente

si definisce,

quadratico

f

d.

vi sono

che

di Euclide.

,

i

a

804

Capitolo

33

Il prablema articolo

di trovare

di

Il concetto sistema

di sistema

crittografia

mostrano

che

quanto

hanno

87 essere

versione Il miglior

cresce

una

rho

è forse

algoritmo

in generale rigorosa del

dovuto

a Lenstra

quadratico, ol

il piit

di

come

rapidamente.

da

di numeri

algoritmi

algoritmo,

essere

il metodo Con

sotto dove

Migali

eccepibile e Rackoff cui

per

apprende

Brent grandi

per

pun di

più

L ii efficace

rho

di Pollai, metodo,

e per

ha

esso il

tempo

un del

tempo

156 .

di esecuzione

numero

dovuto

sia

input

metodo

trovare per

un trovare

p

fornita

dall utente.

la ricchezza tra

stima

di

testo

sia

un

arny

anche

ellittica

m 5 n.

Si suppone

Z. Per

esempio.

primo

piccolo

è stimato

essere

sono

spesso

T1

che

s si chiama della un

dato

capitolo

è organizzato

ingenuo

forza-bruta

ha

di esecuzioite

e nel

caso

problemi la

ha

medio

tra

progettato

specific sente

algoritmo

impiegatempo

ma

molto

Infine.

doli

più

chiaro.

il p ragratn

al oritmo

spondenza

itrin

testo

b,,

fortemente tra

segue.

array

P1

DNA.

Si assume

che

un

array

stringhe

del

.. mj

da

presi

che

particoIare

sequenze

z . Gli

che

nel

il

di lunghezza alfabeto

finito

di caratteri

caso

P e T

è presentato

n n

Il para

un

si

con

rato algoritmo

nsi li re

3A

valido.

si

dovuto

1 vt

nel

descrive

la costruzione

34.2

di un

dato

pattern

un

ma

dovuto

vi quellu

KM a Boycr

clell olgorittno

in pratica ad altri

un

algoritmo

automa

a stati

P in un

testo.

teinpn

e 51oore

in enuo

che

per tmiti Questo

o KivtP .

P impiega

un

Anche

facilmente

di Knuth-Morris-Pratt. l algoritmo

un che

presenta

e Karp.

peggiore.

quindi di

cui

rassegna

tra stringhe,

si generalizza

34.3

in

passa

a Rabin

caso

con

definizioni.

queste

Il paragrafo

peggiore.

ll problema validi

spostamenti

34.1

tn

s in T, allora

comspondenza

stringhe.

r fo

non gli

I ..s

spostamento

illustra

della

l algoritmo

L algoritmo

al p va

descrive

34.1

le occorrenze

nZ .

tutti

il pattern

in e T s

spostni e tto

nt

Inoltre

equivalentemente.

con

paragrafo

tra

cominci t

cercare

Se P appare

Nel

O n

stringhe.

0sn

il problema

di esecuzione

tra

T o,

T se

figura

segue.

1m

meglio.

testo

testo

di trovare

T. La

ri sol vere

molto

per

he.

un

s nel

s si chiama

come

On

Rabir -Karp tra

dato

stringhe

34.5

come

caratteri

a,

in .

j

è il problenu

m

di corrispondenza

corrispondenza

l

la corrispondenza

tempo

funziona

Z

spostamesstv

altrimenti

per

per

nelle

sia

di P e T siano

parola

di corrispondenza

stringhe

il pattern

I nel

O n

algoritmo algoritmo

questo

con

in un

Questo

tempo

tra

si presenta

aumentare

possono

algoritmi

che

è il documento

è una

pattern,

sottosequenze

oppure

P j J. per

al go ri tn1o

interessante

il testo

problema Gli

è un problema

di caratteri.

stringhe

P appare

pattern

questo

n e che

0.1

valido, tra

per

elementi

gli

j

spostamento

corrispondenza

anche

corrispondeit a

Z

stringIre

se T s

cioè,

chiamata

particolari

Si dice che il pattern P appare Porcorreacovtisrciaredallaposiziones P j I .. m

sarà

cercare

di lunghezza

avere

Tipicamente,

di testi.

della

inoltre

chiamati

che

na di un testo

di testi.

di scrittura per

.. n

si può

all intn

efficienti

il problema

setaccio

curva

cercata,

programma

l altro

Si formalizza

dare

stringa di scrittura

Algoritmi

del

usati

di una

programmi

e la stringa

del

della

fanore

nei

158 .

difficile una

le occorenze

scrivendo

sono

a Pomerance

Sebbene

del

che

n da fattorizzare.

derivare

può

tutte

frequentemente si sta

ipotesi si può , Il metodo qualche

Pollard

35 .

input.

grandi

da

stringhe

e Ri ves t

co

inventata

tra

86

Trovare è stata

ragionevoli

più

questo

Micali

controparte

Corrispondenza

di sistemi

progetto

zero

nessuna

in fattori

proposta

di tali

nel

Goldwasser, conoscenza

a

tecniche

di contraffazione

della lunghezza quadrata setaccio-quadratico in fattori a

esecuzione, può

recente

nuove

e Micali

Goldwasser,

tipo

169 .

comunicazione.

di interi variante

firma,

crittografia che

molte

Il

54 . Il campo

Goldwasser

efficace

la radice

efficiente

di questo

137

poiché,

abbastanza p

con

tempo

una

la scomposizione

per

di scomposizione

un analisi Ln

è una

qui

Di

primi.

ipotesi

da

sviluppate

ogni

in un

e Hellman

e Adleman

esempio

della cui

per

di

ragionevoli

la scomposizione

presentata

state

strumento

lo schema

di schemi

apprendere

possa per

Per

numeriche

a Diffie

Shamir

Per

uno

in fattori

classe

alcune

sotto

esponenzialmente

L algoritmo

di firme

la scomposizione

si suppone

L euristica

sicuri.

pubblica

sono

interessante

20 .

è dovuto

da Ri vest,

di crittografia. essere

in modo

e Pomerance

pubblica

1977

In particolare

può

schema

introdotto

dimostrato

quanto

p

uno

presentano

è difficile

La

a chiave

nel

sistemi

la randomizzazione

di crittografia 88

fiorito. dei

Goutier

a chiave

fu proposto

la sicurezza

è discusso

grandi

Crépeau.

di crittografia RSA

è da allora

dimostrare

primi

Brassard,

di crittografia

della per

casuali

numeri

Beauchemin,

simile

On

nt .

è asperso

per

la corri-

la

34

Capitolo

ura34.1

abaa s

a

3.

s

Lo

T

h

abcabaabc

/ iC.

s

ostamento

lineùverticaleàl

in

nv srrari

3

Q

/f e ie occorrert-e

g

J

ff

Ilprtttprp

nel

1olra

pa

zofo

ppp ppe

con

resto,

è c c,tr,

cara lere

corrispol

jJ

f

f

Q ono

/

f

$

grigio.

,A

e terminologia

iNotazione

à con on

denoterà

Z* Z

finita.

lunghezza

denotata Si dice

w., -,

l iniiciiic , Z.

vuota

i j lultglleez l

a èi. denotata,-on denotata l

I.d

lunghezza

con

n.

ha

che

una

ii è unprefisso re isso ili na un strinea i i un i . che se w. w i .,i1li .,ieZ Si noti

snffisso

e coni

stringa.v.

l.r . La

l,cl

che

segue

una

di

stringa,.uot,

carattere

a, si hard

In seguito

sarà

utile

e

l

lei

caratteri

ieri

a.v,

e e pulii. il seguentc

, p,vfisso I . ulil

no are

y ,.

.,

else

Si no i

Per

stringa.

e

per

ino tre

stringhe.

delle

grida io

1

n-

lengtlt Tj

2

m

length P

3

fnrs 0to do

4

if

34.1 ng

allora

di

Lemma c

x.

Se

y x.

-

x

sovrnpposizion au

i allora.v

y,

ctel

i h

Si

gllfgtigj

lo

p

r ii ,,

insostrazione

graticci

di notazione,

brevità ,poP,, Pertanto, pk.p

P ae

pP ,

si denoterà

il pn.-t

di

P

ferma sia

una

plÈI

lUIlg.,l

.. Se

primitivi P scoperta

funzioi e che

s

il confrontn

quandnè

assume

spostamenti

eli

p un operazione P-

del .

lineare

CtlC

del

dei

COA

m

P 1.

pattern

5 stampa

numero

L

llc. ll ii

z gua e

ivn,i t v,nate san,,,o i ... ar n,

di

richiii

l

g

l c,

ill lll

i,

m-

che

Hyr

scoperti. ,

clave

Per

essere

c

y

Se

c

allora

lyl,

Irl

di

testo

controllo

questo

i caratteri valido

spostamento

Il ciilo

34.3.

prevede

combacianii

interpretata

essere

pub

for

un ciclo oppure

che

rilevando

allu

comincia

implicito

3 considera

linea

le posizioni

verificare

per

La 1inea

discnrdanza.

una

i trovata

gli

caratteri

ai corrispondenti

uguali

sono

graficamente

il pattern.

contenente

contigurazione

tigura

nella

s

spostamento

tra stringhe configurazione

una della

i caratteri

con

s. richiede

Nave-Sr sc-k1wrcvvv

tempo

8 n

w

lti

nel

caso

peggiore.

coni si il tempo

controllO

tale

precisi.

di esecuzione

nel

c .,o

peg inre

è 8 n

m

1w,

che

è 8 n-

se n,

Lnl

nl

i

strin,,a

della

t è la lunghezz,

allora

al.

Lrl

.

e il contronto da

richiestn

il tempo

ri corri,po ge,nj

a tci n, ,

a destra

g ,.inistra

T,

P

h

si considera

lunghezza

ogni

procedura

pattern

o tuni

tmché

caratteri

La

ciad

diseordan

y -X

tra

le stringtw. trin tn

una

il controllo LllC

zar itteri

ui ie.

tutti ,

trovare

li

p 1 ..I r, . Ill .All.l , .ttllLtlt P l,.m An,ilo ,, iidenotailpreflssodi/ cantteridelte io

TconT,.Usandoquestanotazione,si è quello

iiiu

tutti

illustrato

è valido

corrente

mento Per

in cui come

testo,

zpp re

di corrispondenza suI

scorrimento

spostamenti

34.2

stampa

ingenua

procedura

come

.h

fieura

Se

b

della

parri

mj

1 .. s

Ts

.. m

1

then

La

y.

la

osservi

x y.

n1I ra

Il

sul Diniostra -ioide.

P

l nu i, 5

Le t na

lyl,

Ll

5e

a

tre

N wE-STRI4G-MATCHER T,P

una

che

stringa.v qualunque relazioni sono che ce

che

in

i n C l. di ogni

Le

e u -.

w per

si dice

suffisso

del

grafica

di y.

caratteri x, sex

Ana ogamen e, -

x

-.i.

ivL

x e y.

stinehe

dai

di y seguiti

e sigenotacon

,

q

gi due

a ione

dimosn

Una

è4. 2

Figura

cl e.r

Si suppo e

34.1.

lenrina

a Z .

e, appartiene

acro,clenotatacon concatena .iotre

di

stringhe

so o

si considerano

c

b

finita

lunghezza

stringgedi

I. ,

...,, ,

unque

tutt

v,

c ii ilcii

P

transitive.

di

n qua,,i c,pitocco

con

w è un

stringa

lastrica sstringa nn

una

strineay

q ualche

stella

dell alfabeto alfabeto

Anche di

1unghezza

Z

leg a a Z le

si

caratteri eri o cara

usando s n

formate

y e qua

a

rr xi , /

testo

nel

nna

con

connesso

Da

a

c

llprobleinadellacorrispoiiden P

spostamerrto

La

av

b

a

del AP pane

sono

a

S3

P

patte

Si

c.ah

b

TestoT

Fi

807

stringhe

tra

Corrispondenza 806

-,

I

34.1

ingenuo

Algoritmo L

ill

algnritmo

condiziotii

P

etluo

l..rnl

di corrisp ncl nz trov 1

lr

tlllti I..s

li

i II1I

,, pt.

tra n,.nti lllll1

v.,lliùi

s ring ie us.,ulclo

ut f

che

ciclo hll

talun

ùi

111060

lJ

c tltfolla s.

j

CtflC LCe.

CJllC ilO

llpEl

Lli it formazi011C.

808

34

Capitolo

Corrispondenza

a s -0

c

a

R a

a

h

e

a

c

a

s

b

Figura

In

c

a

a

b

e

a

c

s1 a

via ogni

spe-

/I fiur

ionamento

e il resto via

T

a

a

b

polinomiale

c

le linee

connette,

se

spostanrento

Si può a-d

verticali

connettoito

s

iminaginare

Le pani

esiste, 2,

di

a

i quattro

rarattere

rnosrrato

P come

che

nella

successivi

combaciano occorren-a

discordante.

tra stringhe configura.ione

nna

allineamenti

le por-ioni

a

34.2

un

tale

P

appare

tra

stringhe

algoritmi

per

problemi

pattern

in

un

dato

testo

T e si

dell algoritmo.

dall

del

e una viene

patte

Rabin-Karp

e Karp

bene

in grigio ,

mostrate

Un

Rabin

viene che algoritrno.

tentati

Algoritmo

il pattent

per

linea

hanno

in pratica

ad esempio

trovata.

un algoritmo

proposto

e che

inoltre

si puo

è O n

vr

1m

la corrispondenza

per

ad altri

generalizzare

la comspondenzabidimensionale

Rabin-Karp

c.

parte

se

di esecuzione

809

b

d

corrispondeit n

il pattent

mostrano

il pria

come

ingenuo

determinare

per i1 tempo

stringhe

s3

b

c

dell algoritnw

acaabc.

scorrere.

parte, ata

a

0

34.3 aab

con

a

c

I

a

P

b

analizzi

a

fatta

a

tra

tra stringhe.

nel

caso

ma

peggiore.

Il tempo

che

di esecuzione

ha un buon

tempo

si comporta

correlati,

come

dell algoritmo

di esecuzione

nel

caso

I11CCll O. Esercizi Quest algoritmo numeri 34.1-I

Si

mostrino

stringhe

i confronti

eseguiti

il pattern

per

P

dall algoritmo

0001

nel

testo

ingenuo

T

di

corrispondenza

Si

mostri

trovare

che

il tempo

la prima

delValgoritmo

occorrenza

di un

ingenuo

Si assuma.

di corrispondenza

in un testo

pattern

è 8 n

tra m

1 m

stringhe 1

caso

jzj.

per

nel

di

ca o

peggiore.

Si supponga rendere un

34.1-4

tutti

che

rispettivamente,

diversi.

in modo

Si

che

mostri

richieda

come tempo

si può

il pattern scelte

P

testo

casualmente

che

il numero

implicito

alla

linea

1

il

e

T siano

stringhe

dall alfabeto

niedio

dario

di confronti

4 dell aIgoritmo

di Z

i arattere

ingenuo

lunghezza 1, ....

0, per

carattere

m

ed

d-1

2 ir-m 1

n

dal

che

spostamento Pertanto,

in

trova

stringhe

0 che

p

enuo

una

sceIte

c

ab ab

e

di consentire

corrisponde

esempio,

termini

il confronto

discordanza

dei

o quancto

casualmente,

cc

ba 0

che

a una

il pattern

0 ba

ab

l algoritmo

caratteri

l intero ingenuo

per

un

dato

coincide.

pattern

è abbastanza

effi-

stringa

arl ir

ab0ba0c

cha

c

il paltern

P contenga

rariei

appare

nel

occorrenze

di caratteri testo

anche

di un carattere di

unghezza

cabccbacbacab

zn

je l1y o.

Per

come

ab

j

c

ccbac

Si ma

noti si

ba

c

ab

c che suppone

il

dei

riferimento

di

.. m , l .. n , s

per

numeri

carattere che

jolly nnn

pipii

cun puia

ripeterii atf tto

llfl

lllllllClO

nel

testo.

ll hltl ll10 Si

dia

Lli un

VE ltd

al oritmo

Iltl di

4ltltl ll teinpu

come

al paragrafo

s è uno

della

l equiva enza 33.1

di due

le definizioni

per

valido

un

tempo

tempo

On

che

possibilità

t,

On,

usanda

Pm

10 P m r puo

Per

c lcolare

r,

può

j

1

essere

se r,

si

p con numeri

la regola

di

calcolato

da

Ts

IO t,

10

Per

esempio.

se

Ts

I

3 e inserire

una

per

ottenere 10 31415

1 0000

l,.

i

.

calcolato

valori

r,, r,.....

t, in tempo

I 5 e t,

3

in tempo

costante,

T s ,n

si

T1

m j

allora

cifra

2

meno

i

m j P1

p in tempo tutti

il monumento

non

gli ci

si

veda

il paragrafo

1

32.

. .. m

m,

i .. s

1 .. s

grandi.

10P l ... da

AnalogamenTs

calcolare

Per

come

standard.

determinare

molto

On

decimale che

in tempo

è sufticiente

0n . osservare

che

poiché

lj .

314J5. nuova

a partire

r ,

decimale.

d, dove decimale

grafici

se T s

r,.

Horner

l0 P 2J

numero

sottostringa

potrebbero

ogni

decimale.

base

di testo

p. Se si potesse

allora

cifra

numero

fonte

p se e solo

essere

...

2

am logamente

i rimanenti

essere

10 P m

un al

nella

della

una

simboli

valore

decimale

confrontando

Om

cifre

corrispondente

p e t, possann

p in tempo

come

siccome

come

se e solo

totale

in notazione

corrisponde

in input

m. Certamente,

spostamento

s in

p il suo r, il valore

sia

cifra

consecutivi

denotarli

con

carattere

una

pertanto

con n

ogni sia

caratteri

paragrafo

I....,

r, in

calcolare

31415 dei

si denoti

9 , cioè

carattere

di /c caratteri

caratteri

si denoti 0.

2, ...,

ogni

stringa

interpretazione

i valori

l4152

ab0ba0

stringa

validi

Il valore

come

c

ni,

e tutti

t, Si supponga

testo

pertanto,

Si può

ciente

34.l-5

Pl T

preoccupi

.

I algoritmo

quando per

di teoria

fare

0, l, che

una

in questo

un

.. in

è

La

X

assumere

vedere

duplice

il pattern

O in

che

si puo

k.

spostamenti

iud assuma

elementari Si può

d

n-m 1 Si

numero.

è conveniente

te. dato

dove

eseguiti

di nozioni

terzo

allora

Datala

Dato

su

On

Si può

di lunghezza

2. Si mostri

ciclo

P siano

T di n caratteri.

supponga

d

i caraneri nel pattern NwvE-STRING MATCHER

efficiente

più

testo

Si

che

fa uso

chiarezza,

per generale,

lunghezza

31415. cifre,

34.1-3

un

principali.

tra

000010001010001.

Nel 34.1-2

modulo

34.1 desidera

rimuove re

ignitlcutiva

si

supponga

la cifra sia

più Tfs

significativa 5

1

2

E

ne

I

34.

richiede

Pl

tern

pt

un

essere

possono

L unica

di

operazione

aritmetica

modo

Fortunatamente,

tale

che

...,

d

si adatta

La r,

mod

veloce cui

t,

che

s non

come

In

2

3

5

9

Q

2

q

è valido.

P,

Ts

mostrato

il calcolo

che

p e tutti

RARI -KAR 1

n

2

m

3

li

4

pe O

5

t

6

fori

7

con

10 Il

P-M

un

un

tutti

for

s

1 .. s

però

13 I4

usare

alfabeto della

q, cos

posizione

un

presenta se t,

più

Se

usare

pertanto

può

q,

s non

validi. per

essere

fatto

di frequente

allora

il controllo

macchina

che

3

4

5

á

7

8

9

10

11

12

13

14

l5

16 17

18

19

9

0

2

3

1

4

l

5

2

6

7

3

9

2

l

concetti.

Gli

tipicarnente

mod

q

Ti

mod

mod

8

di

9

3

11

0

l

7

8

q

che

il costo

è Z

input

della

e il primo

t,,

10

ll

7

9

11

colpo

valida

come

q

mancato

dell ulteriore

si può

nuova

Clfl J

sono

cifra

vecchia

meno

signiticativ

.. ni

Il

si ,,nifieativa

p ittt .Ill

Ts

I .. s I All

. na p lSt IITICtltA

il t,

Tf i

I j/

Ts

ut

I

nuid

q

f1ll

signit cntiin

raijuzione

i la

3

sperare

l

4

il testo

l

5

2

14152

F

controllo

T. il

p

r la

ryra e

c

i

S.

3

31415

- 8

B

fir evlta

-

7

usare.

ccclcr lcrtr

Ipp llC

cifra

plU

valido

controllando allora

VCCCI113

plÙ

spostamento

se s è realmente

procedura q da

ifs n-nr then

5

una

t, w p.

mod

Qualunque

grande,

doifp r, l

4

13

poiché

sicuramente t, - p

vedere

n-in

if P

9

e

q

tlten

13

5

diventi

significativa

esplicitamente

q è sufficientemente

poco

questi

Pi

then

l

d-aria

inconveniente,

piccolo

mod

p

controllato

test

m.

che

dt

I-

2

2

34.2 nella

spostamenti

gli

cosi

dp

0 to

9

3

Otom

t

9

I

0

dop

3

2

primo

wTCHER 7,P.d.q

mod

7

t, e

lei g h P d

6

comspondenza

parte

Questo

precisa

d da

2

i r,possono

di eseguire

parola

modulo

mod

lengtli T

8 9

procedura

5

in

di p,

q è scelto

consente

in una

funzioni

I

ulteriormente

si verifichino

la base

1

7

7

pattern

4

ogni

q,

Si può

scartare

essere

mancato.

.. n

mancati

seguente

l

per

che

basso. La

3

è irragionevole.

modulo

generale,

grandi

come

Poiché

il che

rappresentabile

cifra

D altra

p.

per

deve

q

colpo

P1

i colpi

sia

r,

euristico

un

condizione

modulo

imp1ica

gr mod

o è soltanto

della

l ipotesi

costante

q.

macchina,

perchè

troppo

allora

q, si vede

singola.

mod

del

b

lavorare

non

controllo

s per

1J

essere

problema,

numero

modulo

della

sia

FO

le occorrenze

di m cifre. di

q

dq

p e tp

tutte

tempo questo

Tipicamente

ricorrenza ni

richieda

tutti rn .

parola

che

caratteri,

risolvere

aritmetica

della

possnno

m

appropriato

eseguiti

q tale

t,

e

p

cifre

per

Perciò. trovare

m.

che

nt

un

in una

aritmetiche. e si possono

contiene

O ir

è il valore

lo spostamento

quindi

essere

Ts q

soluzione

p

metodo

1h

di testo

porzione

è lungo

precisione

, mod

ir - d

dove

che

34.1

Ts

P

semplice

I , si sceglie

d t,

k

Se

q in tempo

con

operazioni

procedura

possono

l equazione

t,

On

rappresentabile

necessari

I,

0,

sia

in tempo

p e i r, modulo

modulo

10q

i calcoli

su p

I

34.

calcolati

m

questa

si calcolano

la ricorrenza

di On

conveniente.

vi è un

34.4

costante in tempo

Q 1 .. n

testo

difficoltà in

essere

tutti

.. m J nel

funzionare

figura

numero

calrohti

3 3 mod

10 l3

10000

2

10

mod

imoJ

131

al.l

Comspondenza

tra

stnnghe

n

I 1 si controlla

se P

Qualunque

spostamento

nella

linea

13 ,

viene

eseguita

di nuovo

Il tempo

10.

tempo

8 n

Om

che

l invariante

lm,

m

ato

essere

12.

Se s

eseguito

almeno

un

altra

volta

del

continui

ciclo

il valore

P

degli

q atla

di t ,

mod

-m

è 8 n tra

ognuno mod

a valere

n

la linea

sarà

14

e Bob

il tempo dei

di esecuzione

colpi

mancati.

modulo

della

Si

1m

nel

stringhe

l algoritmo

a

a,

e T

n

sn

linea

di t, mod

caso

peggiore,

in

come

modo

ulteriormente

allora

q in

casuale

tra

l argomento.

Il tempo

sebbene

le verifiche

linee

che

medio

gli

34.3

è valido. richiedono

6-8

sia

Si

12.3.

appropriata. che

equivalente

si

di colpi

a p modulo

ai

che

non

metodo

tempo

costante

costruito

Omv

dove m.

più

grande

venga

dimostri

mentre

che

se

i due

se

si veda

5uggerimesiro

A

w 8,

file

sono

vi

è al più

uguali,

l Esercizio

una

Ax

è

33.4-4.

con

automi

gli

a stati

finiti

usato

sia O n/q , stinvzt

su

come

è quindi

trovare

come

del

testo

impiegato

dopo

per

costruire

l automa,

un

ingegnoso

metodo

tra

di un

come

di

costruire

è allora

un

tuttavia,

in un automa

stringhe

essere

Questa

discussione

sono un è stato se Z è

grande

problema.

finiti. come

che

presenta

l automa

a questo

a stati

finiti

richiedendo

che

e si mostra testo.

un automa

volta,

può

relativo

di automa

stringhe

pattern

tra

una

Il tempo

la detinizione

a stati paragrafo

di corrispondenza

Il tempo

con

automa

esarramente

descrive

corrispondenza

un

P. Questo

pattern

automi

del

testo.

il comportamento

si mostre

costruiscono

Questi

carattere del

paragrafo di

stringhe

le occorrenze

automa.

le occorrenze

simu1are

Interne

tale

carattere

34.4

questo

tra

di tutte

ogni

8n.

particolare

per

testo.

un

ogni

per

Il paragrafo

automa

un

ricerca

si esamina

Quindi questo

essere

possa include

dettagli

di corriipndenza

tra

stringhe

su

di corrispondenza

tra

stringhe

per

un

dato

un dato

input.

di

n/q ,

i è il numero

q

a Bx.

stringhe

esaminano

Si comincia

q venga

T alla costruire

per

efficienti

grande.

approfondirà

essere

Si

8x.

la comspondenza

per

il testo

molto

formalizzare

mancati

q, può

valori

la discussione

di assumere

Qui

il numero

Rabin-Karp

veda

Si

sia

la verifica

per

1 . È difficile

ammissibile

e cosi

riduzione

la

e Z.

tra

algoritmi

scandisce

pattern On

analogo.

Ax

uguale

Corrispondenza

Molti

tempo

01

richiesto che

Z

al paragrafo

aspettare

dall algoritnao

il tempo

più

tra

dimensione

ci si può

un r, arbitrario

richiesta

hash

di

modo

che

richiedono

probabilmente

sull ipotesi

un approccio

interi

Quindi,

m

casuale

funzioni

in

1000

necessariamente

verifica

spostamenti

alie

validi

euristica

corrispondenza

precedente,

la possibilità

poiché

una

perdefinire

l ipotesi

è O ir

un anaIisi

8x su

poiché

Rabin-Karp

1 possibili

3 e il ciclo

spostamenti

pochi

dell algoritmo

basare

può

divisione

e dimostrare

I/cg.

atteso

q si comporta

su11 uso

scelto

ci si aspettano

valuta

possibilith

1m.

applicazioni,

q

raggiunta

un In molte

mod

verificato

e cosi

valore

Ar gad

m

quando

q dal

mancato.

34.2 .

w-I4RP-MATCHER

Se

di un colpo

linea

l equazione

che --

di d

la possibilità alla

14 si calcola

valido.

dato

escludere

è stampato

di comspondenza

il calcolo

O n

che

spostamento

m

anche

deve

di 14s

ogni

troi

direttamente

ingenuo

mJ per

for

linea

di esecuzione

esplicitamente

noti

Alla

usando

l algoritmo

come

I .. s venga

il ciclo

assicurare

per

costante

Ts

valido

allora

la linea

tempo

. vr

I

Cioè,

di

spostamenti

se il numero della

eseguita

validi.

medio

lunghezza

del On

di

validi

allora

panern,

in tempo

tempo

Questo

spostamenti

di esecuzione è piccolo

ci si puo

è On

aspettare

la procedura

che

Automi

se si sceglie

e il primo

01

a stati

finiti

q è scelto Rabin-Karp

Un

atetonra

a stati

M è una

finiti

Q è un

insieme

finito

qc

Q è lo stato

A c

Q è un

Q,

quintupla

m.

A,

q,

Z. 8 ,

dove

di stali,

iniziale,

Esercizi

34.2-1

Lavorando testo

34.2-2

Z è un

Come un

modulo

T

si può

q,

colpi

quanti

l592653589793

314

estendere

occorrenza

di un

mancati cerca

quando

il metodo

di

qualunque

incontra

l zigoritmo

il pattern

P

Rvbin-Karp da

pattern

dato

nel



alfabeto

un,,

funzione

da

di cercare

insieme

in un

z stati

tiniti

L automa

testo

alla

di /- pattern

volta.

Se

transizione 34.2-3

Si

mostri

cotte

ricerca CSSCIC

di un

estendere dato

SpOStQtO

il metodo ni x

pattern

VefllCUllllClltC

di

t in un

Rabin-Karp array

il problema

per gestire n x n di caratteri.

C OllZZOlltallllelltC,

l11B llOll

Il

patteris

pUO c .SSCll.

si dice

dell i

Alicehatinucopiadi ha

un

i loro

y

file ti e

I 000st

un 8 bonn

b ,. identici.

e ca u,lmenti

èl

lileA

l ,....,

l , Peri

i itnrc

sclcziui, u

et, lungo la

n

... bit.

a Alice

rasinissione

un

ihtero.eda

lungon e

Bah

degli

f 0.

bite

potrebbe

tllOti O.

Un

Bohanalogamcnte

deèider no interi

1....,

tl i

q

intricare il

l

i

.

I.

eiii

Allor,,

che

ie ui ino

A1icc

valut i

i 1

automa che

comincia è

stato

la m macchina La

tigur a,tati

p ii

accettanti.

fiorito,

Q x Z in g,

l automa del n

rifiatato.

Q tuie 34.2-4

di stati

di iupui

26

al problema

un

Rabin-Karp

insieme

d ilo

nello

q allo

stato statn

faccetta

34.5 t,niti è lo stato

chiamata

illustra 11 i,tduce in cui

stato

n.

lu stringa queste una

legge

qe

q e legge 5 q.

Qirandn appena

funzione al

in

il suo letta. con

Un un

6. chi,mala termine

ài

i caratteri

il carattere

cietinizioni

W si trov .

di transi -.ione

/iran.-.io,re

doli

della input

st ito input

Jtf.

stringa a,

si

corrente che

semplice fan io,te scansione

di input

muove

uno fa

q appartiene non

automa

è accettato a due

una od A,

è detto stati.

stufo-finale.

da Z

della

w.

stringa

a

34

Capitolo

Corrisponden

a tra

stringhe

815

inpur. a

b

0

l

0

1

0

0

stato

a

a

34.5

Un in

Un

di

alfabeto

X di

Gli

dispari

termina

con ersa

Per

su

di

a. b

5

Piii

l,

a ,

abaaa la

M accetta

stati

b

dove

una

transi

ioni.

stringa.i

k è dispari.

Per

srari

è

l.

0.

w se e solo

stringa

Per

esempio, è

0.

0,

l, 0, 0

se pii e

stato

1, 0,

quindi

di

A

8pw.

Automi

a

la

per

$1. E

pCf

l

dstitque,

tale

input

che

tale non

sterro cn

un 8 ri y

y

1

0

0

4

I

1

2

0

b

2

3

0

0

a

3

l

4

0

b

4

5

0

0

5

l

4

6

c

6

7

0

0

R

7

1

2

0

è accertctto.

è accettato.

p è definita

dalla

Z

relazione

P vi è un

costruiio

a partire

eseguire

la

P

dal

ricerca

tra

ababaca.

D ora

si indicherà Per si

specificare

funzione

á

max /-

stringa.

Per

un pattern

funzione

P nella

è un

stringhe,

illustra

è4.6 che

P sia

uisa

di poter

prima

data

essere

costruzione

questa

stringa

usato il

per

pattern

per

che

tra

tra

Z... e

suffisso

stringhe

chiamata I,

0,

4

5

6

7

8

9

10

11

b

a

h

a

c

a

b

a

l

2

3

4

5

4

5

6

Lo

srzilri

3

c

tutte

le.aringhe

lerntiiranri

coi

la

striirg r

ababace.

0 è lo.vsatc

ieri-inle

e lo sreirr

per

pattern

brevithnOI1

...,

relativo

u un

vr

tale

dato

che

cr x

P

pattern

stiffisso

finn -ione

relativa

l .. m . a P.

è la lunghezza

Li

del

pii,

di x

detinita

la

poiché

P

ab.

stringà

si h i cr f

vuota 0.

P

e i

iutTisio

un

cr ccaca

di

o

allora

se e solo

cr .r

di eorri pondenza

se Paz.

Segue

l e a ccab dalla

detmizione

lel itlVO

d Ull fQto

pat t rn

P

I ..

la

per

invariante

del

detinizii ne

SLIO

di

COI11pi l

5e.

a

l llllCI1to

o

è

P,,cr

la

seguente.

La

nsacchinu

che

o T, ri sul

questo

trirgllC

intuitiva

come

34.4

dell i

cr y . tra

16gicz

b ie

111 llltiene

ni .

4 iT,

m, si ha cr .v

se.i y.

l automa

ac certa

La

P di lunghezz

3 a

nntazione.

cr ausiliaria,

il pattern

per

0

/7

2 b

essere

deve

quest autoina

. cr è ben

esempio.

tra

di preelaborazione

ur

di corrispondenza

P, .r

suffisso

Si definisce

fi

si assumerà

funzione

P che

suffisso

fase

La

corrispnndenza

di

prefisso

funzione

Per

una

cr è una

x

La

da

l automa prima

in una

in poi.

stafo

l a

stringhe

di corrispondenza

testo.

la dipendenza

definisce

lungo

automa

pattern nel

i T il

Z.

7 E

.

P

0

qnest auroina

input

b

stato

b

corrispondenza

pattern

6

a

lie

ogni

5

input

I a1lo

. dove

y

.stati

e

vo

ta

C

4

b

tenninanzr

se.r

0

eviden iato stato

che

Cfp

transi -ione 6

dallo

di

A. La funzione

iale

accettante

e solo

sequee a

ieri

stato

stringhe se

la

0, I.

0,

l arco

quelte

è nccevara

l ,

fim ioiie

esenipiu,

accetta

i ri-iale

lo stato di

Q de1la

l è l tinico

stato

auto na

rrna

incluso seqrren a

alente.

Queste

Stati

tabulare



le 0.

di

ione

equi

precisamenre,

e

iir put

finiti

rappresenta

Una

degli

cover insieme

ricorsiva

Per

a

3

b

rappresentcmn

iirdica

b

abbaa,

Pertanto.

b

2

b

a stafi

a

.

orieiitati

una

l input

b

transi iosre

con

mimero

atrrai

a,

archi

0 etichettato

automa

seinplice

inprtt

diagrainrrra nero .

a

l

b

a Figura

b

0

av r l11

t tn

s andito

è dimostrato i pritgi

CCl111I.

inXe uitn

carurteri

nel

del

teit i

Teor

T.

Ia

ma in

In

344.

ic hin

parole

i è nello

piovere.

stato

jT

cigni

he

q.

dove

che

ciopo

q

o

T

segue. carattere

L insieme StcltO La

di stati

g

è

0,

1....

ni .

L n tato

iniziale



lo stato

0 e lo stato

azione, er

qii

ni i l unic i

nell

iti

iaminato

i

o T,

oTz.

Ti

a.

allura

Iu

in icchina

izinnidel

Ladimostr

etFettuare

lovrebbe

tcureizv

mo trac5ae

una cr P,ci .

g Ta

transizione Cioè.

QCCCH llltC.

funzione

di C ll

qivvlUllC Lll.

transizione Ittero

6

è detmit

i d ll

se ucnte

equ

ilunque

il

to

r

c

a. lilTor

5 q.

it

o

P,a

r

.

i

t. Qllindi. vincent viotii

p illcndo intotm ili

6i.

r sarò

O tesa

P, piii

ii

i ri

blu

1ticne

urtai i

lie

i hr ic.

itlv

iri

iille

clciiiler

li

t 3AA .

Qlieiia

34

-Capriotcr

hell automa

di comspondenza

Ciò

segue

dal

più

lungo

prefisso

Per

fatto

chiarire

che

di P che

semplice dalla

lunghezza

sua

relativo

iniziale

è anche

funzione

di

testo

di input

a un

è 0 e l unico

stato

suffisso

un

automa

che

simula

transizione

8

T l di

pattern

della una

un di

ed efficiente

m in un

stringhe

legge

il funzionamento

programma sentato

tra stringhe

se l automa

.. i .

34.6.

stato

di

esempio,

per 5,

q

di ababab

allora

è P

il comportamento ricerca

Come

per

m,

delle

è lo stato

tra

stringhe,

di un

tale

A, è il

stati

si dà

ora

automa di un

automa

di

b

abab

occorrenze

qualsiasi

l insieme

si ha 8 á,

Pp

abab.

comspondenza

nella

lunghezza

accettante

figura

b nello

1, ...,

0,

l

a

P di

pattern

di corrispondenza

Q è

a

un

rappre-

tra

n ,

lo stato

rn. Figura

FL m-AUIOMATON MATCHER T, 1

n

2

q

-

3

ferie

á, m

do

8

Lemma Per

1 ton

m

ifq

6 7

s c

La struttura

di F n

di esecuzione il tempo

-Il

per

dopo

appare

pattern

con

z-AUTOil1ATON-XfATCHER

su un testo

richiesto

seguito,

34.3

aver

Si consideri

di lunghezza

calcolare

n è O ii .

dimostrato

che

spostamento con

la fazione

il funzionamento

si trova se P

scandito.

nello

un

s

semplice

si ha ciclo

tempo

Questo

di transizione

la

dell

stato

oT

T,. la macchina Per

funzione

dimostrare

suffisso

implica

che

di esecuzione,

il suo

34.2

questo

include

anche

automa

funziona

te,

su

aver

stato

testo

accettante

risultato,

questn

un

esaminato

si

di input

m se e solo

fa

Tl

il carattere

uso

dei

due

.. Ti.

.

Si dimostrerè

Poiché

se il pattern seguenti

o

fi

Con

cr s

riferimento

l è banalmente

Ora.

3.

La

mostro

figura

che

s

cr P

u,

P dixa.

xa,

dalla

Allora

r

carattere

alla

figura

soddisfanno. definizione l

a,

34,7.

si ha

sia

poiché

P,, è i1più

gr

o

o .ni .

Se

i .sempre

cr x

poiché rii o . Pertanto,

o 4.

r

cr xa

relativi

a,

0 allora

ignorando / tale

del

Teorema

Se

all

cr x ,

allora

cr xa

o Pa.

sa .

P e Tl o

cui

si

la a ila che

fine

di

P .v.

T,

perché

s uns i

clipei i i tru.

irene

1

P,

P n.

Come

1..

La

figura

34.2.

r

Quindi

nella

Poiché cioè

cr P,a ,

cr ,va

teorema

che

su un dato

mostra

che

l automa

che

è un

tiene

suffisso

testo

figura

P,,a .va. u .va

34.8, P a

e

cr P a .

Ma

cr P a .

caratterizza in input.

semplicemente di quanto

D

il comportamento Come

notato

tnccia.

è stato

stato-finale .. i

è un

di un testo

automa

di input

letto

di corrispondenza l automz,

per

ad

di un

precedentemenogni

passo,

del

più

finora.

tra

stringhe

per

un dato

allora

T,l

W

L t dimostrazione

Ora

si assuma l

p T

che

cona.

è per

p Tj

O T

cr T

induzione

su i. Per

e i dimetri

che

p T

per

detinirio se

di

T,,

per

detinizione

di

4

per

definwiune

di

q

per

la

Ta

per

il

4T,

per

dettnilionc

a ei a

inr istrn

c lu

r

Ot l I

I,

o .ra .

Per

l

indui.ione

il

teorenu

è

in iitrah .

0, il teorema

T

Allora,

T,8p

i

è banalmente

vero,

0.

e

a

a

I Ici nita

è nsnstrato

il Lemma

Pertanto

iI principale stringhe

ilhu cle Ila

P x.

I per

P xa.

pattern

e. Pertanto,

q e Ti

Pe

P,

ine

ha

q

i 0,1,...,ii.

aP,

tra.

che

poiché

tra

p è la funzione

8 q.

Un

cr, si r

34.4

Dimostra iodate.

la cotsclu ione

Per

pnsitiva.

grande

P,

7

siiffisso se q

i.

.i

r

implica

dimostrare

8 T, .

34

a,

uppena

gT ,

e r

34

che

per e qualunque

o

teorema

prefisso

stiffisso

ione

34.1

Pa

ora

pattern

della

di allora

cr xa .

di corrispondenza

vi i-

T

P è stato lemmi

o

questo

cr.

stringa.

qualunque

t ne

ione

fia

caranere

definizione r

il Lemma

È possibile in

problema

Fitine-Acvo twow-M vcveR

procedura

automa

dopo

è nello

Disegccaglianza

Dimostra ione.

ckn

lemma

tempo

non

però.

K Si affronterà

Dalla

4 T, Levuna

Figùra

del

della

x e qualunque

si pone

Pa,

lungo l automa

di ricorsione

stringa

Se

P,

correttamente.

alla

dimonra ione

xa .

Lemma

qualunque

P,,a xa.

i-m

stampa

r 0.

o

Ditnostrazioire.

then

r

della e r

8 q.T i

q

5

Per

Un

a x

length T 0

do

e solo

illustra.-ione

34 e q

del .nizionc lemma

34.3 34.3

e di

I .,

di

dall indu ioue

4

. Si denotino

p T,

con

Comspondenza

f

z

ha

si

givi

q

P.

pzttern

Si

assume

lo stato

m

linea

alla

5

concludere

può

q alla

linea

se

che

e

4. allora

solo

se

q è il valore

è

stata

più

appena

di stati

Dato

un

come

seguente

calcola

procedura

la funzione

di transizione

super

un

dato

automa di

P contenente

pattern

costruire

testo

r

un

occorrenze

a stati

entrambi

finiti

che dati

i pattern.

due

cerchi

Si

819

P e P.

pattern

di

minimizzare

il

dell automa.

un

T in tempo

P1

pattern

34.4

..m .

Algoritmo

caratteri

automa O sr ,

transizione

di

funzione

le

stringhe

funziona 34.3-5

della

costruire

tutte

numero

.ggglèAt4

colo

come

determini

grande

esaminata

FtNrrE-Auro twrox-MazcHER

descriva

Si

34.3-4

la macchina

p,

tra

a stati dove

n

veda

si

jolly

finiti

in grado

l Esercizio

di tovare

un

34.1-5 .

si mostri

occorrenza

di P in un

Tf.

Knuth-Morris-Pratt

CQlferre-TRANSmON-FU4CTION P,Z m m

I

Si presenta

length P

Questo for

2

0 to m

q do

3 4

for

o i

do

k e-

carattere

repeat

6

until

un algoritmo raggiunge

funzione a s

min m

5

ora algoritmo

ria

Z

1, q

r l

di

2

di transizione .. m

I

7

P,a

8 q,a return

8

Questa

4-7

assegnano

P,

Pa

alla

il più che

è min m,

fattore linea

injZ ,

il ciclo

6 può

richiedere

calcelate

per

P,.

alla

stati

gli

P a.

e decrementa

fino

6, il tempo

ni in un

testo

l finché

PoP a.

Dha

O ni Z

tra

si

di esecuzione

di lunghezza

al più

caratteri.

per

il valore

l volte

trovare

aIfabeto

Con

tutte

Si

T.

consideri

il

una

col

si illustri T

il suo

funzionamento

sulla

tra stringa

stringhe

il pattern

per

P

aabab

e

testo

Si disegni

dovrebbe del

un

diagramma il pattern

per

pattern

P

il di tgrnml11adi Ll 1

ausilia-

che

la funzione calcolo

il

necessarie

fattore

è

carattere calcolare

per

m elementi.

mentre

calcnlando

Z

della

funzione

m e qualsiasi

tr ha solo

un

z invece

mente

combaciare.

caratteri

testo.

l è necessari allineato

cioè

una

b.

In qenerale,

un

è utile

stringhe

o

figura

34.9 a

non

del

con

sesto

carattere

sono

inutili evitare

per

la

il primo

che s

si sn con

la risposta

testo

che

del

testo non

pattern consente

di

Nell esempio

della

carattere

del

pat tern.

isponde

al

ecohdo

nella

parte

devotlo

seeuente

alli

un

nel

testo

2 mostrato del

mostra

ababaca

del

validi.

poiché testo

tre caratteri

conoscere

P

q caratteri

lo spostamento t terll

p

tra

compare

di controllare

il pattern il

questi

te beton valido.

c irattere

Tuttavia. del

di

spostamenti

ainen

con

il psttern

evitare

La

ma

conoscenza

certi

come

per

ingenuo. contenei te

combaciann.

La

di

usata

finiti.

configurazione

tre cafatteri

i primi

conoscenza

corrispondenza

a stati

che

s

pattern,

la

del lgoritmo

5

nel

essere

dl inea

di

autonoma

q

carattere

tt zura

di transizione

di stati

per

un

automa

ababbabbababbababbabb

sull

di corrispondenza ull betc

p lltCl ll

è detto tr

llùll

non ltl iziotle

ri vrnppoitibile di.il,tti

se perutl

P P,,

autonla6li

implichi/corriipolldctl/ t

h della

llecessat

i a-

domand i

e. tr i

Si

ll

i caratteri

lllllllA10

del

P

pattern

.,ipOSt.,lA1CIltO

.. q

S

S tillC

cnnlbaciano

nn

i caratteri

del

testo

Ts

l .. s

q.

tilt,

tr

Z

0 l

che è

/ll,.ll

a.

b

.

j

P

l .. /

dove Un

una

e Pratt.

aaababaabaababaab.

stringhe

34.3-3

un

s di una

lo spostamento a.

Dato 34.3-2

ingenuo

insnsedivtamente

carattere di corrispondenza

solo

sono

l array

essere

può

comportamento

quest erempio,

figura.

l automa

da a che

Poiché

rai chiude

pattern

Quest informazions

spostamento

Per

un

per

di 8 per

combacia

Esercizi

Si costruisca

tutto

pattern

nell algoritmo

particolare

questa -

m jZ .

prefisso

determinare

34.3-1

Moms il calcolo

1, ...,

0.

q

si risparmia

preelaborazione

un

per

di se stesso.

preelaborazione

le occorrenze

Z è On

funzione

spostamenti

e la

utilizzando

3 A-6 .

prefisso

all interno

procedure

a O m Zf

nella

stato

breve.

a Knuth, del

0 ni . L array zpermette al volo necessario quando

qualunque

tra

usando

pattern

indipendenti

chiaro

più

evitando

di

esterno

più

m

Esistono

l Esercizio

totale

n su un

perché

abbassato

veda

Funzione

linee

le

il ciclo

per

informazioni

sarà

elementi,

in tempo

efficientemente

povere.

contiene

Quest aspetto

del

dovuto

m

interni

mentre con

q

il controllo

al pattern

stringhe

8n

8.

La

ripetersi

può

essere P

pattern

fZ .

I cicli a,

comincia

repeat,

i3può

definizione.

Il codice

a in confronti

calcolare sul

sua

q e i caratteri

è O nr

interno,

più

astutamente

calcolare

per

che

l

q

in base

tutti

c-Tm smow-Fc criow

richiesto

di lunghezza

diretto

I- tale

grande

di Co vm

migliorata

pattern

in modo

Z e 3 considerano

il tempo

informazioni

procedura di un

un

veloci

più

alcune

a

possibile

con

B q,a

li ree

di esecuzione

contribuisce

molto

alle a B q,

grande

Il tempo

verifica

calcola

procedura

cominciano

a.

di

8

che

k più

k

5 q.

tra

di esecuzione

calcolata

In parole

I a c Z. il valore

P

in base

5 venga

ammortizzato . k e

tempo

8 ed esegue

precalcolata

transizione

la comspondenza

per

deccrii

itritlglle

s

7s l

I .. s s

I,

34

5

q

a per 7

iOVI ,lppOllll lld.

j

e

1 .. s

s li

.,p ,tementi

qj.

iloil.iia s

sicllr iillclltc I.

s

,

...

tl n v

q-

v ilido. I ion

Nel c.,clu i

linre

llli lutti

r ci

C iati.

immischi,tuii cnte.

Si

ht

clle. h

5 o

ni

caio.

e

b

a

b

c

á

hm- b.

a

b

á

b,a-h.a

a

a

a

b

c

b

T i

S

P

12345678910

P

a

h

a

b

a

b

á

b

a

a

rn il

0

0

1

2

3

4

5

6

0

l

a

b

a

b

a

cb

a

a

b

a

a

ha

a

b

c

b

b

a

c

a

a

b

Ps

T

abahabahca

P

S

a

ha

b

a

h

a

b

c

a

h

a

b

a

h

a

b

c

a

a

b

a

b

a

b

a

b

c

a

b

a

b

a

b

a

b

n8

6

P

k

P4

a

4

6

b PE

b

a

a

b

a

Pz

4l

b

D

Pg

Pp

La

34.9

Figura

che

i primi

q

del

testo

ed

è quindi

P

che

sia

ri, cosi

un

anche

cile

x

di che

3. Dato

S j

spostainento

valido.

il pattern

suffisso

dei

P,

con è P,.

Le

c se

s

In

sresso.

q caratteri

utili

s

non

sarà

di

T

s

caso

questo

in grigio, si

tafi

per

che

si

allo

nuovo

spostamento

corispondenti

caratteri

con

di

1ungr

pii

0

si

del

testo,

come

esso

una

della

è un suffisso del

più

i primi

confrontare

ha

può

la

garanzia,

/- caratteri

l equazione

per

stringhe,

sia

al nuovo

prefisso

per

I

max

q

I

q

e

P

che

di

P,,

sia

z

che

altro

q esempio.

è la

lun la

hczz figura

del 34.10

preliiio

com-

con

P

i

fornisce

PE.

4.

2 e nf ZJ

4

0,

il parterre

contenente

e

ababababca

P

i1parren

per z6

6,

config,cra icnrc,

nio

stra

che

I caratteri

P

e In

linea

prcn1eg

Penanru. Ie

tutte

per

soiw

combaciano

cowbacienui.

che

P P

iterando verso

P

8.

g

clesrrei

La

á R

tr si ottiene e si

8 J

a,u ore,

veèriea1e

giara

è tirata

dopo

proprio

ir

rostrati /

Le

grigio.

P. P

8.

6,

4,

verticali

linee 2.

0.

.

/I

lemnra

q.

essi

memorizzare ingenuo

Dato

segue. I, 2....,

un

...,

m

tale

lun

o di la

P

funzione

che

baia ui prefisso

iutTisiu ri

proprio completa

nel

su

P

T,

1

n c

2

in m

1estgrl P

3

ri m

COMPUTE-PREFlX-Fu rrro P

4

qc

0

5

for

i m

6

la frc,t -ione che

lengthjT

do

I to i while

7

/

60

8

if

ùi per

PE

lO

ifq

il

0

q

Pq

M

e

EEG

1

Pq

c

l

Ti

C/

T ij

C -

CJ

1

Cl ll1t. n

pvtlern

ababababca.

ttlCll

1

il, lll1p l

q

Qq

ll

ll p ,lllCI

il p ll

c

L 1ll

Ypl it, 1llV

pseudocodice

lli

t

lli

con

Ftwse-Autowwvo -

Coweute-PREvu -Fvxa tov,

ausiliaria

procedura

seguente

vedris,

si

s. Quest in-

.. r .

l

è dato

come

Edi

di corrispondenza

Pl

pattern I,

s-Pratt

z

KMP-MATCHER

è il prossimo il numero s

la

chiama

arri basato.

principalmente

KMP-MwtcHEa

MATCHER.

stringhe.

0.

m

interpretata

q-L

È

stesso,

essere

s

che



conosciuta

memorizzare

baia l algoritmo tra

con

di Kn utah-M

di corrispondenza

KMP-MATCHER.

nome

.

piii

riga

di

/

Clll .Il

Cioè,

prima

alliiteati

q

Ci11lr.*

AC

porzione

quindi

s

conveniente

s , piuttosto veloce

della

può

Allora.

di corrispondenza

z

la

la

i r aratreri

afferma

che

34.5 .

il pattern

è parte

34.5

P, P .

che

più

richiesto

P è la funzione

il pattern

q tale Sembra

finiti

k

L equazione

spostamento

a stati

l automa

l .. s

ps

P.

rendere

per

il precalcoln

formalizza

stringa l-

confrontando

precalcolata

Poiché

grande

usata

essere

essere

valido.

corrispondenti

formazione

z

34.9 c .

potenzialmente

caratteri

Si

può

figura

richiesta

spostamento

tra

necessaria nella

mostrato

rc S

scorrere

a,

figw

suffisso

qualche

calcolare

L informazione

è .5

le una

Poiché

Eq .

q

necessario

poiché

dnto. Si fa

b

.

Nella

comiettoiw

ne1l arrny

combaciano.

come

n2 0

essere

11to s, il pl

SpOSEQIPC

2.

4 . 2 e 0.

6.

conosce

possom

il prefisso

il pattern

L algoritmo nel

a

rn r

che

che

e rappreseirtara

successo

con

ciò

4,

6.

del

Un illusrro ione

super

8.

w i

coiu essi

34.10

fan ione

niodo

T in

dedurre

puo

dedcr ioni

wta

si

resro

sono

con

è precafcolata

corrispondono è s

iari

2 è consistente

informa-ioni

un

con

coutbactanti,

s

gttest infonrta ioide

va1ido

poreir.-ialmeigre

eviden

5 caratteri

spostamestto

uno

è alliireato

ababaca

combacianti,

c onosceit-a che

poten.ialmente

corifrontando

precalcolate

ma

l akron è i alido,

s

I cararreri la

solo

Usando

b

spostamentn

P

II pa rer i

a

combacino.

5 caratteri

verticali.

livree

z.

prefisso

fi n ione

è

2

b

c Figura

Gia

x4

per

Corrispondenza

822

tra

823

stringhe

Capitolo34 z COill

PUTE-PREFIX-FUNCTIOi4

m m

1 2

length P

1

3

k

4

for

q

2 to

k

0 e-P k

k m

do

7

if P k

8

return Si

Le tma

c Pq

correttezza

P qj

q

con

un analisi

tempo

del

di esecuzione

di queste

Dimostrarne

procedure.

implica

tempo

di

ammortizzata

Questo

decrementato

6, / viene

negativo.

corpo

del

ciclo

alla

del

estenso

è O n

corpo

iniziale,

potenziale ne

caso

di

P,

linee

di

k è la linea

corpo

del 9.

allo

richiede

5

è eseguita / . k non

8 che

esecuzione

totale

incrementa

ciclo

vale

for,

impiega

tempo

O nij.

di q come

tempo

prefisso

q

q e n

è raggiunto

quando

del

del

pattern

come

fun, ione

da

di

il numero

effettivo

tempo

di

On

si è appena

I

ora

nell insiense

/

P

la

che

Si

l

for

e

n . Allora

prefisso

per

l,

q

2,

...,

e,,

si ha

visto, che

del

la funzinne

la restante

PE

I-

j

P

dell equazione

poiché

l affermazione

P,,

c

z

n- q .

per

con

vi è un altro

con

/ il più il più

J

numero

, PoP perché

valore

Si supponga

e sia

q

si denoti

q

contraddizione

34.10

rc 1

q, per

Covi

illustra

Cowr

di

zq

ciclo

34.6

P

P.

Usando

tutti

gli

i in

per

la relazione Per

n q.

cui

j

questa

dimostra

di tali

c

q

che PE

perciò

P,

si deve

Quindi

più

almeno

Poiché

in u

sia

vi sia

che valori.

intero

piccolo

in z qj

proprietà.

assurdo

per

grande

q è in

maggiore

q

di j.

grande

iI Lemma

per

avere

z

di Si ha 34.1.

j e cosi

j

R

il lemma.

ute-PREFIX-FUi4CTlON

0 nella tutte

lemma.

questo

linea

le q. Il seguente

m E-PaEFix-Fuwcviow

CQlCO1Q

Z

g.

C/

pCf

2 di CowvuvE-PacFix-Fur enow lemma

calcola

e il suo

corollario

cnrrettamente

z

l,

2,

IP1,

....

è certainente

q

usati

saranno per

per

Il

I1Cll ordine.

corretto,

poiché

dintCSlMl

C che

I.

q

è

di Cowvuvc-

z

34.6

P un

Sia

ainmorrizz sta parte

PE P,,

q se non

grande

Questa

L algoritmo calcolo

il costo

quanto

e un analisi

si dimostra

P

allora

j

j e

figura

La

del

di iterazioni

chiamata

è vera

q, e l affermazione

k.

che /-

scegliere

q.

la validità

u. Si dimostra

qualche

,

di

z q.

j è il più

j c

per

Ciò

q.

CowPUTE-PREFIX-Fe crto

La

u

P perché

Inoltre,

I di

n q

assurdo

per

P può

PE

potenziale.

1, cosi

altneno

m.

mostra

potenziale,

usando

O m,

limitato

calcolo

tutti

funziane

di

pattern

0, allora

q

tr

litnghezza

nt e sia

1 c rc

e

z la

tunzione

prèttsio

P.

per

Per

e

I, 2,

...,

m,

se

I .

q

di KMP-

On.

le occorrenze

elencare

fitnziøne

n q

termina

q

P .

intero

da

a Om. O, ni

invece continu,ndo

di

K si pu6

ridune

a niente,1ere

Dimostra-inue

il tempo

il tempo

di

P

e

della

i pretesasi

funzinnc

P che

ariano

l

Se

P .

Dal

lemma

rc q 0, 34.á,

ullora

P, /

allora.

P

e quinùi

1 C Ti

Per

q

2.3....,

in,

k . l c

z

si detmiice

q

il sottoiniienie

I j e Pl

l

Pq

P,,

P,

l ciltimo

ignorando

E,

c

z q

l

come

.

j

prefisso

sutTiisi

di

un

ù ti

prefissi

P,

Si i

j

I. c t

fg

1

tali

che

si

pu

eiten lirc

P

a

P,,

carattere 5I

l .

q

per

i .

E,,

possonn

z

che

prima

transitività

P,.

un

j.

può

ni esecuzione

la funzione

è grande

I

il ciclo

sempre o

pagare

al più

Poiché

finale

ogni

comincia

Si può

corrente

0 per

q quando

potenziale

9 è 01.

a F tac-ALwoitw ror - 4tcwt .v.

Correttezza

in

della

0, si ha i

Si mostra

di

3. Qu mdo

corrispondentemente

potenziale

stato

e la l-

Lemma

il valore

usando

preelaborazione

individuare

alle

la funzione

linea rc l-

l

linea

la funzione

Knuth-Mo vis-Pratt richiede

In confronto di

ciclo

il tempo

Przrtx-Fvxcno

MATCHER

q alla

I

di esecuzione

peggiore.

L algoritmo

analoga,

del

0 alla

Poiché del

nfeg

il tempo

di

però.

modifica

for.

iterazione

8 si increinenta

e poichè

iniziale

che

ciclo

che

potenziale

/ . Poiché

6 decrementando

linea

si mostra

il

valore

linea

del

anche

linea

un

altra

corpo

I8

assacia

rc l

di 1 ad ogni

Alla

ammortizzato

O rn

del

ivhile

tljl.

poiché

Si ha

L unica

esecuzione

Capitolo

poi hè

l affermazionezhe

giustifica

più

Om.

potenziale

q è incrementato

poiché

veda

si i

linea

mai

cioé

funzionale,

sequenza

34.6

i

su u. Per

c

q

esecuzione

dell algoritmo.

ogni

la

P, P .

allora

q,

induzione

Cowrat. TE-PREFlx-Ft scTtox

durante

composizione che

in con

Si dimostra

i s ti

Se

la

complicato.

più

analisi

di lunghezza

Dimostra ione.

n

diventare

della

è chiaro

P P, .

/,.

P,

Mediante

termini

dell itera -iene

Lemma

pattern

i c fi e

del

in

1, e dove

I

k

sarà

Analisi

i

34.5

P un

rc

z

comincia

,

0.

Sia

kk

c

rrfq

l

tc l-

1

then

9

n q ,...,n q

q,

m

while

6

z

è definito per

z q

do

10

tr q

mn q

0 -

rtfq ,

q,

dove

0

5

q

P

e oltinerc

uii

bluff-ics

ch

P,.

824

Capitolo

34

Corollario

34.7 linea

La Sia

P un

-

z q

di

pattern

lunghezza

m e sia

0

se

l max l-c

E,

z la funzione

P.

per

Per

2, 3...,

q

m,

alla

0,

E,

se

pretisso

E,

w0

linea

prima

della

cizio

344-6

12 è necessaria 6 dopo

segue

che,

se r

al lora

P

P,

1

q

r

quindi

I implica

Pr

Pq.

Dal

Lemma

altre

linea

a

di

valida

sulla

che

cr

T,,

dell Esercr

Pa

P

per

a

di Knuth-Morris-

deI1 algoritmo

Ft rrE-Am o vzow-M vcvER,

1

o

q

iI suggerimento

per

correttezza

a Pm

riferimento

possibile

L argomentazione

equivalentemente,

si è appena

come

poiché,

di FtsnE-At. towAloi-MwvcHER.

il comportamento

simula

un

di P.

6 rimane

oppure,

argomentazioni

correttezza

KMP-MATCHER

evitare

per occorrenza

della

Bzm,

Le

dalla

seguono

visto,

rc q ,

un

esecuzione

Z.

a c

trovata

a

6 m,

. Pratt

r

Se

in KMP-MwvcseR

è stata

successiva

qualunque

Dimostrazione.

che

34.6

I, allora Esercizi

r

1

Ma

max

I- e

l insieme

Se

r

Pl

massimizzato

0, non

di P,,

z q-1

vi è alcun allora

poiché

è proprio -1 q

k c

E,,

z

si dovrebbe

cosi cui

per

avere

che

r

si può

q

0.

l

max kc

estendere

E,

P .a

Pertanto,

P e

E,,

e E,

è non

ottenere

un

vuoto.

mente. alle

ora

completare

Nella

procedura

linee

il ciclo

4-9,

9. Le

linee

5-8

fanno

tutti

i valori

di / c

che

I è il più

grande

il valore

I

che

0. Ciò

Coi i

si che

valore

ne

nell insieme

completa

tale

uno

E,

valore

per

, cosi

di / non

la dimostrazione

di

q. Pk

che.

Il ciclo

dal

corollario

trovato,

5-6

a quel

34.7,

k

correttezza

linee

P qj

0 alle

ciclo

della

Si spieghi

34.4-3

dell algoritmo

che

5 q,Tfij

C

a q.

ricalcolato

Invece

di

Jo

necessario

quan

dalla

di

correttezza

necessaria La

di

la linea di

1 c z

sia

di

cerca

dimostrando

di

la

un

q

l elernentu

una

un

llllCQ

4

valore

a partire

realizzazione

si mostrerà Cl

q.

Si

dia

un

le occorrenze

determinare la stringa

come

migliorare

stringa

PT la

del

testo

P nel

pattern ni

di lunghezza

n che

la

T esaminando

è 1a concatenazione

di P e T .

tra

Si mostri

34.4-4

e a zq

na

è

non

alla

1CvIP-i I , n dove

con

12

linea

z

di n alla

le occorrenze

sostituendo

creava

ricorsivmnente,

è detinito

per

linea

l, 2, ...,

q

7 m,

dall equazione

della

il codice

alle

se

z q 0,

z qH

se

z q w0

e

P zlql 1 q H,

q

se

v q c0

e

Puq l

di

voita

á q,Tji ,

compreso

però, che

sebbene

E-AUTOh1ATON MATCHER

che

di si

6-9

fra

di

nsndificato

.

un

costituiscono

in che

è corretto

e si spieghi

determinare

se un

testo

sono

rotazioni

senso

queste

miglioramento.

è

simula

Si dia

34.4-5

sia

perché

un

ciclica

segue

poco

l algoritmo

perché

modifiche

valore

questo

KMP-MptcHER

vedrà

Si spieghi

assegna

KMP-M vcwcR

w Pq1

proce-

linee

F VITE-AUTOMATON MATCHER

memorizzato da rc. Una

rivisitata

che

Finn

segue

verificare

o

0 oppure

l

/

I c z

caso

qual

dall affermazione at termvzione.

quest

Quindi/ nel

è usata

che

Si

enn

cnme usa

elementi q

q inus ii1 o

segue.

di

z

eli in

q

sia

I C Pg q .

Pq di

E

CO

Ti. ll

C4C

P

k

CJ

1

con

I

che

5 q,

5 q,

Ti .

Ti

I

0

Allora

P ,tlQscurando Quindi,

C

il valore P,

I

in tempo

lineare

algoritmo

T . Per

stringa

di un altrà

per

are

esempio,

e c ar

T è una

rotazione

cicliche

l una

dell altra.

efficiente

di corrispondenza

P,,T i

richiedere

carattere

k

un algoritmo

Si dia

344-6

oppure

P

l ultimo

0 oppure

P .

uirc

LL

primo 7

i

di P

Le

decrescente.

Nel 6

c

q

ordine

OT o

denoti z-

elementi

/T 0

Si

l equivalenza

li

enumeru gli

ire tali.

usare

Per

volta.

prima

e aminai do cominci

di

funzione

q

l e n q,

in.

tra

teinpo oppure

O at Z . Pq

1

la funzione

calcolare

per

a un dato

he zssoii ito

strin

Suggerime

nto

pattern

si dimostri

di transizione P. che

8per

5 q,

a

l*automa dovrebbe

L algoritmo 8rq,

a

grande.

allora

se

c a.

l affermazione.

che

qmrc q

come

Ia correttezza

PTi

L affermazione per

in

si ha

di Cowvurv-PaEvtx-Ft.ictto .

Fieni-Auvow toi-M tcHfz.

di áe

P . che

álllQ

KMP-MATCHER

q.

detmizioni

perle

q

12 in KMP-MAtcHeR .

correttezza Ti J

6 q.

vista

In particolare,

CgUtVQIClltC

il comportamento

6

essere

può

FINITE-AUTOMATON-MATCHER.

KMP-MATCHER

di

è stretto.

il limite

KMP

KMP-51ATCHER

procedura

dura

ababbabbababbababbabb

pattern

dimensione

alla

superiore

n per

ql La

il

per

b.

a.

mostrare

come

funzione

assegnare

7-9

limite per

0 Correttezza

n

prefisso

è Z

for

linea

punto

si può

linee

un

esempio

2 e 3 quando

in virtù alle

1

del

linee

dia

Si

corretta-

iterazione alle

iterazione

cui

viene

della

di ogni

successiva

corretto

trova

calcola

è verificata

ad ogni

il valore

tinché

un

all inizio

i era

I diventi 1

Se

e rimane

funzione

0.

u E-PaEvx-Fvwcrtow

condizione

Questa

volta

*q

1 a z qj.

assegnato

q-1 .

k

la prima

per

che

CowPUTE-PREFIX-Fiscttoi,

si ha

inizia

la dimostrazione

la l alfabeto

quando

34.4-2

Si può

calcoli

Si

34.4-1

suffisso

linee Il

q

6-9

1 per

il

rio

I

nell ultil110 34.7.

-

linea

34.5

Boyer-Moore

Algoritmo

l iterazione r$ q .T i

l afferm izione finch

0 c .oroll

esegue

determinano use rt J

q c$ c ,pi

si

giustiiiciire

codice

l iterazione caso.

c quando per

viene

Se

il

più

cfticiente

per

pvttern

P

è

relativameiste

luiigo

e

l alfaheto

Z

trovai i CJSC

f/

È

algoritmo

per

la currisponclcnz

Ira

.,trin,,he.

è

ragionevolmente

34

Capitolo

tra

Comspondenza

BOYER-MOORE-MATCHER T.P,Z n E

2

m m

lei gth P

3

. m

COSIPLTE-LAST-OCCURRENCE-Fuscrto P,nr.Z

4

E-

5

sm0

6

whiles n

length

buon

discordante

carattere

1

suffisso

T w

z i

t

t

e

n

e

m

i

n

n

o

t

i

c

s

s

c

e

n

c

e

S

z

COMPUTE-Gooo-Sumtx-Fuxcrtoi P,m

i

t

t

h

a

t

h

a

n

c

e

t

h

a

c

e

a

7

m

dO

C

j

Ill

while

8 9

0 e P j

j

Ts

w

j

x

do j c j-l

10

t

t

i

n

e

s4

x

e

n

o

t

i

a

e

m

i

n

i

s

e

e

ifj 0

Il

then

12

s

13

Il

stampa

con

spostamento

b

s

$0

s c

else

appare

pattern

s s

max pg

Ts

j

jl -

A

misterioso

l aspetto

parte

ingenuo

di comspondenza

sostituire

l aggiornamento

di tra

il ey.

questo

stringhe.

di s alle

con

molto

r

i

t

t

e

n

x

e

n

o

t

i

c

s

di

semplici

commentare

le linee

incrementi

i

n

i

s

a

s

t

all algoritmo 53

si supponga

12-13

linee

somiglia

programma

Infatti.

w

come

e di

3-4

m

n

segue c

12

s

13

else

Il programma ingenuo n

n

Se

P1

Ts

sono

che

del

colpo solo euristica figura

del

iTs

con

un

mentre

il

determinanti caratteri

o senza

cnme ni

l euri tica l euriitica

operanti

del del

buon

d che

buon

posizione

carattere suAiiso

confrontare

iuffisso .

quantit, i

valida.

la map

ior

ctrin

he.

li

di saltare con

sono

di

cui

incrcn ento

di

in un

i nomi

di

4 presi i mi.

l irlgi ritsno

Beiyer-A1 irire

Qu iiulo s

posia

esiere

Boyer-Moore

in remcntarC di

g j.

iiu w

nel

illustrate

L algoritino

pro he uh

e che I.

di evitare

conosciute

discordante propone

di Boyer

sinistra

e indipendentemente.

unga

propone

l l restituisce

all algoritmo

euristiche,

I.

è necessariamente

per

permettono

l.....

ori n o

verso

cnnsentono

gli

in par ill .lo

una

dell al

non

la condi-

m.m

j

destru

al oritmo

testo. Queste euristica del

euristica saltare

che

spesso

che

testo

valore

un

precedente

ed

viste

il

8 verifica

h

de

ciascuno

e la linea

rimarchevoli

euristiche

del

discordante

sicurezza

discnrdanza. j .

due

linea

s valido

di stringhe

l altro

dove

j.

spostamento

di

dopn alla

conT s

con

12-13

eseguiva

discordanza.

ut a

usa

cosi

essere

uno

il confrnntatore

uno

comincia

caratteristiche

linee

molti

carattere Possono

34.11.

verifica

di

che Pj

il pattern

s alle e Moore

while

trovato

le uniche

cnme

6 considera

confrontando

confronta

invece

sono

l esame

incremenut

13 dopo

esso

che

euristiche

Queste

livello.

di Boyer lavoro

m

esattamente

linea

il ciclo

0. è stato

j

lo spostamento

L algoritmo

alla

s ed

I .. s

con

adesso

comincia

spostmnenti

termina

incrementa

j

che

di s. A questo

e Moore

1

si comporta

while

.. e

il ciclo

parte

s

modificato

1 possibili

il valore

I

s

il ciclo

zione

si

s

S di

L euristica

del

carattere

disconlante

ria

lo.q rxvtao entr

c/i 4.

stringhe

at

l algori o

esamina

Boyer-Moore

solo

una

frazione

1/m

di caratteri

gel

zzfp

pp

carattere

me comportamento a quello n

da

del

l euristica

appena più

mande

altrimenti

sia

l

affermazione

0.

Si

affatto

nel

PC j 1

considerare nella cosi

pattern,

k

tre

si

j

casi,

che

come

come

qualche j s di J

illustrato

nel

il carattere

incrementare

con

j,

Ts

successo,

34.12 a ,

può

per

m tale con

figura

funziona

w 7Is

z

s

segue.

gi

supponga

1

j

pz. $zz

Pk,

se

un

ta e

/ . Per

dimostrare

figur

3g.

no

o

om

j

è. nel

discordante

nella

fi

ura

a sinistra

Pa tern,

34.12 b , della

l occorrenza

posizione

P

k senza

alcuno

salt e

gi

questa

r

u

t

i

o

n

r

s

m

i

n

senza

saltare

d

I

s

v

o

l

u

t

i

o

n

zppzp

s

i

n

t

h

e

s

c

eden

c

a

i

n

h

s

i

t

t

x

a

a

t

m

e

n

t

o

f

t

x

a

a

t

m

s

n

t

a

f

i

n

i

s

a

e

n

c

II x

s

m

t

h

a

t

t

h

a

t

s

n

c

s

o

f

alcuno

a

s

n,

p

J

w

Q

spostamento

1

h

ma pá m

che

o

/ esiste,

pp

u d ,, .

più

cosi

j,

v

QfJppz

p.

ps di j

e

S

dove

discordante

successo

discordante

. .. .

gg

valido.

spostamento

j

confrgqig

discordaute

incrementare,

può

mostrato

come

la potenzacfeJ

carattere

nell intervallo

si devono

p

illustra

discordanza

una

trovato

k l indice

g

migliore

a destra.

sinistra

cenere.

avere

caso

nel

z

i

t

t

a

n

r

s

m

i

n

i

t

t

s

n

n

o

t.

i

a

e

s

a

e

n

c

e

.

Vali/g. S

is

ordante al

nella

figura

BR,er-Moore, in tutti

a destn

3g.

essenzialmente

ProPone

ori,mo

mento

ato

mo

con

j

q

di

/

j

Q

fecrensentare

l euristica

poiché

z

g

gel

buon

Qgg- ., s

, C

-.,

,, ,.

i casi.

w

Il semplice più

l euristiiade

a destra

più

di

CllC

fRCC18

euristica

buon

/J

gqf .,

E g,

gp

r

,

$f Q /p

n

o

t

i

e

s

m

i

n

i

s

c

f

1

a

e

c

a

s

a

s

n

c

a

s4 r

p,

e

g , Q/ g

jjj

gf

J ingj q

cara ierea

pQfQQQ

TS pr gpgggj

del

come

j- , tp

discordan e,

discordante

OI ltl110

d ll

derivante

y

carattere

d

1

a

a, per ogni Lafunzionegggg gy -q qgqg

emettere

del

RSSICllIGM

definisce

l espressione

detmizione,

questa

seoue

il carattere

nato0.

.e

èa

realizza

che

in maui appare

alloraaA Con

r emma

pro

a destra

i

p,

j

pz

gg

fjppg

f3

pf

g

b

byte

j

pp fppp

p

g

suffisso,

o

1

d

e

n

x

e

m

i

n

S COMPLTE

1

LAST-OiCURENCE-FVNCTION

for

a c

carattere

ogni

i

Z c

2

do

3

il a

forjm

4

do

5

0 i to

iLfP

return

il

il, QziùllC

Q

p pp

pi

p

Cicllál plOCCdllfD

COWIPUTE-LAST

OCCUREi CE

Fl

i1CTION

C

O Z

Ill .

ignt r /lo.

Euristica

del

huon

suAtsso

m

Q

j La Sl

BllCllC

. immctri.a Cllè

Q Riee

q q

g

g

g

.

,

, , ,,

,

j j

$

e

si

trova

COI1

pllC .

-. -

relazione llQ

SC

R

j

R

che

ILICCLY1O,

l1I

lll IX k

in1phcano

P

jj

Jl

5

34.7

7 s

c

Np lit

0

AS.

Q

A

J. C

C

dove

S

lit

j é

n.

I,.

ll j

illi r i

l

31

c

P

j

Pg

eitristicn

de1

htrc n

.ru/fi sn

dice

che

ii

Corrispondenza

Cioè,

è la quantità

yg

Ts

suffisso

a tutte

per

tutte La

le stringhe.

Si

ora

mòstra

Inoltre.

P

gg .

m

ora

riscrivere

Quindi. può

sia

s puo

P

poiché

funzione

avanzare dal

discorde

detta



calcolare

la

z tn

tutte

per

far

funzione

del

alcun

buon

w

fm ,

le j

P

vuota

è simile P.

si dimostra

P per

1 .. m

j

funzione

il pattern

per Anzitutto

allora P

pattern.

COMPUTE-GOOD-S

buon

nel La

la stringa

suffisso

suffisso.

j, si ha P,

carattere

del

tutte

buosr

ydel Se

si che

allineamento PE, per

funzione

le j, come segue. 1 .. m AP perqualunque

j

senza

nuovo

l,n

j

tutte

per

poiché

di cui

m le j.

come

Zm

m

j

Si

I .. s

definita

ben



minima

j

che

definizione

di n .

dall equazione

l C

2

P

reverse P

3

z

CowPUTE-PREFIX-Fuwcrioi P

4

forjc

COlwPli

Otoin do

for

6

max k

m

j

7

di ycome

Pj

condizione

l ultima

e

Pj

l

do j m

..

m

P.

tr mj

insieme

1.2....,m.

Per

tr

il che

c ime

r

e

può

di

u

k

P . o anche che

pertanto

k

di yf j

se PoP j

zm,

dalla

al di sotto

1 .. m . definizione

di m-

tr m .

di

Si può

zfmj

k

vuoto

assicura

P

Si osservi

che

dove

I

P j 1.. Si

l algoritmo

corispondente. u

grande

re

.. mj

P

implica

faccia

y, si definisce P

0 per

j

y

.z .

di

si

l

implicachein

jl

quest

affermazione

come

ha

P

valore

I ..m

j

P,,

1

allora

del

i

per

l

equùzione

r,,

j

max TI

mill

i,

qua-to

ulla

n zm

questo punto

j.

volta

u

n, v

caio

e

si

pui

che

notirncln

n

iecondo es minare

.

l

pm

I

di esecuzione

esecuzione

nel

Om

Z .

lm

jZf ,

è una

caso

l algoritmo

Tuttavia,

dell algoritmo

peggiore

dell equazio-

Boyer-Moore

iinpiega

l algoritnsu

è

ce-Fuiiaio

richiede

Rubin-Karp

in pratica

realizzazione

Cowrcvc-L s -OccuRaer

poiché

CQX1PUTE-Gooo-Si FFIX-FUNCTIO4

come

semplice

è Om.

tempo

tempoO ni

Boyer-iVloore

Oi

tempo Boyer-

e l algoritmo

convalidando è spesso

chiaramente

richiede

spostamento

ogni

il piii

usato.

e

345-l

I ,

l L/

di

é

pU

CYYifC

VllOtO.

procedura

per

calcolari

I

I .. in

*34.5-3

n

fornisca

un

a

esempio

e del che

e

y

il

per

usando

mostrare

per suffisso.

buon

P

pattern

che

e

0101101201

combinando

I algoritmo

solo

l eurislic s

della

procedura

la funzione

y

m

j j

max

I

y con 0

/-COI11C

del

le

euristiche

Boyer-Moore

buon

l alfabeto

del

carattere molto

comportarsi

puo

suftisso.

che

che

Oltre

assicurare

spostameisto. in

I f

L-

I

n e Pj

con

j j

tunziune

y

il

1 .. m J

nel

carattere

buon

discordante

è di

in pratica

P l,--m

j .

suftisso

saranno

che

lo stesso

del

testo.

Si

fattori

di

ripeti

discordanti

al prnssimo

c ratiere ntostri

del come

non

pattern

la

calcolare

Problemi

34-I

Corrispr nden.,a

Si

difilati ababab.

$

u ata

efticientemente.

Ira

strin,Ite

basata,cui

y.

l

è spesso

P, e

Pj

anche

y gar inliice

che

da

0itnplico

j

Che i curalteri

la fiinzione

COI111 lCerè

Boyer-Moore definita

y,

l,-in

34.8 . e I

miglioramento

sostituire .

di di

34.9

I

Si

Un

ni

signific

Z l

funzioni

2 .

l e cosi

p

la scetta

in

le

1.

discordante

f m

z

j

0.

meglio

Ja transitivitè

l atfermaziOllC

implica

j

34.5-2 P,

I .. I

m

per

calcolino

Z

Riscrivendo

j

contr addizione

dimo trh

e j Ill

n

p. contraddicendo

tn

I.

Si

che

P ,,

Pm

ha j

j,si

noti

l 1.

ha

..

I ..in P l-

P Questa

Pi I

ll

di /11

dalladetiniziane I

p p

P ,, ,

j

il che

j,

l

invii .111L

P I

1 .. m

si

Quindi,

1 .. nr

l,.l it,-tini7iUlle

I

z I.

p

si

eh m,quindi

1 .. n P,,

j

p

I .. ni

cile

rr

, ,-I

Pm

l -ni

n

tempo

tempo

che

definita.

m

j

si hm P ne

Poiché

Pj p

P

.. p

Pfj

D

riscrivere

Ir l il

dove

Inoltre

j, dove

di P .

,

implica

pertanto

34.8 ,

si . Uo atlcora

IC j ,

P

che

tale

possibile m

m

p

P I

..m 1 .. m

Il suo

O J

s valido.

pattern

l. 2.....

si afferma

è ben

l m.

Poiché

di P piuttosto che Zen - I- - j, si nttiene

si ha I- l ,

p

segue. che

COl1PLYE-GOOD-SUFFIX-FUNCTION

procedura

34.9 .

iXIoore

l inverso

r

quest affermazione

equivalentemente,

p in-j.

che

y

Esercizi

che

e, pertanto.

ora

P ni-p 1

ave

Usane

A

I

Pii

rande si quid

Anche

o, in termini

iichég

il più

Si supponga

j.

implica

Infine.

j.

POP,

1 .. m

j

non

m

ni

I

j p ch.

vedere

4 AP,

Sostituendo

p.

Per

m

equazione

quest

tune

p, tale

m

z

Quindi.

La

progressi.

P ome P in

i

v I

l

g j

.

la definizione

Cioè.

P

possibile

I

Boyer-Moore per

z f

z.

34.8

dimo tra

return

ne

j

che

l espressione

pret sso

più

e

z lj l

then

10

dunque

ri-j,

mal

Ma

segue

eccome

m

.

1 .. mJ

il valore

la det nizione

i taleche

grande

k è il valore

Se

P,. P ridurre

ulteriormente

la funzione

è il più

che

essere

può

semplificare

P e z

se P j

ram

in

if g j

Il

max

secondo

le j

non

possibilità

i r

yf j

P vale

implica

ulteriormente

riscrivere

Il

1 .. m

possibilità ultima

Quest

g

in

k

1 to

9

La

P

rc m

mm

g j

I m

8 g

TE-PREFLX-FUNCTlON P

347 .

le j.

la definizione

831

stringhe

UFF -FUNCTIOs P.m

l

5

tra

C ill

y Si

la dice

c nc Itcn l/iotlc che

un,.t.,trin,,,

cle

I triilg i c

Z.

i h,

con

l .at ne

cc ci

sli .èi,l ripcliric,ne

ir ne

i Volte.

Pcl r,c.v

cicillpio. y

. per

ab qualche

I

Corrispondenza

stringai

e

Z*

ripetizione

e qualche

r

0. Si denoti

con

il più

pv

r.

r tale

grande

che

x abbia

fattore

di

c.

Si deduca 01

a.

Si dia

h.

algoritmo

per

i

Per

qualunque

1, 2,

....

rn,

allora

m.

il valore che

.. m ,

sia

un pattern dell algoritmo

definito

p* P dall

di p P

P1

.. m

e calcoli

d.

p P,.

max,

di tutte

,

Si dimostri

pP.

le stringhe

la comspondenza

per

P

pattern

come

insieme

binarie

che

in un

testo

T1

tra

.. n

in

stringhe

tempo

trova

Note

m.

5 può

essere

PRAM che

Si mostri

come su una

automa

correttamente

O p* P n

Si dimostri

O lgn

di lunghezza

è 01.

algoritmo

del

input

di esecuzione

casualmente

il seguente

come

prenda

e.

P1

medio

le.occorrenze

che

è il tempo

Qual

P è scelto

Si deduca tutte

efficiente

pattern

il pattern

se

e.

un

che

su una

calcolata

CREW.

8

trovare

tutte

PRAM

quanti

dove

q ,

tra

iniziale

di un patte

Si assuma

che

tabell sono

processori

è lo stato

q

le occorrenze

CREW.

di comspondenza

dal la rappresentazione

Si analizzi

i/ T

tra

sia

833

di B, e 6, in tempo

necessari

in termini

di

Q f.

di M.

in un

il pattern

are

stringhe

testo

di lunghezza

fornito

nella

n in tempo

forma

del

relativo

stringhe.

al capitolo

REPETtTION-MATCHER P,T 1

m m

La

lehgth P

relazione

è discussa 2

n

3

length TJ

k

I p P

0

interessante

algoritmo

deterministico

9

ivhile

solo

Ol

a quello

s

do

n

m

if T s

q1

qmq 1 m

ifq

then if q

m oppure then

solo

34-2

max 1.

è dovuto un

memoria

assuma

OI

oltre

insieme

un

per

di stati

.. n .

i q/l

I

stato

stringa

su

si abbia

8, deduca

che fq

5, B 5, q

che

spostamento

s

un

per

è di usare

x di input,

calcolatore

finale 1,2,

il calcolo

dove

ill

termina

o denota

di per

...,

di

idee,

queste tempo

lineare

essi

che

usa

parallelo

stringhe

automa

si definisce

x. allora

8, 5 ,

i

stringhe

P e T.

tra un

notevolmente

tra

per

di sta o

d T

l input

Estendendo

corrispondenza

pnttern p la funzione

strategia

q e legge

Si dimostri

q

richiesta

30.1.2. qualunque

con

1

e Seiferas.

stringhe

della

calcolare

La

prefisso.

a quella

dato Sia

g. Si desidera

c P

la corrispondenza

per

tra

il problema

che

appare

pattern 1

a Galil

algoritmo

Corrispondenza consideri

q

0

algoritmo ottenuto

s

Il

stampa

Ts

s m q c

hannn

di ogni

P

I

q

then

Questo

Si

da

n

un

calcolatore tra

k1. Si supponga cioè

parallelo

la funzione i elio

su

corrispondenza

dei

8, aiuto

la composizione

che

si desidera

descritto

prefissi

g

il testo

calcolare

g

tale

che

Si

paralleIo. stringhe

M

con

di input

sia

lo stato

finale

al paragrafo

se M comincia

5, q . funzinnale

.

è un operazione

associativa.

j j .j

spazio

oltre

Knuth

L algoritmo

s

12

g.

lavoro.

5

13

5,

del

Boyer-Moore

I l

a.

i risultati l algoritmo

10

dallo

indipendentemente

corrispondenza

e Ullman

0

9

Per

inventato

loro

della

Hopcroft

q

7

Tl

il problema

Aho,

4

8

Si

tra da

è dovuto

f4j.

tra

e Pratt

di

richiesto

e Moore

per

i quali

è stato

di cnmspondenza memorizzare

32 .

e la teoria

degli

automi

Knuth-Morris-Pratt

e da Moms,

Rabin-Karp a Boyer

stringhe

L algoritmo

perb

proposto Qalil tra

pubblicarono

da

Rabin

e Sei feras

stringhe il pattern

finiti è stato

125j

78

di tempo e il testo.

insieme

e Karp

lineare

e

117

forniscono che

un usa

GCOIBCf

718

La

COIBpUltBXlOIlBIC

computazionale

geometria

problemi nei

campi,

tra

di

in senso se

esempio

l inviluppo

racchiude

tale

con

un

molto

ogni

maggior

o un

il

insieme

di

segmenti,

a una

domanda

nuovo

di punti

35.2

Il

paragrafo

calcolano

l in

On

viluppo

che

Intme,

al paragrafo

trovare

h

dei

Per

oggetto

più

di

sugli

lj

Cp

di

un per

conte

per

convesso

poligono

di

che

un

vertici

tali

come

nell ordine

operare

in tre

in

.l ,

due

di punti

è rappresentato

cui

compaiono

credere

sul

o anche

in spazi

possono

essere

soluzioni

si puo

però,

su

insieme

dimensioni,

e le loro

problemi

dimensioni

un

P di n vertici

poligono presi

puo

in due

computazionale

geometria

una

buona

rispondere

segnanti una

tecnica

lpi

che

pii

insieme

frirnisce vicini

dove un

il

sono

oritmi

di

che

h i

in u

vi

li n punti,

di Gr ihans.

O n/r . si

al

serie

oritnio insieme

se due

cioè

di

segmenti

utilizzata tra

senso

per

sviluppare

un

insieme

convesso

piccolo O i

l n.

vertici

dell

invilupp converso.

poligono

in tempo

è

uni ualunqùe

pi ntc g

.i

y,

t ili

e l algoritmo

On

piano.

chcperqu lcl1e

n

che

segmenti

l

un di

rotazionale

il più

sul

girare

si intersecano.

tempn

divide-et-impera di u punti

se un segmento

in quale

intersezioni rastrellamento

impiega

il numero

su segmenti

un estremo

e verificare rastrellamento se

due

domande

condivide

chiamata

di un

35.4

cui

determina

convesso l algoritmo

con

consecutivi,

fnrnisce

punti

a semplici

un altro

á

X.

oggetti

oggetti.

.i

f

su

o i vertici

geometrico,

piccolo

è rappresentato

esempio. suoi

ma

Anche

richiede-.tempn

di

R.

35.3

purti

cnppia

algoritmi in input

dCi

come

presenta

segmenti.

Jarvis.

y s p

due

tempo

tali

alcuni oggetto

o antiorario

si attraversano

Proprietà

altre,

risposta

un

integrati

di un problema

computazionale.

orario

in

35.1

un

di dimensioni.

1 mostra

35.

contiene

insieme

visualizzare.

algoritmo

che

con

di

una

computazionale

di geometria

Il paragrafo

interseca

p,...,

numero

in senso

quando

è spesso

er

p,,

geometria

da

I para rafo

L output

moderne.

di circuiti

di

insieme

risolvere

per

matematica

L input

descrizione

o un

punti,

algoritmi

e statistica.

una

di

studia e nella

progettazione

calcolatore,

tipicamente

Ogni

y

p.

difficili

segue

cibernetica. dal

insieme

vedranno

piano.

p,

di P. La

di tecniche

si

si

nel

sequenza

perimetro

è

che

ingegneria

insieme .

cioè

, dove

p

robotica,

convesso

capitolo,

questo

nell

assistita

un

linea

qualche

dimensioni,

dalla

di grafica,

antiorario.

esempio

dell informatica

applicazioni

progettazione

esempio

per

poligono

trova

computazionale

geometria

geometrici,

In

altri,

gli scala.

grandissiina

è la branca

Essa

geometrici.

nncll intirvallo

1gn

di

per

f

f /ff qg nente.

compreso

tra

tra pe

I ordinamento allora

0,

l origine

0,

In quesw

paragrafo,

si può

1

a y..

Si scrive

anche

punto

sulla

retta

che

passa

per

i due

punti.

Dati

due

punti

distinti

cònvesse

di combinazioni

g j insieme fa volta

m,

è un qualunque

p,

oppureessere

p

p

i

e y,

a v,

l

di p,

e p,.

p, è importante trattare

p, e p. sono e si parla

il segmento

si analizzeranno

p,

deni

con p, p

del

i

z

p,.

coincidere

segmento

orientato

come

f

i1 segmento

può

p, e p estremi

p,p,

Qp/

p3

e pie

di segmento

orientato

le seguenti

che

Pp

p,p, . Qe p, è

pop,

vettore

p,.

rispetto

all

questioni x

0,0 due

Dati

.

comune

ne

stn

orientati

e p p,,

p p,

segue

pp,

in senso

orario

pop,

estremo

p

due

Dati

p.

segmenti

segmenti punto

e p,p se

p,p,

si attraversano

Figura

e p,p si

p,p,

effettua

una

svolta

a sini-

35.1

a

ia

grigio

regione

p, contiene

I se

3.

mentip,p, restrizioni

rispondere

Si pui la grandezza sottraziani.

intersecano

calcola

l incIinazione

esempio,

il

l equazione

questo

di intersezione .

che

entrambe

Sui

to sensibile

calcolatori

alla

la divisione,

evi

Non

retta

nella

l asse

reali,

sorprendere

impiegati di

determinare

per

nix

trova

usa

i segmenti

sono

se f

il punto

i segmenti



p,

quasi

paralleli,

Il metodo

y x

Se questo

essere

incrociati

i venori

interpretato

p

come

i . .,

p. incrociato

p,e

y,

come

è alla

base

il punto

questo

metodo

la superficie Una

y. .

degli

algoritmi

del

di

una

I a.

che

Il prodotto formato

parallelogramma

definizione

il determinante

segnsenti

per

35.

equivulente,

ma

utile,

più

punti

xiP z

p,

00

X se

p,i

presentati. p, x p, 0,

descrive

0.

p,.

può

è ne aii

senso

vo,

t0

orario

allorag ,

CBSO caso

g tO

pfQ4WQ

superficie

senso

segue

pop,

in comune

del

parallelogrnmrna.

orario.

un

La

segmento

si effettua

p,

La

b

regione

in

orientato

scuro

grigio

una

lj

traslazione

Ij .doveXj

calcolare

X

il prodotto

XQ

incrociato

.l CV

X

po

h positivo,

allora

in senso

p, p,

semplicemente p,

si può

p analogamente.

XO CV2

.ll

in senso

.l

allora

p ,

segue

in senso

pop,

orario.

se è negativo

antiorario.

svolta

a sinistra

nel un

gira

destra.

se

dato

o a destra

Un

Verifica

Un

angolo

cio

prodotto incrociato

dell intersezione

p,.

l angolo. orientato

si calcola

allora

prodotto

Wp p,

calcolare

far

segmenti

tra

segnaenti

Come

in senso

incrociato

segue

consecutivi

due

effettuano

tnetodo

per

nella

in senso

indica

e p, p,

consentono

mostrato

un che

una

35.2.

i . segmento

p p pertanto

si effettua

orientamento

orario

i punti

p ,, g , e p,

il prodotto una

e una

sono

a

controlla

si

Se

p,-p .

in

rispondere

o antiorario x

svolta

determinare di

figura

orario p,-p

antiorario

a 0 significa

un

incrociati

incrociato

positivo

uguale

tra

I prodotti

p p.

p p,

si vuole

il prodotto segue

p p,

consecutivi

Equivalentemente,

p,.

il segmento

è negativo, di p,.

se due

punto

senza

Per

p p,.

a sinistra

il prodotto

è decidere

problema

domanda

incrociato

matrice .

in

posto

incrociato

B

la in

svolta svolta

a

eolline ri.

segnse tti

j P,-

.

EffQO DCC

p

orientato

p,

della

senso

e

p.,

I Jp

il prodotto

e pè

antiorario.

estremo

incrociato

o a destn

orientato

Di

positivo,

p seguono

paragrafo,

pz X pi Se

po

semplicemente

saranno

incrociato dai

p,

Determinazione

ac *

p,xp,

ertori che

senso

segmento

al loro

p,p,

Il prossimo

nel 1a figura

p mostrati

un

prodotto

segue

esso

quale

di prodotti

it

p

si definisce

ye

-p,

questa Si considerino

vettori

rette.

trovare

in questo

è

ni

delle

I

si

segmento

se

di

segmenti

di intersezione per

funzioni a errori

due

ogni

per

la divisione

di divisione.

di

e sottoposte

incrociati

Il calcolo

seguono

relativamente

e,,

addizioni.

accurato.

più

determinare

a sinistra Prodotti

clre

dei

contiene

inmodochep diventil origine.Sesidenotaconp,-p ilvettore

poiché

usano

divisione

costose

delle ,

quando

dovrebbe



forma

dell operazione

è molto

non

i metodi

c è necessità

su entrambi

precisione

il che

Inoltre

computazionalmente banale metodo

con

si trova

punto

01,

è Ol.

della

e b è l intersezione

e controllasse

in tempo

domanda

e confronti.

operazioni Per

r ettori

orario

domanda

di ogni

moltiplicazioni

arrotoisJamento.

dati.

punti

ad ogni

trigonometriche.

è mol

sui

dell input

incroriato

chiaro

intersecano Per

vi sono

Non

ep p si

/l prodotto

è in

iI vettori VCLtOll

rispetto senso

SOflQ sor

a

p,

relativamente

antinrwrio

COlllltCdll.,

j

all.ori ,in

rispetto

a p,.

OflClll,l I

La

Il ,ll.,l

j

ti ùra

StC i4,.l

l

tice

i

è un

concetto

4

rrigime

. tO

I

.I .A

P

e ente

come

il valore.r,

i,

-, -, ,

,C, .,

C ..

J

p

in

alto

a

destrdp .v..s , .

Jove.lj

Lj lllin .l

X

l llllll 4 j

l

111 IX lf

.l

l.

838

-

35

Capitolo

PE

PE

O IQI10

p

-PE

pp

P

pi X p2- pi

p

p

Pp

Pp

a

PE

Pp

b

Pg

Pp

PE

PE

P

P 35.2

ns a

p, p,egerrua o o ai tiorarto senso

del

Utili -o

svolta

il segmento

orario.

la

prodotto

incrociato

ne1

p,.

prrnro

orientaro

svolra

derernrirtare

per

Si

conrrolla Se

a

p ,,

se è in

come

il segmento

senso

i segmenti

orienrato

antiorario,

cosrsecurivi in senso

pei segue

1a svolta

e

pp,

è a sinistra.

l

0

Pp

p

Figura

u.-P

v,-u,

P antiorario

b

a

orario Se

b

è in

è a destra.

p

-p,

x p,

Pi PE

p 3

p

0

pq-p x P,-P,

Pp p,,

e

p,

p,,

si intersecano

p.,

.r, n, x .z, n. p,

x,

se e solo

se

la congiunzione

Pg

pe

y, A i z

Py -u,

0

n,- ,l

P.-Pi

p,-P, 1

è vera.

I rettangoli

devono

se

i rettangoli

determinano rettangoli Il secondo inforca da un si dice

determinare

che

usare

p,

situazioni sono

caso

questo

di questo

collineari

di rifiuto

zero,

p

ma

nulla,

allora

p,p,,

tipo

J j/ 3

ha

lunghezza x

cioè

se

p,

due

I primi

confronti

due

confronti

determinano

p,

Si

ricordi

trova

sulla

nella

largura

limite

mostrato

34.3 c

nella

coincidono. di rifiuto

i segnienti

si

e d.

figura

si verifica

limite

se uno

contiene

35.3 e ,

se uno

dei

Se

entrambi

immediato.

Se

intersecann

se e solo

un

p.

segmenti

è escluso

dal

controllo

se

Piuttosto

si

ogni

sostituirà

determinare

che

dei

i segmenti

35.

E-1

hannv lunghezza

L ultimo

paragrato

paragrafo

35.3,

si dovrh

ordinare

un

origine.

Come

richiesto

d ill E ercizio

una

gli

data

RR-alberi

per

mantciscre

con

si intersecano

codice

nel

una

l RB-albero

per

in

incrociati.

prodotti

da

modo

si trova

verticale

retta

data

dimostri

p,

se ue

Si

scriva

ai

loro

x p,

se p,

che

all origine in senso

antiorario

e che

0

il vettore

allora

è positivo. 0.

se questo

segue

p,

in senin

orario

p.

allora

è negativo.

incrociato

prodotto

p,.

incrociato

35.1 2

lo

a

ri petto

polari tempo

si

1gn

On

unu

ordinare

per

pseudocodice

angnli

un

datti

uiinc

sequenza pei.p...

punto

i prodotti

p La

origine.

p di

incrociati

per

ii punti

di

in

base

dovrebhe

procedura

li

confrontare

.n

oli.

incrociati

prodotti

cnpitoln

questo

chiavi, dei

esempio

per

il prodotto

Si

relativamente

35.1-3 di

che

segmenti

delle

il calcolo

con

Esercizi

è zero.

applicazioni

valori

espliciti chiavi

tra

due

tra

ano.

mantenere

confronto

qua1e

intersec

l altro.

sopra

Due

p,p,.

hanno

intersecano.

si

non

è uguale

prodotti

se mentn.

delimitanti

p,

i àue

i segmenti snlo

x

in cui

o entrambi

è

Se

la direzione p,

il segmento

Il caso

è di

b,

a p,p,.

p,

rettangoli

loro

e

rispetto

prodotti

il

inforca

p p,

determinare

dei

che

se passano

3á.3 a

opposte

a

allora

l altro.

il segmento t gura

si verifica

retta

retta.

se e solo

è possibile

p, si troi

sulla

contenente

nella

i segni

se il punto

retta

se

direzioni

che se

cnndizione

estremi

allora

11Qnno

Una

il controllo

determinare

segmento

richiedere

Altre

c

d

c i

se

se ogni

si trovano

p,

1a retta

mostrato

e p si mostrate

i due

C p jpp

una

Se po

si intersecano

per come

decide

inforca

inforca

contrnllare

condizione

zero,

p,

retta.

basta

si intersecano, Una

è sufficiente

p,

idea.

L

la

sono

non

immediato.

lunghezza

tra

altri

segmenti

incrociati

p,.

inforca

uno

lato.

altro

segmento

ogni

prodotti p,e

p,p,

dall Due

i prodotti incrociati, x p, -p, sono diversi.

In

dimensioni.

si intersecano

segmento

ed

orientati

il segmento

gli

segmenti

la retta.

con

e p -p,

Un

si trova

immediato

se i segmenti

allora

relativa

l altro.

i punti

.r,

le

1gU

contiene

dei

in

se due

e il punto

il metodo

entrambe

su

intersecano

inforca

rifiuto

determinare

a 0.

che retta

contenente

retta

cosi.

per

il segmento del

Si puo la

in y.

stadio

della

controllo

si

si intersecano

la retta

lato

intersecarsi

altri

prc icnter i siime

l urdil amcnt i

è5.

verti .il

utilizzi

in base

eli punti l-2.

di

dei ai loro

i prodntti

in

insielllc

incrociati.

prodotti angoli

polari

incwciati

di

ic mcnti

Si

n1ostri

in

un

Il

professor

coee

in

determin,re

insieme

di

Al

n

punti

tenlpu

ri.,-petto,.i 35.

1-4

essere

possono

he

tl in

An uneisen

il

pr ipo c

se

0 -ig,l della

elementi

gli

tripla

seguente

tripla

perqua1Che iono

di

scelti

punti

collineari.

metodo

per

ùetermin ire

e

una

i

deità

Itril11Cilti.

il

riiutt ito

i

ni . Si

moitl i

che

malgr i lo

quito

mctoclu

840

impieghi

tempo

metodo

35.

E-5

Dato

un

- x,

y

che

punto p, x, x e

l-

stesso.

p,

destro

lineare,

in modo

come

interseca

due

segmenti

se

Un

modo

modifichi

di punti

a destra

se un

dato

p,

di p ,compf250

raggio

il problema

il

lineare.

l.insieme

stanno

Ol

riducendo

p, p,

di p è

che

Si

in tempo

destro

di punti in tempo

segmento

corretti.

corretta

orizzontale

l insieme

determinare

un

risultati

produce la risposta

il raggio CIOè

1p ,

Si mostri

sempre sempre

x y, ,

di p,

nare

non

produca

orizzontale

a quello

r

necessariamente il raggio

sul

di un

poligono

Assicurarsi

che

l algoritmo

e quando

il raggio

Si

mostri

come

sia

in

dell intersezione

Verifica

come

in tempo

calcolare

a un

tempo

8n

la

di una

non che

stesso

p

35.4

non

un

presenta

paragrafo

algoritmo

nenti ad un insieme di segmenti rastrell amento che è comune esercizi

richiectn

dagli

di esso.

possono

se

esi- te

b,

b

fine

richiede

On

1gn .

non

tempo

paragrafo,

risolvere

per

tempo

altri dove

di

un

in un

retta

nel

caso

le

peggiore

una

tecnica

l insieme

attraver.,-o dello

una

oggetti

eometrici,

relmir ni

tra

essi. dei

gli estrens1 volta

ogni

di oggetti

attraverso

spazio

x, è trattatacome

che

immaginaria

cui

conosciuta Inoltre,

dati.

intersezioni.

la retta

solito

tempo.

inserendoli

una

ne ll ordine un

detta

solito

torte

rerta

da

in

una

pertanto

ordinare

punti

Per

più

precisi

essere segmenti

la stessa ,

a

L al oritmo

per

ipotesi

verti le. solo

in questo

di

dati

segmenti

da s ini straadestra

COll1c . l

determinare

COlllpUI ll

i assume 35.2-8

lOll llC

coppiaqualsiasi

In primo

Iw o

L Esercizio

J

se una

C

che

richieùe

ldl l

lunato,

La

caso

35.2-1.

diverso

in

un

dir umi .

e controlla

non di

dimostraziOilè

di

esiitano

clcserivere

Cl Ila

tre

se

una

Ol

scelti

nessun menti

procedura

O

CClfl

passa

verticali.

alcun

con

sono

invertiti

attraverso

la

si

ha

,

a

c.

tnostrari.

quelli e

regio e

ha

Si

a tra

segmento

,

f ma

. e.

f

ha

grigia

nel

sao

e sfruttando

un

le

CllCi7 l.

tra

i.

segmento che che

punto

che

non

Le

edace

linee

tre

verticale

rispetto

i se

viene

cntraito di

alle

con totale

ed

le loro

escono

stesso

a

c,

aliro

segmento.

veda

il paragrafo può

es ere Un

dall ordinzmento. con

incontra

il suo

destro.

estremo

di

l intersezione

attraverso

alla Si noti deve

punto.

sinistra che.

e alla

poiché

esistere

due totale

nell ordinamento

posizioni

e.

di s, con

l ordine

ii

rispettivamente

si ha e ,. fe f

si

Pero

in x.

confrontabili

le relazioni

alcun

li

ascissa.x

intersezione

si hanno

che

Si dice con

s, sono

Geli

alta

rastrellamento

passa

nelln

si intersecano

se s,e

ordinamento

il siio

35.4 b ,

e ed fe

segmenti che

retta

i e w sono

di rastrellamento

segmenti

un

incontrato

figura

è più

rastrellamento

rastrellamento

di

,. s,.

esempio,

per

menti la

quando

nella

dei

di

verticale

è ecinfrnntabile

impone

si intersecano.

non

s,

in

35.4 a .

retta

pniché

retta

c si scrive

d non

,

quando

la

di intersezione vi siano

figura

la

intersecano

è mostrato

Come

che

Si possono

punto.

destra

si assume

qualche

retta

consider i intersezi ine

nell ordinamento

tOt llC.

i interseca. in input.ii t

ii intersecano turioni

e ne

s, in.v,

Il segmento

di.v,

s, e s,che

di rastrellamento

la retta

c.

quando

solo

di rastrellamento

di rastrellamento

se la retta

s, è sopra

Nella

diversi

sinistro

invertite.

sono

che

segmenti

due

nell ordinamento

accade

retta

in un

input

di

segmento

qualunque

la interseca

una

in.r

la relazione che

entra

del

si considerino

c. e b

valori

per

intersecano

con froir1abili

qualsiasi,

segmenti

per ordinare

,

verticali.

verticale,

intersezione.

di s, con

segmenti

Cosa

dimensione

paragrafo

se e iste

segnsenti, che

rastrellantenta

di

ordina ne tti che

segmenti

siano

che

di

Si dice

c, a

segmento

pasca

la dimensione

un metodo

di questo

si assume

i lr ro esenyi

di rastrellamento

di rastrellamento.

un.r sui

vertice.

di semplificazione.

In secondo

p. nro.

retta

b. I

grigio

fa due

entrambi.

in x e l intersezione

á.2

rastrellai reato,

sono

come

vi

non

i segmenti

y dei

rea solo

intersezioni

a destra.

fornisce

struttura tra

isttersecano, per

retta

coordinate

Dato

verit

Esso

le

di

sinistra

si muove,

1iitee

è confrontabile

consecutivi.

f

che

data

come

variazioni

Dall Esercizio

trovare

J l rastrellamento

l intersezione

per

segmenti

incontra

di

di rastrellamento del

L algoritmo

verticale,

dati,

geometrici

dimensione di

retta

arie

per d non

segmenti

assume

si

estremo una

di

intersechi

interseca

di n segmenti. lamentato,

e ed f si

e ed

Ordinamento

computazionale.

di segmenti

per

apparte-

o semplici

di geometria

problemi

seginenti

Il segmento

rastrellamenro

di totale

Poiché

poligono

qualsiasi

algoritmo

questo

tutte

segmenti

computazionale.

n è il numero

restituisce

Qn

usa

tra c.

c e b

i segmenti

Quando

g alsiasi

di segmenti

se due

di geometria

,

c, a

35.1-5.

il perimetro

dell area

qualsiasi

L algoritmo

algoritmi

di questo

inteqezione

qualche

rastref

Ne

tuni

si intersecano.

L ordinanreirto

,

b

poligono.

superficie

determinare

per

a molti

usati

impiega

l algnritnao insiem

alla

essere

L al oritmo

W

si trova

convesso.

coppia

,

a

ordiiiamento

p,

l Esercizio

interseca

del

che

se un punto

si usi

lato

necessariamente

ma

On

il raggio

P,

poligono

questi Questa

V

b

di p , e controllare

di volte,

Suggerimenro quando

di un

raggio

dispari

corretto

non

interno

qualunque

si sovrappone

ma

all

di P un numero

P di n vertici.

calcolare

di n vertici,

semplice

35.2

Si mostri

perimetro.

p , si trova

punto

è di considerare

il perimetro

all interno

vertice

35.1-7

se un

convesso,

intersechi

si trovi

u

si intersecano.

determinare

per

r

di determi-

Figura

35.1-6

841

computazionale

Geometria

35

Capitolo

in un anc he

1t.

dilla

totale figura

35A b .

,.

retta

Qualsiasi come

pCf

di rastrellamento

rsCtllpicl

. ha

e ed

che

passi

f consecutivi

attraverso nel

suo

la regione nrdinamentn

in

35

Capitolo

Spostamento

della

L algoritmo 1.

retta

della

retta

Il prospetto

detta

alcuni

fornisce

insiemi

di dati

la relazione

tra

oggetti

gli

intersecati

dalla

di arresto

nel

sulle

da

sinistra

di rastrellamento consecutivi

stato

della

seguenti

seguito,

ordinate

rastrellamento.

stato

della

da sinistra

a destra.

di rastrellamento

che a

di tali

Ognuna

retta

dall Esercizio

dei

a

Si ordinano destra. incontrato

quando

viene

a b

è

posizioni

a c b

si verificano

d a c b

di

un estremo il suo

è un

staticamente,

tempo

estremo

incrementando

35.á

Figura

basandosi

ogni

particolare

segmenti

segmento

nello

sinistro

e si cancella

estremo

destro.

si controlla

della

due

Quando

totale

T per

cui

if p è l estremo

10

segmenti

il segmento

s in T.

DEt.Ete T.s

cancella

il segmento

s da

richieste

le

immediatamente

sopra

il segmento

s in T.

Becoiv Ts

restituisce

ilcegmento

immediatamente

sono

il segmento

s in T.

n segmenti

usando

O lpi

incrociati

prodotti

si puo

RB-alberi.

gli

il confronto

prevedono

cizio

di input,

tra

che

Si chiavi.

eseguire

ricorda

ognuna

che

le

operazioni

cooperazioni

costituire

Si possono

determinano

delle

l ordinamento

sugli

RB-alberi

i confronti relativo

tra

di due

al

chiavi

con

segmenti

i

l Capitolo

l intersezione

per

tra

se

uente

algoritmo TRAE

booleano

se

L ordinumento

1

contronti

tra l Eser-

rs-1 1

coppia Tè

un

figur

La

di

qualsiasi

re lizzato

con

5

se.,nlenti

un

RH-

di

n

in

restituendo

segmenti. 5

si

interseca.

il

s entrambi

esistono

interseca

Bat.oiv T,s

estremi

dei

i

con

punti

atro

segmenti

sini tra

da

ordinata

più

un

del se

nseato

2

ciclo

fnr s.

alla

che a

rispetto alle linea

linee 5

3ii

a

dei le

lo

punti

situazioni

tinca

2

puo

a

inizializza

1

si

di

arresto

linea

Alla prospetto enclo

e riioh noti

Si

bassa.

il

determina

si

a destra

estremi

gli

iterazione di

linea

Alla

totale.

dell algoritmo.

l esecuzione

illustra

35.é

l*ordinamento

sin

illt Cllle

S

t- csc

return

leisicvgrsticamente

segmenti

input

s Cl llltCtSCCél

inserettdn

ambigue

i 2n prima

ordinando

eseguita

essere

vuoto

ordinando

. .y . l i coitsidera iune

un

punto

di

arrectop. totale

s zll ordinamento

Se

y

e elle

è l estrel110 linee

6-7

è

i alori.

r.,lise,ltrimenti.

Ibero,

cvsrcl S

T -P li

ordin e 3

una

totale

Ax1 -Svciwvx

in

prende

arresto

tour.

return

then

Ogni Il

di

llfCP C.

14

35.2- -

Algoritmo

punto il iè glt1c

è cai ce/Inrc

DELETE T.s

in tempo

veda

spwtdente

il eorri

cui

qnando

s

C i1 itC

e Be.oa Tp

e Asovc Ts 10

precedenti

i

arrivata

interseca

segmento

di un

if Aaovr T.s

then

ll Se vi sono

rasrrel/a-

di

mea

destro

if p è I estremo

8

ed

esiste

BELOD T.A

return

then

9 il segmento

for

ciclo

segmento

di un

sinistro

oppure

T.

restituisce

cfel

fine

d e b vieirc

segme iri

i. t Avo c T,c

6

7

AsovE Ts .

retta

IisrRr T,s

then

j inserisee

è la

trntteggiata

di

operazioni

IvseRv T.s .

T c Ila

rourle dei

L iirrerse-ir ne

5 sono

retta

Ogni

Ass -Ssciieits-IiveasEcT.

della

se si intersecano.

ordinamento

di

è l ordincvnento

rasrrellahtento

retta stato

dallo

iodate

esecu

L

di

l ascissa

stato

e d b

e d c b

eseguito.

è anali .-aro.

totale,

rastrellamento

In

d c b

il prospetto viene

l algoritmo

di arresto

dei

esempio ,

per

che

input.

estremi

incontrato

nell ordinamento

retta

in

inserisce il suo

mano

i punti

dati

gli

Si

viene

35.2-7,

man

determina

però,

proprietà

di arresto.

quando

diventano

detlo

di

dinamicamente

semplici

è un punto

procedendo

di ascisse,

retta

richiesto

l algoritmo è determinato

presentato

rastrellamento

sequenza

della

I cambiamenti

algoritmi

segmento

è una

di arresto

di arresto.

di arresto

esclusivamente

La

due

gestisce

f

di arresto.

i punti

per

punti

retta

d

di rastrellamento

dei punti

L algoritmo

e

rastrellamentu

tipicamente

la posizione punto

solo Per

di

di.rastrellamento.

definisce

dei

retta

di rastrellamento

stato

Lo

2.

843

compurazionafe

Geometria 842

for

ogi i

estremi

dei.ic menti

risolve

pui to

itu

p

nella

ioni

in ambigue

lista

ordi

SG i

i i iitr i

i è.r i clo e ite

di

ittC111t

adei ia

prima

i punti

con

i rdin ite

più

invii

callcell ito.

SC

C LICiti

ic illi,liti

11AI1

..l

itltil iCC lli ,

l1

ljl e l

I I

C .lllcell 1

ll

.idgtl1CIlto

s

dàll ordinamento

totale.

di arresto,

punti

alla

Infine,

linea

se non

alcuna

è trovata

12 è restituito

intersezione

nella

verifica

di tutti

i 2n

FALSE.

Se

Correttezza

Il seguente

Teorema

mostra

che

At v-Secwevv-brrERsecr

è corretta.

una

At,.v-S owEm-L ERsEcr S

coppia

due

La procedura

Per

segmenti

o lo heap

un

intersezione

più

a sinistra,

che

che

dato

un

non

basso

di

rena

vRve

su,

p

intraprese

i

non

Il primo un

O lgn

richiede

tempo

Ol.

35.2-1

vi sono

caso

non

per

inserito

a oppure

totale.

Le

4-7

linee a

cancellato.

un

Se

dato

sinistra

di

p è sulla

i casi,

restituisca

viene

di

punti tempo

richiede

del

il metodo

e, usando

alle

linee

operazione

ogni

poiché

al

3-11

si ripete

su un

RB-albero

di intersezione

controllo

ogni

35.1,

paragrafo

è pertanto

totale

Il tempo

for

il ciclo

arresto,

O lgn ,

il merge

usando

Ign .

O

Si mostri

35.2-2

tra

Dati

due

punto

retta p

b e l altro

segmento questo

cui

sul

sono

q

fatto

p sia

che

35.2-4

già

in

T e un

a e b consecutivi. trovata

l intersezioise

PRtxt-lmEasEcnic-SEcwavv a destra,

inserito

dal

non

la

cui

per

è quella

riesce

On

n

casi.

e un

un

di tempo

algoritmo

Le

linee

tra

essi

totale

se un

per

viene

Si dia

un

di tempo

algoritmo di n vertici

totale

cui

ono

poli

di n vertici

fg a

On

per

se due

determinare

con

semplici

poligoni

si intersecano.

che

punto

una

di centro

e dal

Si dia

un algoritmo

in comune.

la procedura

da

è formato

Un cerchio suo

caso.

questo l ipotesi

PRi Tper

nel l ordinamento

nell ordinamento

8- l I controllano

p contraddicendo

nlenti

di se

caso. segmento

da

trovata

le intersezioni.

ùeterminare

per

contro

come

dando.

insien1e

tutte

a trovare

Si mostri

segmenti.

intersezione

prima

a sinistra

piii

non

dei

in due

le intersezioni.

tutte

stampa

insieme

fallisce

professore

segmenti

di

che nell

che

la procedura

chiama

Il professore

e afferma si verificano

che

mano

proposta

insieme

un

Si dia

un quello

man

for.

ciclo

del

l iterazione

è semplice.

di

punto

possib11itè

b

modo

in i segmenti

stampi

un intersezione,

cui

punto

3é.2-5 o sotto

tra ci ,

vale

quale

Agv-Saowzm -L TzRsecr

mnditicare trovato

aver

PRi l-IvTeasEcrtsc-Seowe v

il piii

con

l altro

due

e continui

la procedura

di

dopo

I vERSECTwG-SEG 1ENT

l ordinamento

q è sopra

Ol

si mostri

in ,

confrontabili

sono

in tempo

determinare

per

suggerisce

da sinistra

esempi,

Se p

.

Maginot di terminare

invece

risultante

che

a e b diventano

che solo

e che

si intersecano

non

incrociati

i prodotti

si intersecano

Esiste

p.

vi è un altro

prima Vi

di p.

segmenti

lessicogratico

è analizzato T

ersa

caso

di rastrellamento.-e

totale

di arresto

si basa

Ci

tre

allora

In ogni

di p.

a e b che

segmenti

usare

Il professor che

a e b diventano

attrai

per

dell ordinamento

sull ordihvmento

cui

35.2-3

a e li

sinistra

ci sono per

di n segmenti.

insieme

in un

intersezioni

eh ,a.

almeno

e siano

alla

di rastrellamento

è corretto.

q

non

di p oppure

sinistra

A causa se p è sulla

Poiché

di arresto

punto

bassa.

più

On

essere

vi possono

che

di intersezione

si verifica

sinistra

vi sia

che

p il punto

l ordinata

di p.

retta

q è alla

arresto

Sia

di rastrellamento

è un

analizzato

anche

controllano

e b sono

rendendo

In entrambi

2n

Ign .

può

intersezione

assurdo

per

intersezione

retta

- che

-, allora

punto

interferire

In Tè

I segmenti

iterazione

Ogni

tempo

35.2-á .

vi sono

Poiché

On

tempo

2 richiede

tempo

impiega

A v-S owew--I sEcr

La linea

01.

intersezione

quando

se tmva

v csv.. con

è alla

a sinistra.

di arresto,

p possa

una

Inoltre,

q venga

che

alla

esiste

totale.

intersezione

i punti

i punti

totale .

si supponga restituisca

nessuna

di rastrellamento

prima di

intersezione

1.

se vi è un

intersezione. TRUE solo

quello

Poiché

punto,

di rastrellamento

punti

analizzati

le azioni

E se e solo

se restituisce un

verificarsi,

di ambiguità

tutti

per

ste so

retta

Tappena

intersezione

solo

restituisce

può

in p.

corretto

nell ordinamento

dei

scorretta

CENT-INTERSECT

in caso

nello

q sulla

è sulla da

non

ANY-SEG

nell ordinamento

estremo

dato

sono



da

consecutii i

mv

vi è almeno

quando

caso

si intersecano

si intersecano

consecutivi

2n volte.

1 richiede

sort.

come

1 altro

e che

che

l ordine

essere

può FAI.se

scegliendo

i segmenti

La

richiede

di input.

mostrare

linea

lgn .

sort

tempo

allora

S,

insieme

nell

in S.

ANY-SEGMEYT-INTERSECT

perché

dei

segmenti

Esercizi

o restituisce

ierificarsi

restituisce

di segmenti

qualsiasi

Di nostra -ione. intersezioni

n

sono

35.1

La chiamata tra

vi

esecuzione

On

più Teorema

di

Tempo

in un

insienle

D ito

un

di n cerClli

cerchi

Due di ten po

i

e dal

circonferenza

raggio.

suo

ed

intento

lp

On

per

dal

è rappresentato

se hanno

si intersecann

se due

determinare

punto

qual Ite cerchi

presi

intersecano,

F t.se. t

35.2-7

insieme tutte

restituire

35.2-8

Si

maestri

sc si cnn .enre

l imeri

mcilti

opiii J.

l

n

in

le

intiriccanv

temp

ll1CllC

iicllo

ilei

li

totale

ii

intersezioni.

come

neon ri

l l zn .

O n

tC,

SC

AiY-SL

che

cn

RB-albet i

per

proccdulc

COI-AI .,ll11ClllC

si

in

contenente

se me iti

intersezioni

realizzare

f UAi.lOI11

z COITCtl

le

Con e

INTf-.RYf CT

Se

di

lllClltO

E.

l

. Tl1

Cflll,llC

C

gUllCllL

pu lu.

Si

dinsoitri

che

la

re

liu

riunii

ll-

Capitolo

Geovretria

35

compurazionale

847

P,

35.3

Calcolo

dell inviluppo

L inviluppo ogni

convesso di

punto con

g

si

La

figura

In questo

numero

dir .

è un punto

vertici

di

Q mantenere

realtà

esiste

lp .

un

certo

Entrambi

mento

rotazionale

formano

con

Nel

metodo

i-1

cosi

CH

essere

p,, p ...,

modo

ordinati

stadio.

in base

l Esercizio

da

un

gli

inviluppi tecnica

35.6,

Figura

Un

quali

Algoritmo

di

in tempo -rastrella-

angoli

L algoritmo di punti

metodo

divide-et-impera, uno

inviluppi metodo

astuto

Il metodo mediano catena costante

che

sé.

Inoltre, con

coppia

due

punti

che

polari

a destra.

essi

da

punto

a una

portando

CH p,.

di mostrare,

è simile

finché

con

p ...,

sinistra,

metodo

questo

non

di Graltam

la pila

appaiono

sul

Ton S

pir

convesso

algoritmi

risoli

dell inviluppi distanti

pii

punti

che

la cui

in due di t in7. I

di un

oidio altri

metodo

Si

punti

cinto

Trova

la porzione

è un

rcl itiv i,ahi.i

maiiima.

per

gli

del

superiore

a

GR e

Fa

tra

insieme

di n plinti

Come

l Esercizin

piano 35.3-3

1

sia a il siano

coppia

di punti pii

distanti

in un

iniienie

di n punti

in tempo

O ri

sono

ivt-Scoi

g è inserito

eventualmente

convesso una

sola

estratti

i vertici

il

conse

prende

restituisce

la

poco,

punto i ,.

mantenendo

volta

dalla

di CH g

sotto

punto pila

input

il punto

S

di

per

di Q con

la

cimo da

in ordine

3

tpS

4

Pcsv r, .

5

PUSÙ / i

6

Pese p,.

7

fori

8

do

rispetto

e-

che

la minima

i rimanenti

p,

vi sono

se

del

si desidera

Ip .

una

alla

che

l algoritmo

Quando

della

Q di punti. senza

pila

rispetto

pila

5

GRAHAA1-SCAM

senza

g f 3.

dove

mndit

icore

a come

dal

Chiama

5 e NEXT-To-

modificaiv.

COntiene

S. t ondu

si

Come alla

cima

antiorario.

più è piii

ordina a. punti

all angolo punti

con

distante

o il più

a sinistra

di tali

in ordine

polare lo stesso

vngnlo.

antiorario rimuoverli

attorno tutti

da p.,

S S

S 3 tom iihile

l angolofnrmatodai T i, .S

Pl. ilt / ,, A

Poi 5 5

punti e p, non

punti

di g.

0

ali

rcturn

S

pila

e i punti

pila

vntiorarin

comin-

richiede

sulla

pila.

in ordine

un insieme

in cim t

restituita

di CH g

p ....

ordin ti

IA

1

inviluppo

isr grigio.

se

il problema del

poi

veloce

computazion le esempio

il problem

esattamente

che

i vertici

quelln

I h. interessante

CH Q

restituisce

che

2

I I

trovare

t dell

CH Q

perimetro.

Ton S

frazione

il più On

di

do

pui

coin esso

GRAHAxI-SC.xiw Q

un

il calcolo

una

problema

per

iluppo

due

usato

convesso.

tempo

di geomc.tris

un

viene

10.3

solo

cnnsideri.

dimensioni

in

a destra.

più

paragrafo

è asintoticamente

di punti

problemi

8n,

e quindi

dell inviluppo

richiede

insieme

tempo

ripetutamente

superiore

es o

cr nves o.

Lnl2J

eliminando

Questo

li veriici.

àel

peggiore.

ia catene

interiore.

contiene

ùell inviluppo

il calcolo

iolv

in

On.

algoritmo

in

dell insieme

punto

Sconti ne

La procedura Ia funzione

dimostrerà

ricorsivamente

in tempo

caso

degli

e i1 sr o

pm ti

risolve

Ogni

vertici

sono

termina.

p,, tormando

Ign .

diviso,

e uno

convesso

rimane

la catena

cnnvesso

molti

nel

dell ii1vilup o

di punti cosa

all

è

punti

calcolati

inviluppi

lineare

n

a sinistra

più

gli

tempo

di

sono

combinare

pel

superiore

eli pi nti

trnvvre

f iil21

sottoinsiemi

richiede

l inviliippo

ciano

dei

prone-and-search

la stessa

Il calcolo

degli

convessi

l insieme

di

Q

Graham

candidati.

esattamente i cl

sottoinsiemi,

irrsieme

vertice

ogni

metodi.

On

35.6

h è il

decidendo

convessi

convesso

totale

impiega dove

chiamata

degli

richiede

tempo

Pp

ignonre.

una

all i-esimo

35.3-6

richiedere

e quaIi

l inviluppo

è aggiornato

figura

sinistra

da

i

convesso

O nb ,

proprietà.

i seguenti

Pg

P,

convesso

Graham,

tempo

dalla

l ordine

segnalano

sono

All i-esimo

. Come

p, in

seguendo

Si

impiega

usano

asse.

p

di

calcolare

per

e Jarvis

Pg

Pg

tutti

l inviluppo dell inviluppo

vedere

un

circonda

i vertici

convesso

metodi

i vertici

a sinistra

più

realizzato

di

i punti

p .

si può

che

l algoritmo

impiegnnoquesta

di Graham

incrementale,

punti

Come

di riferimento.

p,,

di Jarvis,

dell inviluppo

analizza

vertice

sequenza4 , degli

vertici numero

che

un

algoritmo

gli algoritmi

algoritmi

gli

come

da

Pg

p

p

Pw

convesso.

calcolano

restituiscono

convesso.

come

inviluppo

di

convesso .

sporgente

elastico

piccolo

cui

convesso

inviluppo

per

chiodo

che

conosciuto

chiamato

di O. Entrambi

un

e il suo

algoritmi

algoritmi

gli

inviluppo

da

di punti

un

sia

P per

l inviluppo

inglese

Q

convesso

poligono

Si denoti

termine di

due

piccolo

di P.

tracciata

Il primo,

Il secondo,

il

punto

insieme

Entrambi

dell

ogni

presentati

antiorario.

di vertici

di CH Q

In

saranno

il senso Oe

che

un

è il più interno

hull ,

la farma

mostra

di n punti.

seguendo

o all

per pensare

35.6

Q di punti

perimetro convex

è allora

paragrafo,

di un insieme

On

può

convessò

chiodi.

insieme

sul

sta

CH

Intuitivamente

tempo,

di un

Q si trova

CH Q

L inviluppo

convesso

Nrst- E -Tnv 5 ,

prnvoe,.i

una

ivolta

a

inictr.,i

a p

tranne

in caso

di parità

Capitolo

848

35 Geometria

io,

computazionale

849

o io

ia e

Pp

p Pp

Pg

Pp *

p Pg ,

8

Pg

e

Pg

ap

.p

P

.l l op

s

P

Pg

Pg

n,

5

Pg

Pp

pi

PE

n

P

PpP

P

o

g 0

lo

p

Pg

u

p

P,

o

Pg

P

h

g

io io

io. a

Pp

p Pg Pg

Pg Pp

Pg

z

p

Pg, p

p

Pp

-

Pg

p

s

e

O

O

Pg

Pp

p

Pg

Pg

Pp P4

Pp

c

o

p

j o

io

Pg

P4

n

p

0

i

Q

io P

p

p P

Pg

p

Il

p PE

Pc

Pp

P,. p

p

Pg

v,

,.b s...

Pj

Pg

e P,

p

L esect .-ione

éli

Gr ww

vull ii sienu

al-Scoi

Q

della

35.6.

figura

L ini

ilup ri

cn

descritto

il puntO

ura COll

35.7 11 lllt

P

PE

illustra Il m

l esecuri 10rdin ir

ne i. ere

di lien l

èv.xHww-Sc wN. il

pii

Alla iinis ra

linea eli t ili

l punti

i

sceglie

il pirnto

in

di

casn

p riti .

o

1

cssr

non

f

4

P4

o

k

j Figura

Ln

Pg

P4

n

e

35.7

p

Pp Pg

P

P,

Figura

Pg

p

s

è5.7

vi

Cr ntim a.

è alcun

all

punto

Esercizio

di

Q

35.

ia

che

l-2.

sotto

Se

due

u lunque

pc

U plÙ

altrá

llJlltli1

pltllll

punto



con

SfCShO1lil

la

stesi

Olo

ii

t ordinata

rispetto

polare

trov

zar ,

p come Poii h

qllindi

p issntlo

csicre

c iIllplel lillcllte

iiilu.i

dl

b

trAll i/i ile.

Si

dcllbli

Ci ii

n

il

lluilicro

di

850

Capitolo

35

restanti

punti a p

diversi

da p .

è nell intervallo

i punti

sono

ordinata l Esercizio p,.

p...

alle

dopo

aver

che

procedura i primi

7-10

p ...,

Pertanto.

svolta

convesso

in ordine

volta

che

una

vertici

che Le

InfmC.

sequenza

di CH Q

con

P,

p

O

veda

si

angoli

gli

P e

Pg di

polari

in viluppo

ii hile

una

controllo di

della

un

8-9

svolta in

angolo

retto di un

altri

vertici

del

lo stato la pila

delia

S alla

una

svolta

vertice

dell inviluppo

un

convesso aver

a

teorema

35.8

Sc v.

a

Le

Se

il ptorto

formalmente

figura

la correttezza

è estratto

p

tutti

inserisce

iterazione

35.7 1

del

mostra

35.2

dell

Corrette-.-a

algoritmo

GR w ii -Sc i

Q si trova

è eseguito

sulla

su un

S al termine

pila

insieme

ciclo

I punti

di GECHI -Sci.

for.

Pertanto

Prima

della

olo

se e

procedura

3, allora

Q se è un

un

vertice

lato

di

punto

come

sequenza

suppon

per

a che

a sinistra. angoli

polari

p, che

si trova

non Si

mostra

l invariante

non

che

vertice

i punti

sulla

la parte

b7

estratto

tale

sulla

di CH Q .

Se

doli

svnlte

nella

è un

o Zp g g ,

si

di f

è inclusa

C

nella

effettua

La

di CH Q . una

i punti

triangolo

p, p .

35.8.

6

svolta

Aro

CH Q . allora

a sinistra

sostituisiono

Si consideri

ora

p, il vertice

JOpO.

OllCl1C

su

S.

afferma

Si

corrisponde

un

p, che

punto cinta

che

p,

olia

direttamente svolta

una

a sinistra,

lati

dei

a.

o illimitata. regione

come

risultante

viene

dentro

regione

in grigio

un

da p p,

e le estensioni

dei

lati

può

vertice

nuovo

o limitata.

essere del1a

in grigio di P.

due

coti

b.

parte i lati

p p,

35.8 b . alla tt ura pila 5. In riferitnento a inserito di p e sic p il predecessore p, che 35.8 b della figura re,.innc in ,ri ,io

della lato

fi ura

in grigio

Poiché

35.9.

dell estensione

Hp p,p,

l angolo di

Poiché

p,.

L affermazionc

è Elll

p01

l,iCli10

vera COtli

p,

Si non i punti

il punto

i casi.

di S tormano

un

cnni

poligono

caio.

Con

cib

Ia dimostrazione

si conspleta

dell affer-

mazione.

il punto

i,

della

pila

o

procedura

lu seguente

ni punto

affermazione iempre

S fonn inc

sulla

S è un

pila

la procedura i vertici

GR I *ono

di un p li

vertice

di CHjQ .

IAA1-SCAS coni

l11 llltICI1C

caso

vertici

di

Q e i Suoi

punti

torl11 lilo

nilveiio,

Lln poli iilo

essi

devi llo

tonll ire

CH Q .

in ordine

antiorario.

fOllTl,.lllO

e

ven

lu

e sul

essci

e si scelga

nella che

cade

p deve

proprietà

poligono

convesso.

infierito prima

u n altra

convessn

la regione

come.

poligono

l invariante.

la regione

adiacenti,

semplice

i risultante

i esamina

pii ,

un

limitata

relativi

di S appena deve

sulla P

su una

ci si basa

convenivo.

mantiene

pila

Sia

h.

la regione

in questa

primo

ca o.

poligono

è infierito

e

il poligono

p,.

sulla

p,

un

dalla

un punto

parte

punto

da

punto

35.9 a

angoli

della

qualche

sia

in cui

Nel

seguendo,,li

p p,.p con

In entrambi

degIi

in grigio

si aggiunge

è rincorso

Si consideri

di P.

seconda

A

effettua

vertice

scandiscono un

figura

a sinistra.

S non

pila

esiste

non

mostrate

l ango

segmento

convessa

vertice

pila.

descrive

Poiché

o sul

combinazione

Un

situazioni

antiararin.

n

una

si olra

una

efferata

p

di

un,.ertiee

no è

di CH g .

a1 termine

dimostr ire

due

3 ,,8 .

senso

trian

apparire

pii perché

fieiira

p in del

sia

CH Q .

nelle

punto d ll

nelle

al plinto

che

ogni

che di

mai

puo

a sinistn. che

d alt interno

col

vertice

sta

p, sia e tratto

relativi

ora

naia

quindi

cosa

vertice

un

è un

non

mostrato

un

sopra. non

dimostrazione

svolte

i I punto

essere

pu

Si com

della

prima

come

notato Q

p,,

descrive

mostra

in

p ....

cruciale

a

parte

vertice

$ ,,

Il punlo

Si

Come

a1tro

qualche

p

GRwwut-

dell algnrinno

corrette -a

Ga*w i,-Sci

CO11VESSO

pr ligf llO

o inseriti.

di un

figure

alIe

p p,

la regione

vertice

il caso

illustrata

p, p, che Dimostra -ione.

un

o estratti

l estrazione

di considerare

qualunque

dove

Zp k

fognare

sono

se un

geometrica

proprietà

il comspon-

Grahat t

Q di punti,

di in

pi1a

l ang ln

perché

devrmo

allora

adiacenti. Se

pila

di nostra-ione dalla

estratto

punto

dalla

la

basa

i

di GRwwww-Sc i.

di

si

p, sulla

geometrica Teorema

che,w

defl inserisnento,

ogni

cr i

deve

non

estratto

p si

su

sirua-ioni

ff1usrra -ione

è convesso.

dimostra

due

che

vesso.

con

b

a Figura

vertice.

ogni

piuttosto

il punto

S dopo

l I. La

i punti

pila

a sinistra,

Dopo

verso

pila

linea

in

Pp

o

di

l inviluppo

per

poligono

poligono.

ci si dirige

dalla

si effettua

non

l

è che

i vertici

si percorre

non

svolta

scopo

l alto.

rimuove

dal

S. Il ciclo

Lo

p,.

a sinistra

cui

vertice

iniziale

verso

Quando

vertice

un

quando

mastrano

linee

ogni

di

restituisce

alle

...,

p,,

contenga.

perché

la pila

basso

poiché

a sinistra.

3á.7 b - k

dal

convesso.

possibilità

convessa

mostra p,.

contenga.

trova Il

la pila

35.7 a

effettuare

pila.

la

non

figura

Il ciclo

è necessito

svolte

figure

Il seguente

35.6,

sottosequenza

S

pila

while

dalla

combinazione hanno

La

si dovrebbe

esclude

GRAHAM-Sci

dente

figura

questa

denoti vertici

sono

inizializzano

dell inviluppo

il ciclo

Ciò

3-6

della

punto la

p

vertici

è estratto

a destra,

p, e p,.

p,

ogni

antiorario.

linee

S. Le

antiorario.

essere

risultante.

essere

pila.

per punto

senso

ogni

tre punti

il

non

il vertice

della

della

i punti

Si

antiorario.

ap . la pila

si ripete

p,

in

a p,.

p, e p

in senso

l

analizzato

convesso

rispetto

in g relativo

punto

crescono

polari

i punti

che

mostra

35.7 a

usa

si è mostrato

sinistra.

figura

angoli

gli

antiorario

Si noti

p,.

rispetto

l alto,

linee

CH p,.

La

p ....

ordinati

p,3 della

verso

basso for

I ordine

p,.

35.3-1 .

Il resto

secondo

con

Poiché

di ogni

in radianti,

misurato

polare,

O.td2 .

ordinati

di punti

L angolo

semiaperto

851

computaionale

Geometria

suhit ,s .

dog i Sl

l ccccuzinne C.,ll111llll

01 ,l

clcl1 COlllC

C.,ll11L

line i

6.

poiché

l.,l I.,l j ll,.l

i punti

S EJLII ,lAlC

p,

p,

1 CiCCll/1OI C

e .li

an,.oli.

L

elimina/ione

ùi

tutti

i punti

. ,ti

I,

ilei., ,n lo

ol,. v.

crenni..

ucllo

pii,

lontano

D

852

Capitofo

35

catena

catena

sinistra

V

853

computazionale

Geometria

destra

O

b Figura

è5.9

li r iuhgeirdo on

p ligoirr adiacenti.

esso. Lei

a

nn

La

regione

regione

in

nella

punto

regione

iir grigio

in

è limitata

grigio

è li nirata.

tempo

totale

b

de1

grigio dal

lato

p

La

regione

Le

linee

convesso

poligoiro e dalle

p, iii

P si ottierre

estensioni

dei

due

un lari

altro

ad

esso

è illinritata.

grigio

pp

può

e ere

in

n

realizzato

ogni linee

8-9

ciclo

il metodo

richiede

alle

il tempo interno.

degli

aggregati

complessivamente una

osserva

è al più

che p,e

al più al

m

più

richiede dal

sono

mai

01,

ivhile

richiedono

On.

ogni

è On.

0.

tempo

iterazione

dal

ciclo

1, ...,

01.

ogni

per

cosi

Dato

del

che

di Pnv

richiede di

del

I

O

or

vengono esegue

e

n

una

ivhile

nella

eseguite

in totale

Por

e cosi

il controllo

alla

di GRAHAK1-Scoia

totale è On

punti

linea

i iegatii o

Più

formalmente.

vertici

di CH g .

il punto 8

Iglò .

minimo Algoritmo

di

L algoritmo tecnica

Jarvis

di Jarvis conn ciuta

calcola come

impiega

tempo

di Jarvis

è asintoticansente

lo

stesso

punto

dell inviluppo

convesso. si torna

O n/i ,

l inviluppo

impacclretta nenfo

dove

inizi.ile

in

h i il numero piii

veloce

Quindi

si

eli un inglese

di vertici

siate.n i

insieme

Q di punti

attraverso

wrappihg .

package

di CH Q .

dell ul oritmv

clal1 al

p sc tto

convesso.

convesso

L algnritmn

di

il fnelio

Graham. verso

Questo destra

sinistra

considerando origin ile

ma

p,,

rispetto

la catena

35.10,

e si sceglie

p,

poi ri

rispetto

Jarvis

con

cori

p, sceglie via.

e cosi

p,

il vertice

scegliendo di

Per

CH g . che

il

forma a costruire

Si continua

delle.v.

negativo

al semiasse

i

di p tritò.

il punto

o delle.r.

dei

p,

successivo

destra

come

p,,

negati

al. en iasse

angoli

gli

figura

al

finché

p. di

l algoritmo

realizzare convesso.

la da

...,

p,,

polare

è risolta

parità

rispetto

le

catene

intorno

concepito

rastrellamento

un

separatamente

costruire

senza

Tali

esinistra.

destra

h è o lpi .1 algoritmo

Quando

di Graham.

ritmai

con

al vertice

potrebbe

per

mostra

caso

angolo

il minimo p la

In

p.

p, il vertice

35.10.

con

nristimi

polùri

H

sequenza

polare

esempin

si comincia

si torna

all inviluppo

piii

sinistra,

polare

angolo forma

alto,

come

una

angoli

la figura

mostra

Analogamente.p.

il vertice

si è costruita,

angolo

il minimo

forma

da p .

come

t li

attdo

costruisce

di Jar is p.

trc

sirrist a

catena

con

comincia

la catena

Si

una

lontano

1a catena

costruire

la

l algoritmo

si raggiunge

lontano ,

più

.x.

convesso

più

Quando

richiesto

derer ninata

Si

dell inviluppo

vi sono

è delle

guindi

p,

semtasse

pila

tre

alto

pii

18. I, si

Almeno

l, il tempo

destra

il tempo

paragrafo

di Pus .

catena

while

il ciclo

tn

Poiché

esecuzione

che

sinistra

tempo

ciclo

escluso

p, è inserito

Mt t

while

nel

punto

in effetti

ciclo

richiede

è On.

mostrare

ogni

operazione che

Pus speso

for

per m.

complessi unente.

il tempo

Poiché il tempo

procedura

pila,

while

chi arn ita

Pertanto,

i della

dall l

Ogni

ciclo

3 volte.

ammortizzata

Per

di Pot

estratti

n

considerare

richiesto

nell analisi

di Po . del

senza

l anali i

per

un operazione

2 iterazioni tempo

ciclo

3-6

al più

OI

complessivo

Come

2 operazioni

in

è eseguito

tempo

volta.

ji non

p,

7-10 tempo

while

5 esattamente

-p ,

linee

richiede

pertanto

dal

Si usa

for

iterazione

richiesto

On.

ca1ena

l. il ciclo

01. elle

con

punto

è un

vertice

tenderlo

e poi

e richiedono

crescente

nell intervallo

j I

per

convesso

111inimo

verso l algoritmo

di

n

valori

di Jarvis

che tra

in

la

tempo

richiede

sequenza

0 e 2n

di

an

On teinpo

se

oli

dei

Il vanta

rmlianti .

ogni

controntu

lati gio

sia

dell inviluppo di co tniire

richiede

catene

tempo

strett amante separate

è che

Pertanta

01.

O uh .

I Si coi tinua al puntai

in c ucito

ori iii le

.

nsVilO

l SlCI1CfCrc

il fo *lio

ut

o l insieme

di vertici

finché Esercizi

353-I

Si dimostri di Cl-l

.

che

nella

prnceclura

C kAll

61-SCI.

i punti

p, e p , clevovo

essere

vertici

854

Capirolo

35

caso

qual

la distanza

aver

potrebbe

Figura

35.11

La

poligoiio

a fnnna

perimetro

solo

l ombra nuc1eo

di

degni-ione di

nel e la

q

b di

stella.

trar poligwio

Il segmento

pturto

b

q.

regione

in

a jionna dal

Uil

on

poligono a

grigio

di

destra

srel1a,

p ad

pnhto

m

a forma

è l o nbra

da

tassare

qualsiasi di

di

stella.

q.sul

La

Poiché

q.

nell Eserci-io

pimto

35.3-4. perimetro

regione

in

grigio

regioni

queste

sono

il

a sinisrra

è

modello

cazione

e per

numeri.

Si dimostri

vertici

dei

cui

di calcolo

sia

ordinati

un

previsto che

che

in tale

offra

limite

inferire

modello,

dell inviluppo

I addizione,

Qn

Qn Ign

convesso

il confronto

di

glia

è un

disgiunte.

un

insieme

di

del

Dato

un

vertici

insieme

Q di

si dimostri

punti.

che

i due

n

l array

punti

più

loro

Dato

un r

punti no

di P.

poIigono

P ed un

taIe

il

Un

che

tipo

calcolare

il iuccleo

di n vertici, CH P

di P.

specificato in ten po

completamente

di P.

veda

la tigura

dai

un

di q è l insieme

di tutti Dato

un

dei

all inter-

p all interno

punto

in ordine

o

perimetro

L insieine 35.11.

vertici

suoi

sul

se esiste

perimetro Si

l ombra

perimetro,

di stella

del

punto

suo

è

qr

P è a forma

di ogni

è chiamato

di stella

segmento

poligono

è nell ombra

q sul

puttto

i punti

di questo a forma

si mostri

Nelproblema fornendo congresso Cruham O ii reale

deEI un punto

lei

1

ricorsiva Divide P,

come

On.

dei una

inviluppo alla

con,

volto.

esso

Via

punti

disponibili.

volta

per

ogni

lgn .

Si

mostri

come

con

un

tempo

complesiii o

via

in tempo

che

o-ni

reaEe,

punto,

risnlvciv.

si potrebbe

con

un

il problema di

Oi

è fnrnito,

punto

Ovviamente,

l insieme

te po

di

Q di

punti

si calcola eseguire

dell inviliippo

che

i punti

di

complessivo in tempo

.

li

Si

vostri

so

di ii punti

come

realizzare in cado

il nietoclo che

incrementale hi

itnpie

tempo

O ir

per lp

calcolare

l inviluppo

P,

Impera

Ricerca

della

coppia

di

punti

piò

le

che

i punti loro

vicini

più

individuare

per

semplicemente

controlla questo

per

dalla

tempo

O itlp .

un

problema nota

è descritto soltanto

alle

ordinate lpi ,

lo

lp ,

non la

facessimo la cui

coi e del

ricorrenza

mantenere

modo

monotono

ci

si può

permettere

questa

crescenti.

del

di

di

senza.

proprietà

che

per

X e Y ad

fra

ogni

sarebbe

esecuzione

usare

come

pnco

fatto.

di

noti

Si

Si vedrà

X

nell array

Analogamente.

ordinare

tempo

1g si .

On

arra

e gli

I punti

crescente.

in

ricorrenza

Pc Q

sottoinsieme P di input.

monotone

siano

è Tn

soluzione

un

input

sottoinsieme

ascisse

On

semplicemente

applica

il paradigma

di

una

P

sono

dei

input

della

riceve

gli

ad

ordinare

ogni

P,

I. L array con

array

in P,

e l altra

sono

X ed

Y . Sinnn e sia

6

Be

che

la

è cosi.

la chiamata

3,

negli

I e tutti

la linea X ed

array

X che crescente.

monotono

in ordine

i punti

rispettivamente

contengono

PE e

insiemi

in due

o sopra

crescente.

due

Pe

Se

si cercano

P

P di punti a sinistra

sono

scisse

Y

6 , le distanze

Se

X è diviso

le

trovme

il iwtoinsieme

chiamata

rispettivansente

per

vicini.

più

monotono

si eseguono

P in PE e P ..

vicini

Y ed

in annodo

disposte

3.

j

precedentemente

segue.

in P,

linea

negli

Y è diviso

di iso

prima input

la

se

pritna

l insieme

i punti

di PE e P ,

o sopra i punti

suddivida

tutti

L P IZJ.

a destra

più

punti

I che

verticale

dei

come

divide-et-impera

l, IPJ

le ordinate

X e Y controlla brutale descritto la coppia

e si restituisce

linea

l array con

P,

il metndo

punti

I P I-

P J

input

con

ricorsiia

esegue j coppie

Avendo

cnppia

chianszte

gli

dei

array

delle

una

ricorsive.

la coppia

punti Y

XE ed dei

coppie

per

vicini

più

vicini

in PE.

Gli

chiamata

la seconda

più

la

trovare

restituite

per

min 5,, 5 .

convesdei

L oppia

Combina

o una

ricorsive, 35.4

tale

rispettivarnente

PE e P 35.3-6

usa

richiede

tutti

se

Si trova

tali

di P e

l inviluppo

convesso

vicini

più

si descriverà

esecuzione

algnritmo

questo

tempo

On

Analogamente

è dato

l algoritmo

esecuzione

di punti paragrafo

di

rispeno di

chiamata

data

contengono 35.3-5

mezzi

o marittimo

ricorsiva.

chiamata tutte

di P che

poligono

antiorario.

i due

tempo

contiene

per

Una 3á.3-4

limite

ricorsiva

chianlnta

di CH Q .

modo

2T iil2 preordinamento

un

sono

in

nel

chiamata

tra

sono

dell algoritmo

quali

Y è ordinato

rientrare

calcolo

di ir punti.

lontani

Perciò

ricorsiva dei

ordinati

Tn 35.3-3

quali

nel

applicazioni aereo

divide-et-impera

chiamata

sono

e la moltip1i-

inferiore

esempio, traffico

i1

l ordinamento

per

1imite

il controllo

la coppia

il cui

On.

Algoritmo

Ogni

un

per

Un

a

interseca

è vuoto.

Si consideri

problema

In questo

di punti.

coppie

divide-et-impera

X e Y, ognuno 35.3-2

per del

trova.

Questo sistema

trovare

per On

2T nl2

Tn

Un

conoscere

brutale

le

algorithio -a

di

bisogno

algoritmo

tutte

traffico.

del

collisioni.

potenziali Un

è nulla.

essi

tra

di controllo

sistema

855

computazionafe

Geometria

coppie

più

vicill ,

di punti

con

oppia

i L ld un

punto

con

distanza

in PE e l altro

Dtrovuta in P .

La

da una

delle

uritmo

chiamate

determil1 l ic

vicini

1

ill

Ol

Ill110

verticale

I J

ali

CfllallllO, iC UC.

ampiezza

2 5.

L ut..ly

i

ordin to

rispetto

alle

c ldinule.

1r pri 4

COI11C

Y.

856

Capitolo

25

26centrato all interno

P 4

essere

altri

Si

mostra

f

4

di un

consideri

4

sulla

5x

linea

I. Dentro

che

quindi

P sono

al più

5x

oche

distanti

di P possono

8 punti

la metà

forma

almeno

B unità,

stare

sinistra

al più

dentro

di questo

quamo

punti

renangolo

questo

la figura

quadrato

-.- .-.9

coincidenti,

punti UllO

lli

PL

UllO

/ll

PR

dentro

il quadrato

1

stare

possono

I

a

coinridenti, punti uno in Pz,

due

uno

coppia

in P

coppie

35.12

Per

ogni

sulla

seguono

Se

trovati

cnn

In caso

nn

quadrato ci

i vedrà

calcola coppia

che

panti

4 puitti di

vengono

allora

restituite

una

dei

tutte

coppia

Y che

7 punti

punti

8

raggiungere

omette

precedente

come

di esecuzione

realizzare

alcuni

e tiene

traccia

di punti

in

Y.

On

Ipso .

l algoritmo

Dopo

per

di

averdi

ottenere

realizzazione mostrato

il limite

che

di tempo

che

4 punti

su I. Questo

composta

da un

in alto

del

renangolo,

un punto

di Pie

coppia

e l altn

di P essere

se vi sono

e è raggiunto

limi

punto

stare

8 punti

I possono

linea

sulla

i punti

poiché

al più

cui

Per

rettangolo.

questo

in spossano

4 punti

di PR. una

si trova

dove

è facile

vedere

di P possono

S punti

i 7

la coppia

dei

array

nell

più

dell algoritmo

di

che

sia

anche

delle

ogni p.

pie

de11a

senza

si assuma il prima

che

Per

p.

di

perdita

in Y

possibile

seguono di punti

coppia

Y.

nell arrai

punto

se p appone

7 posizioni

la ricerca

per

il rettangolo.

seguono

vicini

Y.. Quindi,

pR è in una

possibile.

dentro

giacere

punti

cui.

si è

vicini.

più

esecuzinne

si

Tn

2T n/Z

è già

ricordato,

l obiettivo

Os ,

dove

è di

Tn

avere

come

è. naturalmente,

di

tempo

del

ricorrenza

di esecuzione

il tempo

esecuzione

un

per

di

insieme

á l array

Y sia

dalle

necessari

rispetto è già

alla

nrdinato

coordinata

y.

Si

la divisione

allnra

noti

che

X ricevuto

l array

se



P in Pie

dell insienle

da

una

ottenuta

lineare.

a Si osservi

za dell a

ordinato

ricorsiva

che,

in ogni

chiamata,

si desidera

formare

un

di un arr Y

ordinato

sattoinsiense

goritmo,

richiesto.

Correttezza il1rRc correttezza

La che

per

dividerà bisogno

due mai di

dimoslrerh Si supponga

di questo aspetti. un

Prinso,

insieme

controllare ora

per

l

eliminando di

per

questa che

algoritmo

ricerca la

punti

composto

ci ni

punto

della

rici rsione di un

soltavtn

coppia

dei

quando so

3,

P

o punto.

i 7 punti

più

vicini

che

è ovvia.

si assicura

Il secondo

aspetto

segunno

p

nell

eccetto

che è che array

non

l

/ength Y,

di

ric r inne,

l

coppia

dei

punti

più

vicini

sia

Y,

p,

e sort

mer

uei te

se

al parzgrafn ne

procedura



1.3.1

si suddivide

un zrray

in due

ordin.ito

arra

un idea,

si

for

si 3

livello

E del

La

m

si ha

proprietà.

a qualche

I

di quelli

trovata

sono

la corrette

al più coppia

I e il lato

che

e ten po

Come

tempo

dettagli

tardi

noti

del

dentro

risiedere

possono al più

Si

i punti

che

chiamata

il tel11po

si mostrerh

il più

destra

Si

controllare

p

In correttezza

Realizzazione

distanti

ricopi e.

descrizione

appare

l ipotesi

Analogamente

tutti

rettangolo.

di

preceda

25.

essere

al più

solo

p,

8x

ogni

del

che

bisogno

che

la metà

tra

in basso

con

forma

coincidenti,

mostrato hà

mostrata

P.

e la distanza

e la distanza

e p

in

i 7 punti

si

generalità

8anitá.

vicini

più

coppia

questa

linea

PE e nno

che

Continuando

rettangolo

siano

solo

le coppie

di

vicini

più

nel in

considerati di questi

restituite

la coppia

in

Possono

p,e

almeiro

punto

/ra

sulla

8 punti

un

i punti

su

Pie

a coppie,

coi

vicini

piii

25centraro

essere

essere

trovata

vengono

S x

coincidenti

dei

Seppe

a

distanti,

di trovare

effetti

Y..

Vi possono

tra p ed ognuno

in

coppia

rertangolo sono

devono

vicini

più

contiene

array

un

PE.

punti

poco,

la distanza

ricorsive

in

cerca

tra

di punti

verticale

le chiamate

di

coppie

della

nell

putito

all inteino

sono

effetti

l algorirmo

D x84

Y , l algoritmo

Carne

striscia

ogni

stare

e a destra in

che

segtiono

devono

1 sono

algoritmo

contrario,

chiamate La

PE

D della

5. la

dimostra ione che

p nell array

distanza F

in

di Sunità. p. L

della

essi de rtro

livrea

punto

da p meno

3.

Funirà

piatti

i p nrti

del1a i 7 puati

stare

ci sono

Base

2.

di

possoiro

A sinistra 8x

solo

men

per Come

b

eltiave

di conrrollare

dicanti I.

Concetti

come.

vi possono

allora

il lato

mostra

il rettangolo

di punti

Avendo Figura bisogno

oche

è sull intersezione

interseca

b

i3x

dentro

o in PE o in P

D

35.12 b

K

5x

Poiché

rettangolo.

e

SB

vi possono

rettangolo

questo

punti.

il quadrato

dentro

PE

rettangolo

857

computadonale

Geometria

I to

i doif

Vli c

lengtli Y,

5 i

0

P,

then

e P, e

m

geut tl Y lengtli YJ

Y leng else

, JJ

rtprl V .

I ...th Y .i Vi

, i

l ij

Y lcn,qtl Y

ii

7

ten, lr , th

t

t ...

.

.

,, . L

ordinati.

in

computaziona1e

Geometria

Procedure

analoghe

problema

rimasto

realizzare

semplicemente

della

chiamata

ricorsivae richiede

da li sono

tempo

esecuzione si ha

Tn

T

-

essere

sospeso

è come

tempo

lineare

Tn

n

array

non

si considerano

ricorsivo

6 Tn

O ,r

lp,

2T nl2 O n

ordinati

sono

le

chiamate

XE e

primi

volta

una

tutte

prima

può

Dato

se

intero

SC

dei

di

è T

i

1. Quindi.

a.

Si dia

b.

Si

dei

punti

di quei

di Q da

punti

punti

di

vertici

sono

negli

i punti

tutti

rimossi

stati

convesso

strato

l i-esimo

sono

cui

di Q che

se

Q è CH Q,

.

induttivanient

di Q è definito

convesso

lo strato

piano,

di Q consiste

convesso

strato

Q, consiste

il tempo

algoritmo

Q di

insieme

un

primo

ricorsione

convessi

Strati

35-1

chiamata

della

passo

Pertanto, dell

si

Il preordinamento

ogni

ricorsive.

di esecuzione

Ciò

prima

è necessario. però

per

alla

Problemi

Y . L unico

array.

passati

ve quanto

in tal modo

e il tempo

XE,

Q, c 8 ed

è indefinito

convessi

di un

I.

I. - .....

convessi

strati

i

Per

di CH Q .

altrimenti.

.

e se

01

nei

si ordinano

1gn

On

array

gli ordinati

cioè,

ricorsi

le chiamare

di esecuzione

se

passo

i punti array.

Questi

attraverso

determinare

per

ottenere gli

iniziale.

ridotti

di ogni

usate

preordinando

ricorsiva

un ulteriore

richiede

possono in

n3

un

11 3

su

che

dimostri

trovare

per

di

modello

qualunque

Qn

tempo

è richiesto

reali,

numeri

On

in tempo

algoritmo

Ign

strati

gli

calcolare

per

n

ordina

per di un

ccnvessi

strati

gli

Ign

Qn

richiede

che

calcolo

di r punti.

insieme

insieme

n punti. Dunque.

Tn

Qn

1pi

e T

On

n

Ign .

Sia

Il

Polveroni

professor

ricerca

della

esso

coppia

successivi P.

35.4-2

Senza

l insieme

coincidenti.

7

posizioni

La

distanza

Nel

piano,

è di

di esecuzione

uono

ogni

è allora

punto

prima

array

sulla

l nel

Si

si mostri

controllare

va non i punti

a.

come

contenga

nelle

distanza

due

tra

euclidea

della

coppia

distasiza

punti

ladistait -a

pii

definita

6 non

vicini

in modo

L,. che

è data Si

esso

diverso

da v,

L,,

anche

nota

Se j

k

Dati

due

modifichi la distanza

pe

l algoritmo

g , nel per

piano,

la distanza

IA ricereu

della

L coppia

tra

essi

.vj

è max s,

di punti

pii

vicini

si assuma

vuoti

e sia

non

esistano

che

Q.

i-,

y .

in modo

che

Si

c.

ui

Si

Sia

Q

tale

che

di qualunque lJ

Q

insieme

L

Q

del

y, l ordinata due

Per

lJ

Q

punti

piii

punti

il t i u

in Q che

meno

punto

Q

più

che

di Q sono a

di

strato

5

puati.

tempn

di Q tranne

che

in

L includi

inistra.

massimali

massitll llC

in

algoritnso ii

k strati

i primi

l, allora

.

l

j-

proprietà .

stessi

eli

si pone

caso

qual

y y nel

le seguenti

hanno

massimali

i

dall i i

i è distinto

cui

di Q e per

punto i

.v.

y, pa di

strati

nuovo

suo

un

descriva

di

in. rra di

y,.

massimali gli

l -esimo

k

massimali

roassimali

come

.Vlanhatta .

punti

.v.y

strati

gli

come

...

a sinistra

indice

l . allora

v,s

un 35.4-4

che

Se j

i.

di

punto

mostri

la ricerca

per

un punto

Sia j il minimo

LJ

Q

1 algoritmo

la distanza

euclideo.

quello

X

moditi hi usi

da

che ,

mostri

di qualunque

Y .

in modo

e p,

punti ,

è Ia distanza

quindi

dei

può

L ,trai

essere

Si

non

massimali ora,

organizzati

x e v.

coordinate

Si consideri

Per

l. 2, ....k.

essere di punti

i

t. mas,in al,

di Q è detto

punto

possono

di punti

il puntn

dwniiia

y

L, è l insieme

l iasietne

k strati

abbia

g

i

x. altro

che

massimale

L,è

massimale

che

in L per

le stesse

ricorsi

segue. strato

supponga

sinistra

b. 35.4-3

come

l. l i-esimo

i

massimali

punti live1lo

Il primo

il punto

da alcun

è dominato

molti

contenere

che

Si dice

piano. non

in Q che

punto

Q può

massimali I

linea stare

possonci

dell algoritmo, chiamata

sufficiente

nell

punti

di 6 punti

che

noti

nel

di n punti

y . Un

x e y

Si

ad

linea

professore

asintotico alla

passati

i 5 punti

solo

sulla

coppie

la

per

i punti

al più del

l algoritmo

punto,

sempre

Pertanto, schema

cui

ogni

per

essere

in P . dello

che

secondo

mettere

possono

e uno

di punti

Si dimostri

che e

vi

schema

controlla,

Lapidea

è l errore

il tempo

che

vicini

non in P,

Qual

aumentare

uno

più Y.

un punto

5 x 25

assicurare punti

di punti

Quindi,

con

rettangolo

iwentato

ne11 array

nell insieme coincidenti

ha

insieme

un

g

x 35.4-I

massimali

Strati

35-2

Eserrizi

On

di g

1gn

per

erimenrc .. .i

stessi

gli

retta

di Q ma

p

ghl

l .

X.

determinare un i

muova

sono

L

YUOtO

I1011

strati

gli di

mas inuli da

r istrcllamento

di

sinistra.

d.

Quali

difticoltil e y

coordinate,i

35-3

Fantasmi

J

SOl OilOSL

Si

ed

sug

pUllt 1

gllCi1

erisca

rtcchiappafantasmi

uv

md

cl

i per

p flllCltC

risolvere

che

i punti tuie

in

prnblema.

iiiput

abbisci

l

i

860

Capitolo

35

Acchiappafantasmi fantasma. ogni

decidono

formando

incrociare

accoppiamenti Si

assuma

fissato a.

in modo che

del

che

in modo di

strategia.

Ognuno

cosi

incrociare

ogni

al fantasma

i fasci

da

lui

marcato.

Come

devono

si sa,

nozioni

stava

studiando di

scegliere

ogni

fantasma

sia

un

quantità

punto

retta

che

attraverso

passa

di Acchiappafantasmi

stesso

lato.

un

Si descriva

come

lato

trovare

de

ed

la linea

tale

linea

sia

un

Si

dia

un

algoritmo

fantasmi

in

in modo

tale

tempo

che

On

nessun

1gi

per

fascio

accoppiare

di protoni

La

al numero

Acchiappafantasmi

gli

si incroci

con

con

Distribu ioni

Si consideri siano

il problema

stati

versione

di n punti

costante

e

0.

inviluppate

Tale

sono

I punti L ini

sono

I punti

sono

Dati

attesa

due

una

8

di punti

conosciuta.

ha dimensione inviluppai

su un

di

cerchio

del

Talvolta,

attesa

sparsa.

di raggio

di

nno

poli

convesso

attesa

distribuzione Eg

convesso

un

dimension

per

Esempi

l algoritmo

l inviluppo

On di

unitario.

qualche

distribuzioni

L inviluppo

di k lati,

per

convesso

costante

qualche

l-.

O lgn .

nornnle

bidimensionale.

L inviluppo

rispetti tutti

vumente

gli

1

11

ion

ed

ll

ri, vertici,

in tempo

punti

convesso

si mostri

O I1

t, .

I

ha

come

calcofare

poligoni

possono

sovrapporsi. b.

Si

mnstri

che

secondo

una

l inviluppo

si

Swgverinre to degli

quindi

Note

convesso

distribuzione

altri

trovino

n/2

di

inviluppata

un

e si combinino

di

n punti

essere

puo ..li

ricorsivamente

punti

insieme

sparsa

inviluppi

indipendentemente

presi

calcolato convessi

in tempo dei

atteso n/

primi

Oi . e

punti

i risultati.

al capitolo

Questo Libri

c ipitolo sulla

ha

trattato

cometri i

schem iticainentc

al

cotnputazion l

ciritmi

iticl dono

e tecniche c uelli

di

di

tris

geotmc

Preparat t

e

comput zionale.

Shainos

l60

e

di

EClt .1Yl3l Ul1llCI 60 .

Sebhene risohere

la problemi

genrnetria

sia COI11etrici

it itn è rl

itir ii lt i ili

in lll1Cll L

dall antichitè. tdvt

lite.

1n Preparata

inviluppo e Shamos

di

al

per

E.

data

su

disegno

di

e disegno

punto

una

nel

data

1902.

Egli un

e individuò

compasso

linea,

effettuare

Lemoine

e compasso

del

braccio

dato

un

una

di una

dato

punto.

circonferenza,

linea.

costruzione

Lemoine

chiamò

si

questa

costruzione. che

35.2

se dei

determina

segmenti

uritini

scgnalai o he

a Jarvis un

dimostrò

205

si trova

di Graham

dell algoritmo dovuto

si

è dovuto

intersecano

limite

inferiore

in Graham

un

Usando

112 .

I algoritmo

in considerazione.

richiede

tempo

On

1gh

Qn

modello

a

1gn

per

di

. L algoritmo

9

calcolo

di

il tempo

di

ad

albero

di di

esecuzione

di tempo

divide-et-impera ed

appare

in Preparata

e Shamos

On

pCI lc

è asintoticamente

ottimo

in un

di Kirkpatrick.

prune-and-search

è asintoticamente Ign l 60 .

che

piano

n .

convessi

poligoni

l inviluppo

ha

da

presi

dimensione

casuale

distribuzione è chiamata

all interno

presi

di un insieme

8n .

convesso

è

è preso che

è di Shamos

le seguenti

attesa

iluppo

tale

uniformemente

presi

convesso

distribuzione

distribuzione sono

dimensione

una

originale

L algoritmo

l inviluppo

qualche

da

presi

sparse

I punti ha

una

un

necessarie

della paragrafo

una

su

attraverso

da

righello

176 .

Yao

convesso

sparse

di calcolare

secondo

presi

convesso

a.

inviluppate

compasso

righello

un

usano

i

altro.

un

del

puntamento del

di primitive

impacchettamento

O nlp .

120 35-4

del

e Hoey

decisione, b.

bordo

che di

date

furono

problema quelle

I



fantasma

uguale

in tempo

primitive braccio

L algoritmo Acchiappafantasmi

un

da

euclidee

un

al numero semplicità la

Shamos

una

cinque di

passaggio

di un

complessità

costruzioni

del

interessò

e di

sulla

pnuntamento

collineari.

posizioni

prime

insieme

di protoni.

Acchiappafantasmi tre

un

contemporaneamente

Acchiappafantasmi

gli

marcherà

di loro

quindi

di protoni

di protoni,

vi siano

il numero sullo

fascio

far di

non

esiste

che

fantasmi

non

la posizione e che

piano

Si deduca

un i fasci

da

la seguente

Acchiuppafantasma-fantasma,

sparerà

pericoloso

uire

di se

i coppie

Acchiappafantasmi

è molto

centputazionale

geometrin

modello

e Seide

ottimo. per

trovare

Preparata ad

albero

la coppia e Shamos di decisione.

dei

punti

mostrano

più anche

vicini che

NP-completi

Problemi

Tutti su

n

k. È naturale

chiedersi

costante

è no.

la risposta

ma

che

di Turing,

non Ci

disponibile.

conce

polinomiale

un

problema

è spesso in

difficili

di tempo ad

oggi,

Per

della

quasi

le certezza di un

veloce

che

tlu.,so

sudi

una

Questo

pl l..lilt f1L

sono cl

fondamentale

questa

studi l

capitolo

11

fll

tutti

OlllClll,l

super

Come

se

ii

veda

esatto.

in eodo

ltd N l -completi.

inre, di

in tempo

tempo

Quindi

sarebbe

allora invece

37 , molti

i rudimenti

problemi

è impnrtante

dell i

allora

è 4P-completo.

sarh

progettista,

Inoltre.

studiati

stati

polino niale.

apprendere

un problema

il Capitolo

un algoritmo

sorso

polinomiale.

è necessario che

pntes e

P.

IIJP.

Jella

NP-colYlpletezzil

cile

si h

dedicasi

meglio di cercare

un algoritns

naturali

e interessanti

acquisire

familiaritè

problemi.

agli spelti

l

avrebbe

con

siano

NP-completo

problema

che

soluzioni

Questo di ricerca

NP-completi

i problemi

singolo

temi

dei

1971.

nel

proposto

di essi.

i P-completi

algoritmi stabilire

uno

tempo in grado

è stato

né qualcuno

e costituisce

di

classe con

algoritmo

NP-completo

risolti

di

approssiimatn

il problema

rete,

per

tempo

un

problema

verso

Se si puh

algoritmo

risolva

di tempo

di problemi

ogni

intratt debilitò.

sua

della

algoritmi

qualsiasi

che

crede

qualsiasi

numero

progelti t i

NP-completezza.

teoria

COI1

buon

un

progresso essere

potessero un

diventare

sviluppo

nessun

senza

con

uno

è stato

quando

allora

il grande

13ato

che

stupefacente

se

polinomiale,

polinomiale.

Qn

Nessun

ad

polinomiale P t NP

teorici

è che

motivazione

in tempo

risolto

essere

da

informatici

degli

parte La

tempo

in tempo

un interessante

di

studio

lo

è conosciuto. NP-completo.

come

sin

teorica.

informatica

non

super

tempo

sinteticamente

indicato

maggior

La

intrattabili.

stato

un problema

per

con

inferiore

limite

di fornire

dal

non

richiedono

che

problemi

riguarda

tuttavia, il cui

trovato

ancora

ai

Fermata-

della

intrattabili. capitolo.

NP-completi .

è stato

po1inomiale

e

trattabili.

ma

risolvibili

ai probtemi

qualche

per

polinomiale.

indipendentemente risolti,

essere

possono

si pensa

problemi

questo

chiamati.

problemi,

problemi

a problemi

di

L argomento

fino

a

calcolatore.

poEitromiale

è On

in tempo risolti Problema

il famoso

come

tempo

peggiore

essere

possano

da nessun che

k. Generalmente

come

polinomiale

più

anche

caso

nel

problemi,

risolti

essere

possono

sono

i problnni

ci sono

esempio,

Per

costante

qualsiasi

se tutri

con

algoritnri

sono

ad ora

di esecuzione

tempo

il loro

di dimensione

fino

studiati

stati

sona

che

algoritmi

gli input

rieu.lr l u10

più

direttanlelllc

olio

cot

t Problemi

Il

36.3 mostra riduzione .

paragrafo

attraverso

la

dimostrazione

del

completo.

fatto

Avendo che

la metodologia

si

essere

correlazioni

sono

problemi

e

si

nel

NP-completi

in modo

sia

si mostra

come

36.5

paragrafo

che

due

vari

sequenza

alcun

cammino. di

cammino

si

obiettivi

problemi

NP-completi.

ne

36.1

Tempo

polinomiale lo studio

in tempo di

ciò

polinomiale. ha

luogo,

intrattabile,

di grado

cosi

altro.

Per

seriale

con

esempio,

la classe

ad

con

la classe

il numero

quando

Si

risai

trattabili.

terzo

che

che

pratici

richiede

richiedono che

polinomiale

tempo

modello

essere

può

si incontrano

usata

un problema

risolto

risolvibili

problemi

maggior

in tempo

polinomiale

con

di problemi

risolvibili

ancora in tempo di

parte

che

polinomiale con

libro

k la

interessanti

classe

e alla

come

a procedure

con

infatti

in

tempo

ud

un

di tempo

sono

esempio,

altro

se

un

tempn

alla

di

i. anche

di

un

una

dell

serie

di

addizione,

algoritmo

un

tempo

composto

costante

Per

comprendere nozione

la classe

una

relazione

binaria

del

problema.

Per

cammino Un

più

istanza

Si veda macchina

Hnprrott di

Turino.

tra

due

k1 I XO- 1

e Vllman

risolvibili

prohlemi

che

è un

su l insieme esempio,

corto

di CAM

dei

di ciò

I delle si

dati

IN I 10

l 04 j o Leii

istmi e

consideri

vertici

in tempo

composto

atei

problema

il problema di

i un i

un tripla

ii e PRpailimitriou

grafo l ilta

139

si deve

pnlinomiale.

Si definisce

problema

astratto

e l insieme

S delle

una

e non e due

tr ittaziniic

orientato

eiiinplcta

il

avere

può

valori

teoria

della

il valore

fornita

come

è facile cio

in modo

ha

più

la

teoria

una

di

del

decisione.

dei

problema

di

problemi l importanza

ri r

velocemente,

Ito

Sempli-

di ottimizzazione, Perciò

se

un

la NP-completezza

si può

fornire

riferisca

allora

le

istanze

Anche

un

di

decisione.

la prova

che

di ottimizzazione

problema si

con

problema di

problema

il corrispondente

di

l.

comspondente.

il corrispondente

NP-completezza

del

diminu ce

problema

in

questi problema

zione

essere

può

essere

da ottimizzare.

in termini

di decisione

soluzione

un calore

la limit

non

di

problemi Per

riformulazione

ottimizzazione

per

più

minimo

la

anche

della

molto

di

u a v ha

ottimizzazione,

sul

problema

requisito

tacile

conveniente

applicabilità

da

Tipicantentc.

limitazione

questo

problema

e che

cammino

problema

piuttosto

di

problemi

imponga

dalla

dal

corto

ma

camminino del

il problema

è altrettanto

è arduo

benché

una

di

anche

input

allora

di decisione Quindi,

del

all istvnza

ottenuto

in G un

di questo

o minimizzati.

decisione. unu

problema

problema

In questo

un problema di Dati un grafo

e,

esiste

più

decisione,

ai di

decisione,

velocemente

si confronta

decisione.

di

negativo,

gli

fa comspondere

esempio.

è un istanza

massimizzati

imponendo

dell NP-completezza

se un

di

essere

problemi

del

si o no. che

minimo

il cammino

i P-completezza

come

problemi

Per

cammino

per l attenzio-

altrimenti.

no

devono

riformulato

risposta

I .

se

si

problemi

i è aggiunta

risolvere

è arduo.

I

una

0,

k non

occorre

focalizza

funzione

u, v, k

G,

che

quella

una

del

intero i

di

NP-completi

solo

ai

di

problemi

ampia.

è

Codifica

per

risolvere

un

si

problema

usa

un

pro

*r mm.i.

de1

sofu -ioni trovare G

Una

del

devono

p.oblema

g come

di

vertici.

ogni

Poiché

problema

il

quello

EBCDIC

Nel

codice

ASCII,

eA

strin ,a

binari,.

comhin., nd ,

I00000I.

onne to

i rrpo to

I

pesato

da un grafo

per

di un

esiste

avere

prima

un problema

CAMMINO-MINlMO non

istanza

come

soluzioni

Se

0

alcuni

In generale,

problema

Se

formale

vertici.

i due

non

associa

di chiamate

algoritmo

astratti

una

collega

soluzione

problema

numero

L.

sono

riformulazione

come

limitazione

un

non

essere

teoria

Riformulando

alla

di

l algoritmo

un numero

esecuzione

all

polinomiale.

Problemi

Ia

si piro

V ed al più

riformulati

nella

cemente, la

che

che

generale

come

CAMMINO i

CAiX1MIiNQ,

teoria.

al ora

c

CAMMINO i

può

esempio,

della

coincide

data

il fano

è la relazione

che

problemi

astratto

al

sia

la

hanno

delle

astratti

essere

Benché

dimensione

ha

rispetto

polinomiale, prevede

di

I,

che

dei

di decisione

riconducibile

allora

applicare

ottimizzazione

classe

paralle

relazione

di

decisionale

macchina

una

è più

la teoria

1 all insieme

u,v

in cui

ottimizzazione

risolto

Essa

polinomiale

chiusi 1 output

algoritmo

polinomiale il

polinomiale,

tempo

in

i polinomi Per

input

Se un algoritmo

risolvibili

problemi

composizione.

è passato

polinomiale è polinomiale.

vertici

astratto

problema

quelli

lunghezza

ottimizzazione

dei

di chiusura,

proprietà

moltiplicazione

due

al più

devono

con

la

stessa

di Turing .

su calcolatori

polinomiale

essere

può

polinomiale

astratte

polinomiale

in modo

istanze

problemi

On

in pratica,

in tempo

questo

le macchine

in tempo

cresce

E,

lunghezza

polinomiale

rappresenta

corto

più unico,

semplicità,

un problema

minimo,

grado

tempo

vuota stesso

al cammino

è necessariamente

di decisione vedere

u a v la cui

Per computazionali,

nella

la

diversi

vertici

Per

CAIvIMINO,

cammino

tempo.

modelli

di processori

luogo,

ragione

tre

i

la sequenza

CAMivtINO-MINIMO

di

capitolo.

delle

V,

dove

grafo

8á5

soluzione.

ottimizzazione,

ad un problema

dell input. In

La

considerare

possono

vibil

non

l insieme

da di problemi

breve

si può

Molti

in tempo

meno

dei

diretto

risolvibili

problemi anche

accesso

un

considerati

problemi

calcolabili

numerosi

polinomiale

generalmente

riferirsi

pochi

molto

per

Ia nozione

matematiche.

ragionevole

I problemi

luogo.

formalizzando

più

decisione

affermazione.

veramente

richiedono

In secondo in tempo

sia

ci sono alto.

generalmente

e non

di questa

benché

sono

problemi

filosofiche

a supporto

In primo

NP-completezza

Questi

motivazioni

argomenti

come

della

e due

sui problemi

G Cominciamo

grafo

del

caso,

del

Il problema

formulazione

Questa

di

di vertici

un

di una

più

con

problemi

si esaminano

è una

istanza

NP-

semplice

più

mostrando

una

circuiti ,

decisamente

è illustrata Bel

36.4

paragrafo

studiate

schematizza

di

metodologia

NP-completi.

essere

possano

NP-completezza soddisfattibilità

NP-completo,

sono La

la

chiamato

problema

problemi

tra

definisce

il problema,

riduzione.

formule

risultano

le

esso

un

altri

della

soddisfattibiliè di che

che

trovato

dimostrare

possa

come In

P/P-comp1eri

sul uziui

nuiLlelli

c edificato

V.E .

ululi

come

un,

ie

l

un

. lfahelo

1initu

coit

lilla IIII

lue

ili..nu.

nti.

le

r.-tppresentai.irmi,tel1,

...,e

puii componenti.

empiere

S6á

Capitolo

Poligoni,

grati,

stringhe

binarie.

istanze

tempo

risolve

adesso

definire

Qn

codificati

sono

Un

quando

in tesnpo

costante

viene

gli

k. l insieme

dei

Per

far

corrispondere

su

l , una

0,

di decisione i c

codifica

l è Qi

stringhe

binarie

supporre

di far

problemi

soluzioni

anche

che

di

un

essa intero

di esecuzione

l sia

il tempo

tempo

polinomiale.

di esecuzione

la lunghezza 82 ,

coditica, La

dell input che

polinomiale.

prima

avere

costose

che

binarie

usando

da

come

dalla di un

l intero

Quindi. intluenza

è On

il

Per

algoritmo.

nella

nella

una

che

l. In questo rispetto o in tempo

non

si puh

stringa

di l cle

del l ii1tero

di esecuzione

de l l input.

abbastanza

Ciononostante, di un

a secnnda

Quindi,

del che

polinomiale.

nella

cnmprensione

in pratica. ha

prohlnna

scar.,a

i

escludnno

influenza

l è un

in base

in base

3 può

Si ùice un

es ere

che

una

al,,oritnto

come

output

3 piuttosto

in b iute

convertito tunzione

A c ,n f

che

tempo Per

x.

un

in h se f

0.

l

pnlinoi,iiale dato

insieme

2 nnn

ha

alcun

2 in tempo 0. che.

t dato

effetto.

poiché

un

intero

cnme

input

di

problema.

lantana.

se

due

si dice

e che

Conte

i

n1ostralo

ncl, cg enlc

coditicllC

C

ed

codifiche

On , di

tempo

suo

del

lungo

poiché

l output

esecuzione

c che

sia

La

questo

poiché

produrre con

il problema

risolvere

Per

unitario.

tutto

a fare

e, i

c. dove e quindi

e, i

calcolare

impiega

si

e perciò

per

la codifica

costante

qualche

per

On

problema,

prima

il verso

che

dato to in tempo

riso i del

On

tempo On

tra

si

e, i

costanti.

I,- sono

cnme

parentesi

tra

l oggetto

si racchiuderà

che

angolate

parentesi

te

per

esempio,

precisi.

si assumerà

sua

binaria. come

codifica

tale

di un

esempio

lista

schema

codifiche

ragionevoli

di un

la codifica

per

oggetto del

la codifica

rappresenta

G

1e

e conciso.

piii

denotare

Per

e formule.

gratt

che

ragionevole

alla

polinomialmente

cambiare.

può

si assume

rappresentazione

sua

alla

è un da virgole. ASCII tipo, derivare si possono

cnditica ir-uple.

essere

Per

altrimenti.

non

cio

potinomiale

G. sarh

a che

una

usata

in tempo

specificato

si dovrebbe

Tuttavia.

concretn.

e puh

nun Fovvia

arè

Inoltre

diversansente.

distinzione

che

possono

nella

differenza

una

del

le istanze che

sia

non

tra

tipo.

particolare sia

il problema

che

fatto

tutte

a meno

tipo.

problemi una

implicare

che

la

trascurata

riflettere.maui

il

influenza

ci assumerà

la cndifica

usando

binarie

stringhe

non

in poi,

D ora

ad

riferimento

fare

codifica

a questa

polinomialmente senza

astratti

coditica

della

scelta

polinomiale.

con

codificate

correlata

su problemi

la

che

sapendo

sia

che

codifica

direttatnente

ragionare

siano

il

modello

3.

tempo

generalmente

un qualunque

sia correlata

in complessità

la sua

allora codifica,

base

o in

binario

risolvibile

sia

polinomialmente

e separati

matematici

oggetti

dalla

secondo

finito

insieme

di un

esso

in unario

correlata

in

codificate

che

specificato

sia

intero

questa

esplicitamene

astratto

problema in pratica

nascere

problema

quando

complessith.

rappre entato

0. due

dei

paradigma

lingua

formali

i

se e i.,te 1

produce

codifich

c, eli un

prol lcm i

dei

U110

vantaggi

che

si

allo

limitanclo i

otteneonn

dei

studio

prnbleei

eli

decisione

è il

t ttto

gi ai

delle

,

ie

viceversa.

di un

Utilizzando

risolvibile

senza

fatto

poti onriale

un qualsiasi.,

f eli istanze

il

P.

c

essere

si deve

e, i ,

indipendente

codificate

chiusi

Il in tempo

e, e e, due

e siano e, Q

istanza

in tempo

il tatto

coditicute

esplicitamente

sia

di codifica.

codifica, del

polinomiale.

è calcolabile

non

di elementi,

la codifica tazione

qualsiasi

istanze

le

ha

sono

siano

problema

1a coditica

altri

codifiche sul

se

possa

è polinomiale

che

in mndo

de 11

actr itto

prohlema

se

più

cioè

se le istanze

la coditica

si potrh

super

per

tempo

dell algoritn1o

impomatante di un

essere

astratto

problema complessità ,

a ragionare

istanze

I, allora

o in tempo

di risolvihilitè

un sua

ma

a meno

Fino

polinomiale

p ir are

la codit-,ca

il tempn

dimensione

è per-iè

coùifica.

unaria.

alla

caso

se

no

e che

il tempo

n dell input. binaria

tempo

On ,

O e, i

la

riuscire

che

ii suppon-

esempio.

in unario dimensione

i orremmo

è codificato.

e si supponga

rappresentazione

in tempo

t efficienza

problema

che

il fatto

influenza

dell implicazione

e, Q

Quanto

un

almeno

rappresen-

ma

Cioè,

coditica.

k è fornito

la comune

la codifica,

può

richiede

uscita

tempn

può

concreto

risolvibile

codifica.

particolare

input

Se

e si usa

di problema

non

seriale

in

verso

un

che

e, i

e, i .

su impiega

de1

si

che

non

alcune

semplicità. il problema

di stringhe

astratto

strettamente

8k.

codifiche

bit

ciascun

istanza tecnica

Per

istanze.

in ingresso

avendo

e, Q

per

delle

che

codifica

dalla e, Q ,

l algoritmo

calcolatore

un

di

oppure

dipendere

unico

astrattn

una

quella

difficoltà

0. Quindi,

su istanze

dalla

piuttosto

è eseguito

In realtà.

come

corrispondente

astratto.

il valore

problema di un problema

impiega

la piccola

la definizione

dovrebbe

è esponenziale

specifieatn

della

istanza

Per

LlgtJ

di un problema

tempo

un corrispondente

perciò.

si supponga

calcolata

risolvere

valori

grafo

è n

l algoritmo codifica

eseguire

di un

problema

astratto

dell nlgnritmo

Tu t th via,

le codifiche.

di istanze1

astratto.

indipendente

sia

essere

al problema

come

dell algoriteso

allora

è 84

fornito

soluzione

del

di estendere

dipende

ottenere

per

stringhe

problema problema

non

problema

Sfortunatamente. che

fosse

Ci può

queste

usare

ad un insieme

Se la soluzione la

istanze

concreto

problema

un

è gi.

è quello

la definizione

risoluzione

ga

del del

ora

dal

1

usata

eg.

anche

a tutte

di istanze

obiettivo

polinomiale

0.

allora

rappresentano

corrispondere

la coditica

Il nostro

s

con

si possono

Per

e, i .

conversione

essere

puo

concreti

fa comspondere

Si supponga,

k. Inoltre,

essere

possa

polinomiale.

a problemi Q che

denotato 1.

0.

ei

1

0.

sarà

e

non

le stesse

produce

astratto

e. lche

concreto

problema

tino

di decisione

concreto

astratto

astratti

problemi

un problema

Edi

P se e solo

e

solo

dimostrare

È necessario

costante

qualche

h Dato

usare

insieme

e, Q

Allora

polinomialmente.

è simmetrico.

contrario

P come

su un

astratto

di decisione

Dimostra ione.

un

e, i

in tempo

di quale

polinomiale.

in

se esiste

polinomiale

in tempo

3á. l

O un problema

di I correlate

fornita al più

la scelta

polinomialmente. risolvibile

o no

sia

Lemvm Sia

Si dice

la soluzione

produce

ch couiplessirà

la classe

risolvibili

se,

di

concreto.

problema

può

in

insieme

correlate

sono

astrano

come

astratto.

il cui

problema

OTn

è risolvibile qualche

di decisione

problema

si chiama

in tempo

per

formalmente che

un

i , l algoritmo

concreto

in tempo

concreti

n

problema

risolverlo

per

decisione

essere

possono

problema.

binarie

concreto

di lunghezza un

del

di stringhe

un problema

Perciò

risolva

che

dell istmza

insieme

proble

OTn .

Si può

codifica

in un

i del

algoritmo

di

una

è codificato

istanza

tutti

programmi

un calcolatore

per

in input

un algoritmo

un

ordinate,

problema

prende

che

coppie

un aIgoritmo

Quindi. realtà

funzioni,

867

PfP-completi

Problemi

36

Z

U.

I .

l ittsicmc

L

lO.

ll.

l

I.

I I l.

IOI

I,

l 1 .

lù0 l....

è

il

lin

ua

868

Capitolo

36 Problemi

rappresentazioni vuoto

binarie

con

allora

Z

È

0,

e,

linguaggio

L su

come

Si

definisce

è il linguaggio

L

x,x

La

chiusura

L

z

00,

01,

Z è un

10,

serie

l i,

di

000,

...

vuota

con

è l insieme

con

Z . Per

di

tutte

e, ed il linguaggio

esempio.

le

se Z

stringhe

Per 1 j,

0,

binarie.

esempio,

algoritmo corto

Ogni

. sui

linguaggi.

derivano L

Le

direttamente

Z

L. La

operazioni dalle

della

definizioni

concatenazione

teoria

tra

linguaggi

L, e

del

. x, e

L,

e .v, s

I

vL

di Kleene

uL vL

di un

linguaggio

ma

L è il linguaggio

come

dove

L

è il linguaggio

ottenuto

concatenando

L con

se stesso

dell

/- volte.

Dal di

di vista

punto

decisione istanze

quelle linguaggio L

del L su

.v e

della

teoria

dei

Q è semplicemente

Z

che

problema Z

l

l insieme X,

dove

la risposta

prnducono

delle

istanze

0,

l . Poiché

Z l

di qualunque

si puo

si ,

g

problema è caratterizzato da

considerare

g

I . dove

0,

gx

linguaggi,

l insieme

come

un

Usando della

esempio,

di decisione

u, v, t

G,

G V,

CAMMINO E

1

M,

sia

il problema

riconosce

stringhe

una

Anche

stringa da

che

un

se un linguaggio

L è deciso

da

un

0,

da

nome

L

In

di Turing,

tale

un

deve

CAMMINO.

algoritmo

esiste

CAMMINO

per a

Per

di decisione.

algoritmo

un

Per

a tri

di riconoscimento

una

se

classe

di complessità

è determinata una

data

stringa

In realtà

interessato

in

fare

un

insieme

ad

una

misura

x appartiene

la detmizione

può

come base

al

di classe

riferimento

alla

di linguaggi, di

per

complessità

linguaggio

L,

di complessità

come

ad

è qualcosa fondamentale

pubblicazione

95 . della

teoria

linguaggi.

dei

fornire

si può

una

definizione

alternati

a

P

1

0. P

effetti

esiste

un

anche

è

Un

lunghezza

in questo

di esprimere

x conce L

igoritmo da

u a v in G la cui

è a1 più

caso

per

I

input, v

in modo

Si dice

c

0,

A rifcula un al

oritmo

A se ogni

stringa

stringa.v

perqualiiusi

P

.

algoritmo

c1asse

la

A che

dei

decide

linguaggi

L in tempo

che

polinomiale . essere

possono

riconosciciri

in

tempo

che

Ax l

un I.

Dimostrazione.

Il

.

Poiclté

A aerata

o

esso

accettato

o

un qualche simulazione

1 , cioè,

non

un

delle

0.

dimostrare

è decidibile

riconosce

la classe

classe

dei

solo un

da

algoritmo

A definire

L in tempo

dei

di tempo

O ii

linguaggi

linguaggi

che

.

polinomiale

con un per

decisi

da algoritmi

riconosciuti

da

se E è riconosciuto

algoritmo

algoritmo per

x se A x

A. I algoritmo

di 1iin he z

l insieme

della

necessario

Il linguaggio

stringa

binaria

la relazione

algoritmo

Av uita

conciso

da

indicar

di tempo tempo algnritmo qualche

da

un

4

per

e stante

L risulta

l-, esiste

di

anche

un

tempo

polinomiale, riconosciuto

da

argomento

decidibile.

una

è

polinomiale,

classico

anche

è un

polinomiale

tempo

L il linguaggio

use

Si il quale

di

algoritmo Sia

polinomiale.

polinomiale.

di tempo

algoritmi

costatate

di

Poiché c tale

che

necessariamen-

in L è accettata

i st. l algnritino

da A e ogni

uccetta

di A. Se A ha

esecuzione /ll

Si

1e trin. l1a .

362

L è riconosciuto

L

sottoinsieme

dato

da un algoritmo

tutte

c

polinomiale.

linguaggio.

li risolvono.

A è I insieme

ie,

linguageio

orientato,

CAMlvfINO

che

L è riconosci ito

algoritmnA

il corrispondente

A

cc rrcttaininle

Fenicata

determina

complessità

e

ci permette

I * se,

accetta.

l

rif ut tre

un

progettare

decisione

da

di decisione.

classe

il paradigma

Teorema

intern,

il corrispondente

e algnritmi x e

non

grafo

lo stesso

formali

algoritmo

l algoritmo

linguaggio

polinomia1e

linguaggi

di decisione

problemi

riconosciuto

Un

dei

che

ha

un carnn ino

si userh

di decisione

Il paradigma tra

spesso

è un

è un

esiste è utile,

appartengono

è deciso la lunghezza

V,

E

O

I

Quando

di

non

0 quando

.

il problema

CAMlIINO

della

algoritmo

che

è semplice

il lettore

di

Un

Altrimenti.

non

CAMMINO

più

la distanza

poi

l e si ferma.

esplicitamente

Un

il cammino

e confrontando

Il linguaggio

8

polinomiale.

calcola

restituisce

restituisce

stringhe

alla

e Stearns

classe

le

di esecuzione.

complicato

Hartmanis

P Per

che

il tempo

di k.

grande

informalmente

algoritmo

di più di

non

l appartenenza

esempio

in ampiezza

all infinito.

tutte

in tempo

linguaggio,

l algoritmo

l algoritmo

algoritmo

definire

i quali

ricerca

esecuzione

è più

riconosciuto

questo

che

il problema un

essere

la sua

CAMMINO,

esiste

non Si può

u...,

I . allora

minimo

come

problemi. o stel/a

una

è aI più

esplicitamente

problema

.

usando

dato

cammino

riconosce

la distanza

continua

rifiutare

può

che

u e v in G,

k. Se

algoritmo.

questo

CAMMIND

polinomiale,

i vertici con

l algoritmo

degli

insiemistiche.

di due

il linguaggio

di tempo

ottenuta

operazioni

di L come

la stringa

su Z è denotato

di Z

ed intersezione,

il complemento

Si denota

primi. le stringhe

sottoinsieme

una

unione

I

numeri

di tutte

I,

tutta

prevista

insiemi,

dei

$. Il linguaggio

iVP-compleri

per

tClllpO

noti

accettato

piii

pE llllOI11l

che

la

x, allora

di un

trovare

I algw-itmo

accetta

polinomiale

i restituendo

e quindi

un

1. Se A i on

il linguag

ha

accettato

io L è deciso

x. allora

dall algoritmo

JIC.

din,nstrazione

I ..

di

fattnre

A

A.

del

Teorenn,

36.

non

costruttiv,.

Per

un

dato

linguaggio

A A

870

36

Capitolo

problemi

i P-comp/eti

87

Esercizi

36. I-l

Si

definisca

il

g AS5livtp e due

vertici

definisca è un da

non v

G

ottimizzazione

una

in

un

definizione

intero,

almeno

lì .

ed

esiste

Si

mostri

un

non

tra

i due

G,

u, v, I

una

una

codifica

formale

rappresentazione

di un grafo

lista

trovare

il

essere

risolto

semplice

che

di

di decisione.

di stringhe

binarie

lo stesso

usando

Si faccia

Si mostri

più

problema

in termini

di adiacenza.

di adiacenza.

di

problema

il ciclo

al problema

orientato

matrice

E

semplice

il

comspondente

corrispondente

con

con

di

determini

Si

G V.

c P.

problema

Si

il linguaggio

rappresentazione

correlate

del

orientato.

orientato vertici.

cammino che

se CAMMINO-MASSIMO

formale

non

grafo

Si determini

ic no

0 è un è

se e solo

Si definisca

u.ande una

ti, v e V, k

polinomiale

decisione.

36,1-3

di un grafo lungo

più

LUNGHEZZA-DEL-CAMMINO-MASSIMO

Si fornisca lungo

istanza

semplice

CAMMINO-MASSIMO

lunghezza

cui

ciascuna

cammino

di decisione

la

LUNGHEZZA-DEL-CAMMINO-

associa

può

in tempo

36. 1-2

del

orientato,

in

che

lunghezza

il problema

a

ottimizzazione

la relazione

alla

mafo u

di

problema

come

le due

a

L J goritmo

l amiltoitiano

di programmazione

nell Esercizio

17.2-2,

è

dinamica un

il problema

per

algoritmo

di

linguaggio

L vi sia

tempo

de ll o zaino

0-1.

Si

pnlinomiale

mostrato di

grafo

la

stringa

che

x c L in

polinomiale tempo

3á.1-6

tempo

certo

x E L.

quando

ma

polinomiale, Si

mostri

un

algoritmo

l algoritmo

che

L può

sia essere

che

accetta

eseguito deciso

un

da

qualsiasi

in tempo da

numero

che

un algoritmo

costante

che

di chiamate ma

polinomiale.

Si

decisione

super

algoritmo

zero.

di

in grigio.

ri n

tipo

b

Lr

graf

p

dnpo

tutto.

tempo

della

che

comportare

Si mostri uni ne.

un

che

b

un

effettua

non

t

impiega

rt ticato

esaminerà con

seriirci

sembr t

adesso

tempo

un

molto

lo stesso

il quale

per

problema

dato

eppure.

polinomiale.

numero

tempo

e al più

polinomiale è eseguito

polinomiale,

di chiansate

polinomiale di

in tempo

di tempo

un

risulta

P,

allora

collèJr I. li1

polinomiali

P. vista

come

un

L. z

insieme

di

complemento

lingua

è chiuiu

gi.

e stella

un

lice ic

che

un

contiene

hamiltoniano

ciclo

in un di

hamiltoniano vertice di

ciclo

ciascun . altrimenti

esso ..

V.. Un

è beton

non

grafo un

grafo

grafo

che

1tainiltoniann. f

orie non

ntato

è studiato

orientato

G

un

contiene con

in.

Bond

a tt

Ciaè

trovare

Formalmente,

e o hasniltoniano detto r

rispetto

di Kleene.

d

bl

secolo.

lun hezz,

. a .

è

algoritmi

fornito è al

i,rù.. biamente

più

da

ciclo

è

hamiltoniano

y e Murty y d e rn cutivi

P. ecc.

un

oltre

è u

Q

scelti

ti ura a

una

citano

31

36.

I a

iacere.

mentre

tutti

i vertici.

contenea

j

polinomiale

Qdessu

Ji

verifica

Lj

cllè .

non

YCriticano

I appartenenza

a

un

fin

u ig

i .

sono

anche l,

e

un se

appartic e,

è s, ,,i.

. ammino al1nr,.i Cs

p si I k1lNO.

du puo

ii

a

v.

Si

coniiclerarc Per

il

t cilfllClltC

puo

problcm,

g,

cnme di

verificare un

c1eciiione

-ccrtit-,c,t

Per

con

il linguaggio

.ral tdi

.-

..

.

il problenln

del

. ciclo

han,ittoniano.

.

-Un

rafo

G h un

ci lo

A i 1 I LTON

lAiSO

i.

Ci

i

Llll

.

llilllliltoniuno

Cl llù

Xl I N . Qu,le

e

pui, i

untoti

humiltnniaiin .

t rmale

se It ,.hc CICLO-H

CAM

sc

hansiltonizni.

Si i pui i Jefinire

liti.,t.,nz

i

algoritmo della

in tempo Il

a procedure

esponenziale.

concatenazione, L, u

in tempo

At1s11S0

alcun

nnto p roblema

certificato,

in

delproblemapartendo

risoluzione non

a P

pp artiene

C.

un

numeroùi pariùivertici. Si

ciclo

è Itarniltonienin.

che

Verific,

un

hamiltoniani

Cicli

operazioni

a procedure

algoritmo

classe

intersezione,

e L-

3á.2

con

semplice.

cm em 3á.1-7

i /chi

polinomiale.

Si mostri

pui

un

per

gli

questo

certificato

questo

d Si supponga

36.1-5

con

richiesto

giustitichi

ri.-po ta.

dgde aedro,

q/i

rappresentazioni

polinomialmente.

Qua1siasi

3á.l-4

b

., es,ere

un

al,.oritmo

di,l,.ci.,ione .

per

il

lingua,agioa

ch io

C1CLQ-HAIXIILTOiVIAiNO.

o

Capitolo

36

Data

istanza G

un

del

le permutazioni

dei

hamiltoniano. ragionevale è Q zn ,

dei

è On

nel

Algoritmi

di

Si

consideri

sostenga

che

che

fanno

ne.

semplicemente

in

effetti,

tuttavia

un

un dato

grafo

del

parte

ciclo

Si definisce

un

che

y tale

che

di

è Qm

algoritmo ciclo

G.

Q

usa

Ci

sono

la

i

codifica del

, che

di

in tempo

è NP-completo,

come

si

verifica

il ciclo ogni essere

può codifica

A a due

è una

realizzato

A a due

ed

amico Figura

ordinati

una

la sua

che

veramente

eseguito che

da

un

dove

binaria

1

0,

esiste

algoritmo

P c

O rè ,

un argomento

Intuitivamente, certificato non

un

y che

ci devono

y e algoritmo

A può

essere

usare

il certjficato

hamiltoniano.

il

La

sicuro,

classe

La classe

di

se e. intono L Si

.r c àice

che

0,

algoritmo 1

esiste

l algoritlllO

A x, un

dimostrino lista

dei

a

NP

L se per

nel

offre

ogni

vuoto.

Si

il

decide

per

è

ciclo

nessuna

è hamiltoniano, il ciclo

lista dato

che

di

un

a

vertici

L,

In

ciascun

propria

tra

ma

diagrammava. insiemi.

P

a

la

come

questa

possibi1ità

piti

NP

probabile.

allora

input

se P

NP

classe

La

verificata.

è

P

in

Spesso,

dai

costituita dai

è costituita

else

ed

accetta

NP. 1a stessa

siano

risolti

essere

soluzione

può

far

informatici

classi

P ed

NP

una

evidenza

di verifica



proposto.

teorici,

te. Gli

e che

classe

fondamentali.

domande

altre

Molte

che

questa

linguaggi

che

non

nel

un

estendere

alle

in P. di

l esistenza

NP-

linguaggi

36.3.

paragrafo oltre

si possa

analogia sono

P w NP

che

convincente

più

questa

ritengono

includa

NP

ancora

Si studierh

completi .

generalmente,

quindi

essere

risolvere

che

sembra

pratica,

non

possono

una

i quali

per

problemi

P c

P ed NP

un

in

trasformato

L. Quindi

che

problemi

all e perienza

base

ad

credono

è

non

polinomiale

cettificato

qualsiasi

appartenere

ricercatori

molti

tuttavia classe

la

ignora

determina

di tempo

facilmente

essere

può

semplicemente

CICLO-

importante

insieme

algoritmo

un

se esiste

poiché.

l a1goritmo che

esso

che

NP,

XP.

un

che

che

segue

hamiltoniano,

è

griifo

possa

L,

Intuitivamente,

facilmente

ciclo

L c

stringhe

si conosce

velocemente.

verificvrlo.

che

l algoritmo

x e del

Se

sufficienti

inclusione

sapere

confortante

sempre

È

a due

quelle

classe.

L, c è un

problema

hamiltoniano.

infnrmazioni

esiste

c stringa

qualunque

di

ciclo

del

problema

P allora

linguaggio verifica

di

algoritmo

del

NP.

e se L e

Inoltre,

che

un certificato

stringa.i-

esempio,nel

conrp1essirà.

indica

ricercatori

dei

amarre

analisi

precedente

Non

L. Inoltre,

maggior

La

co-NP.

HAMILTONIANO

è una

.

c L. Per

vertici

non

che

x c

che

stesso

è hamiltoniano,

1

y

linguaggio che

il grafo sistematicamente

complessità

un

che

di verifica

controlla

di complessità

che

dimostrare

è la

non

ad un algoritmo

essere

per

hamiltoniano

se un grafo

credere per

ciclo

tale

A verifica

certificati

hamiltoniano.

Viceversa,

l

0,

rela ione

una

di

un

certificato.

se esiste

A di verifica

classi

grafo.

esiste

grafo

y chiamata

x di input

le

è una

nel

in tempo

in un

indica

u t,altra

racchiude

ne

tra

rela-ioidi

possibili

quattro

dimostrazio-

Dalla

stringa

Le

36.2 e che

esiste

argomenti,

stringa

verifica verificai

un

polinomiale.

particolare

argomenti

i vertici

verificando

ciclo

del

la dimostrazione

in tempo

che

fornisca

hamiltoniano,

consecutivo

un algòritmo

1. Il linguaggio

sia

supponga

verificare

Quindi,

verificata

e 1 altro

semplice

certamente

di G.

di verifica

di input

per

fornito

arco

Si

dimostrarlo,

È certamente

che

essere

può

algoritmo

e che,

d

semplice.

più

G è hamiltoniano

della

A r,y

.r e

0

a

non

esattamente L

co-NP

NP

possibili

è eseguito

co-NP

NP P

vertici

Q2

non

tune

cammino

m dei

ir

ingenuo

hamiltoniano

leggermente

problema

di V e che

algoritmo

dice

del

hamiltoniano.

vertici

hamiltoniano

stringai

questo

problema

si

il numero

codifica

di esecuzione

k. Quindi, il

si controlla dei

comune

del

elencare se è un

Se

di adiacenza,

lunghezza

il tempo

algoritmo

questo

matrice

dovrebbe vedere

per

è6.5.

n è la lunghezza

ciclo

di

di esse

verifica

algoritmo

Questo

e perciò

paragrafo

permutazione

dove

esecuzione

è la

di decisione

ciascuna

la sua

G

costante

ed

dimostrerè

n

vertici

nessuna

per

polinomiale,

di

algoritmo

verificare

attraverso

grafo

dove

permutazioni

di G e poi

è il tempo

Qual di un

grafo

un possibile

problema,

vertici

879

1VP-completi

Problemi 87

P c

al quesito

NP,

ono

riman

Malgrado

aperte.

NP

Sil

è la classe

A z due un

linguaggi

argomenti

certificato

rh Verifica

dei

y cnn il linguaggio

che

di tempo

y

ed

poliisomiale

O .rf , L in

essere

pnssono

tempo

t Ic

che

A r,

verificati

una

y

costante

medi mte

c tale

in

NP

come

dei

l insieme

i L tali

linguag

che

L c

NP.

Il

quesito

se

NP

è chiu o

rispetto

che

1 .

in

NP

n

P.

cn-NP

La

ti ura

36.2

mo tra

i quattro

possibili

caii.

polinomiale. I

dimostrare calcolo

non

dcterrnii istici.

si potrebbe

cle

un prohlens tè

supporre.

intr

i t it il c. ila un punto

ali viit

i pralico

noni.

coii

pciante

come

874

Capitolo

36

875

NP-completi

Problesni

Esercizi

36.3 Si consideri

36.2-I

il linguaggio

isomorfi

grafi

Si dimostri

36.2-2

che

G è un

G è non

G,

G,,

ISOMORFISMO-Dl-GRAFI

polinomiale

se

che allora

vertici,

che

. Si dimostri di tempo

algoritmo

ISGiv1ORFISMO-DI-GRAFI

verifichi

G, e G,

c NP

descrivendo

un la ragione

Forse

il linguaggio.

non

bipartito

orientato

con

un

numero

dispari

un

di

di NP

che,

Si mostri

36.2-3

se CICLO-HAMILTONIANO

i vertici

ordine

di un

ciclo

e

hamiltoniano

P, allora

è risolvibile

il problema

in

tempo

di elencare

HAMILTONIANO chg

Si dimostri

36.2-4

la classe

dei

linguaggi

concatenazione

intersezione, all operazione

è chiusa

NP

e stella

rispetto

di Kleene.

al1e

Si discuta

operazioni

di unione,

la chiusura

Si mostri

che

eseguito

linguaggio

qualsiasi 2

in tempo

per

di NP

può

essere

deciso

un

con

algoritmo

è

che

nozione

I,-.

costante

qualche

cammino

vertici

haittiltoniano

esattamente

in un

appartiene

Si mostri

36.2-7

volta.

Si

G,

u, v

c è un

cammino

mostri

che

cammino

s il

h e visita

l

linguaggio

i

tutti

CAMMINO-

hamiitoniano

u a v nel

da

che

il problema un

per

del

cammino senza

orientato

grafo

hamiltoniano cicli.

essere

può

Si dia

un

risolto

algoritmo

in tem

efficiente

o per

Sia

p una

formulai

la negazione se

vale

booleana AND

, ogni

1 per

TAUTOLOGIA mostri

che

costruita n,

OR

con

e parentesi.

v

di

assegnamento

come

il

inguaggio

TAUTOLOGIA

le variabili

l

delle

e ù

booleane

Questa alle

formule

di input

formula

è

variabili

di

input.

booleane

che

sono

x,. x ...,

una

s .,

un

di

istanza

tautologie.

Si dimostri

che

P c

36.2-10

Si

che

se

dimostri

.l

P c co-NP.

La

36.2-l

E

Sia

G un grafo

cnnnettendo lsin hezza un

albero

non tutte

.. a

orientato

connesso

le coppie

.. Si S ddimo,lri p iù 3. -r tura di co per G.

con

di vertici che

Ci

e si usi

che

almeno in

G

3 vertici, sono

è humiltoniano. un

dimostrazione

e sia

connessi

G

il grafo

da

un

., S ggerinre ,ro, per

ottenuto

caminino ii costrui.,c, cos rui c i si

. Per

polinomiale

altri

ntolti

che

essere

ridotto

in NP.

una

linguaggio.

un

si

36.5

paragrafo

sono

problemi

In questo

si definiscono

che Nel

P.

NP

usando

cosa,

prima

si

allora P dovesse

4P

linguaggi

la dimostrazione

si abbozza

mostrare

YP-completi.

se

funzione

calcola

di

La

e

solo

f f

figura

se

f

.r

chiama

si

da

formali

equazioni

quadratiche.

soluzione

fornisce

la cui

0, ad

un

una allora

Q.

problema

-

1

0,

e si scrive

L,.

tale

l

0,

L, che

un

che

si dice

di decisinne.

linguaggio f

polinomiale

altro

g.

un

ad

poIinomiale

di

di risolvere

di risolvere

i problemi

per

qualsiasi

soluzione

il problema

Q si riduce di

una

e la

Q.

esempio,

f

ac-

risolvere

in tempo

e

se

L,.

ogni

per

di

fiat -imene

di

l idea

una

un

in

riduzione ii

linguag

Ciascun

ed

ridu lone,

F

algoritmo

di

tempo

che

pnlinnmialè

ir ne.

ridu

di

36.3 Htlustra L,.

36.1

L-.

ulgoritmo

è detto

linguaggio

un

problema

di

1 *,

0,

L,

se un arduo

in tempo

calcòlabile

funzione

al problema

se

Q

problema

un istanza Per

Q.

in Ax

linguaggi

dei

paradigma

di

all istanza si riduce

0. Quindi. non più

altro

un

ad come

riformulata

si trasforma

0,

L, è riducibile una

E

.v c

P w i P.

allora

per

è

senso, al

linguaggio

co-NP.

CICLO-

s

ardui di

è NP-completo.

soluzione

b b

di a

esiste 36.2-9

in tempo

se

Infatti.

relativa

complessità

la

e poi

incognita.r,

in un ax

certo

Tornando

Si

e. co-NP.

Se

polinomiale

i linguaggi

senso,

certo

in un

Q può facilmente

una

fornisce lit cari

un

in

problema essere

Q può

un istanza

Data

Q.

definisca

tempo

più

di riducibilità

Intuitivamente,

soluzione

tautologia Si

qualsiasi

Riducibilità

equazioni 36.2-8

di

un

CICLO-HAMILTONIANO

SODDISFATTIBILITÀ-DI-CIRCUITI,

quest ultima

problema.

NP-completo. con

polinomiale.

che

certezza

NP-completi,

i linguaggi

la nozinne

userà

I

grafo

a NP.

polinomiale questo

grafo

una

HAMILTONIANO G

è un

chiamata

precisa

formalmente chiamato

Un

36.2-á

anni

Malgrado per

i

ratti

allora

NP.

P

se

che

pmprietà

polinomiale

prnblema

algoritmo

in tempo

di YP

confrontare come riducibilità

mostrerh

si

un

un

da

con

dire

sono,

NP-completi

I linguaggi paragrafo

3á.2-5

tempo

è l esistenza

NP

polinomiale,

cioè

con

i

i problemi

tutti

si potrebbe

vuoto,

non

risultare

di complemento.

in tempo

polinomiale.

a1goritmo

deciso

essere

potesse

risolvere

potrebbero

di NP rispetto

risolto

CICLO-HAMILTONIANO

linguaggio

Il

essere

P

la sorprendente

ha

NP-completo.

problema

in

polinomiale.

Questa

in tempo alcun

trovato

è stato

non

può risolti

essere

possono

tuttavia,

studio,

NP-completo

problema

qualsiasi

problemi

hamiltoniano.

problemi

classe

sia

che

credono

ricercatori

molti

per la quale NP-completi .

fondata

più

dei

classe

della

grafo

e riducibilità

NP-completezza

sono

i

un

IClllpO

iottoiniieme

ùa

pC31inomiule di

l

0.

. La

un

zio

lingua di

funzione

L,

riduzione

induzione. ie

r

di

cleciiione

E

L,

allora

fr

associato

e

L..

a

Quindi.

L,.

Deiiderc

Ia

funzione

se

j

.t

di

riduxiune

C

L.

CuilsClllC

la

lli

VCCl lr. IV.

istanz

ifU ll iaii

corriipi ndel

ill ll

id.l

e

L,.

ad

e L

fx

fx

xX

x e L

2

l

A

I

363

mediante

sressa

ione

l lustra orna

risposta

di di

fim. ione della

una

ione

ridu

ridu-ione

domnnda

se j x

f.

Per

e

I,

un

Se

in tempo

da

polinomiale i ipnt

qualsiasi

x e

un

linguaggio la

1,

0,

L, ad

domanda

sex

c

L,,

un

se

Equivalentemente,

NP.

Ira

c

x

F

usando

L,

trasformare

per

L,.

s

sepx

i

tutti

allora

è risolvibile risolvibili

sono

P

allora

polinomiale,

non

non

NP-completi

problemi

NP

in

problema

qualsiasi

la

polinomiale,

in tempo

è risolvibile

NP-completo

problema

qualsiasi

uht linguaggio

se

stabilisce

36.4

Teorema

Figura

ctie

stabilire

A,per

usando

e poi

ihpx

i put.r

qualsiasi

A,

algoritmo

uii

illsistra ro

k

L,.

per

poliiioniiale

in

tempo

in

tempo

polinomiale. Le

riduzioni

diversi

in tempo

linguaggi

rappresentano

polinomiale

appartengono

uno

strumento

potente

dimostrare

per

che

a P.

Lemma

Se

L L,

a

sono

0.1

linguaggi

tali

che

,L,.

L,

allora

L,

c

P insplicB

Lj

C

e. per

completo riduzione

Sia con

algoritmo La

L,

tempo

un

364

A, per

illustra

deciso che

polinomiale

di decisione

figura

linguaggio

fornito

come

poiché

sia

il linguaggio

algoritmo

A,.

e sia

di riduzione

f.

F

un

algoritmo

di

Si vuoi

costruire

un

L,. di A,.

Per

un

input

verificaresef x

x c

0,

l

la ragione

È questa

*,

dato

I algoritmo

c L . L outputdiA,è

A,

si

un

della

per

si ha

36.3

il lemma

prima. i-

linguaggio

qualsiasi

che

L.

L

P.

L c

equindi

allora.

P. Ma

L c

che

si ipotizzi

assurdo.

che

36.3,

teorema.

NPC

c

L

si ha

NP,

il lemma

la contronominale

essendo

P. Sia

L e

che

per

per

P w YiP è centrata

sul quesito

la ricerca

cui

sui problemi

NP-completi.

problema

è NP-completo

usa

il valore

da A,.

di A, seguet1alla

F che

un

la funzione

usaA,per

output

La correttezza

calcola

la costruzione

Fpertrasformarexinf x ,equindi

da

un

esista

che

tale

L c NP

è vera.

che

asserzione.

del

Lc

qualsiasi

Quindi,

asserzi me

la prima

dimostra

il che seconda

P.

si supponga Dimostra ione.

la

are

dimoro

Per

e P.

L

che

anche

ha

3á.3

la proprietà

L per

L ,

Per

L e NPC.

di NP-completezza.

definizione

2 della

che

P ed anche

L c

che

Si supponga

Di nostra-ione.

A, sono

condizione

eseguiti

L algoritmo

36.1 .

in tempo

polinomiale

si

è eseguito veda

in tempo

l Esercizio

polinomi ile.

36.1-6 .

per

un

indizio

eccellente

un

fornisce

l

NP-completo.

problema

qualsiasi

che

dimostrazione

un

intrattabilità.

della

sua

di

problema

NP-completezza

Le

riduzioni

problema se L,

in tempo è arduo

,L allora minore

notazione l insieme

Un

dei linguaggio

I.

Le

2.

L Lperogni

Se

un

ugu.de

almeno L,

un

quanto

non

è più

o uguale

linguaggi

arduo per

NP-completi,

L c

1

0,

altro, di L

uno

è NP-completo

strumento

formale

per

a meno

di un

fattore

di tempo

per

di un

fattore

polinomiale

la riduzione che

di

Soddifattibilità

forniscono

polinomiale

più risulta

sono

cosi

i problemi

mnemonica. più

ardui

mostrare

po1inomiale.

Si può

ecco adesso

che

Cioè. perché

circuiti

un

sessun

definire

la

deferito

Abbiamo lù

NP-i.ompleto.

problema

in NP.

la

dimostrare

nozione

NP-completezza

vvlta

Una

di

altri

ma

NP-completo. che

problemi.

si sia

finora che

dimostrato

si focalizza

Quindi,

fornito

non

abbiamo

almeno

un

ora

l attenzione

è

problema

sulla

se

YPe

lineuae io

a NP.

L cNP. L so

i

D P

11C

YiPC

l

.iotu

c

cl npf lalltevle

cr1lll

ir. li

in vP.

c P n

Nl

C

8.

.

I

r ni

tra

P,

NP

e N PC.

Si r

878

Capitolo

36

x I

un

2

ci sono

possibili

il

risolvere

problema

-

istn i-e

problema

de/

di

. i i

d i circuiti.

er.o

e r,

output

si r

1. l/

circt ito

dimostrazione dimostra

è perciè

dell

ton

esistenza

i input

c i questo

sia

circuito

un

assegnaine rto .

L

a circtrito

.

puo

in

far

è

mo

erci

clre

il suo

soddisfirttibile.

1 i pro

NP-completo

d ella

di un

t li

sui

soddisfattibilità che

Sfortunata ortunatamente,

15 dimostrazione

si

richiede

desiriverà

informalmente

combinatori La

booleani.

figura

sinodo

36.6

Un

di s alori

tecnici una

d due

è stato

circi iti

verità

i . S i dice

che

un

.

éi

co

ab

t/h

Invece.

rn

Quando

che

certificato

f ondamenti

dei

Capitolo

1. Ogni credere

iu

a 4. l.i com

In realtà,

Pr

polin 1 è

circuiti

di

pz. . ..

, P,n.

s rispetto

ba andoci

t

b

l JllO

booleano

d

t, Llll I

ciuco

Che

pllb

volta cd

A

ha lungherza

che

ingressi

agli

C

soddisfattibile

circuito

che

t lo

Uno

de li

ogni

ili

tipi

t ca

ùi A è i la codi

.,-

cenit -at ,- .,i p

filo

sul circuito

intero

di

C forniscono

i

passato

un

mento

aiiC 11

soitùisfattibilc.

un

circuito

rispeno polinomi ile ioddisf apribile non sia

circuito

quel

come alla

è da o

c1diitattil ile.

input

dimensione , in input,

he

ne. un .A è

L aleoritnu

.4.

oritmn

ll .d di C.

prnduce

in uicit i

certiticato ere-uitii

un

esiste

pui in

ssegn imento

produce Il problema

mo

o toirn.il ..

di valori

i.r,..

i,,

. enspre

0. e quincli

non

è s icldisfattibile.

della

svddi fattibilitii

tuttaii,.

i, comporta

dr circuiti

.

.

è

pu i C

SODDISFATTIBlLITÀ-Dl-CIRCUITI

essere

verifie to

in

t mpo

c

polinomiali.

lE

i P.

I ità unassegnamentodiveritè

.

l output

D

t o in

.

f ir

temp i

è

ei un

I del

circuito

circuito

-

di ti

combinatorio

ra

r

e

ei

iecorrda-parte

della

dimoitf lllOI .L

3á.hib

booleano mento

n

i l,

restituisc

l oritmo

è l. I

il d

tutizione

i.ome

ti u. l

che

ieritica

.r.uito.

d1

pona ogica

calcolato dell

$01itlollliale

cclllpi. input

C.

di

Per

se l uscita

Quindi.

con

è un

AP.

clai e

inpu

input

ettamente

SODDISFATTIBILITÀ-Dl-CIRCL ITI

La

che

ars

sulle

0.

circuiti

29.

p

ò

combinatorio f

di circuiti testo.

questo

11 inizio del . ci ciascuno .cuno

circuito

iran circuito

tèsoddisfattibilesehauneissc naweutodisodd

p

b

boole ni. per

soddisfattibilità

b iettivi

esaminato

coml inatori . di

di in

della al

olt I

dimostrazione

assegnaure to

booleani

il problema

che vanno

che

materiale

Questn

m ostra

o output.

insieme

formale

denaeli

i

miale

soddi. folti . ità

alla

a due

L altro

segue. con

sia

assegnati

A restituisce

Altrimenti è NP-completn

e forniicc

semplicememe se

polini male. di t- po

di ci o in due

ùlTl.

a ciascun

come

certificato

di ingresso.

i valori

C.

boolezno

valore

dal

fornito

A

B I LITÀ-Dl-CIRC

A è costruito

L algoritmo

datn

ta

appartiene

di circuiti

combinatorio

booleano

circuito

gnamento

valori bl ema

questo

soddi. i -.. bile

algoritmn

perché

algoritm

un

I SFATTI

SODD

valore

di un problema

è

super

la dimostrazione

ità

fornii

1. x,

x

1 circuito

r

di C è p lini

alcun

esista

non

Spezzeremo

soddisfattibi

Si

D nostra -ione. verificare

Due

logiche

di NP-completezza.

della

Il problema

36.6 .

le w ae

Sfortunatan,-..-. .

di tempo

algoritmo

un

se

la dimensione

soddisfattibilità.

della

sempre

prnduce

36.5

L81llltM

Figura

nell rca

polinomi l

input.

gli

per

che

probabile

definizione

della

ad

rune

elimina

che

determinare

di

Quando

porta

NP-completo.

problema

. suddisfattibilirà

mportanza

pratica.

assegnamenti

input

è molto

detto,

si è già

b

boole mo

.- uito

Se un

di tempo

algoritmo

tentare

puo

assegnamenti.

di ciascun

verifica

si

i possibili

tutti

verificando

parti

i wbinatorio

rileian e

una

calcolatore.

semplice

più

applicazione

C,

circuito

del

l aiuto

Un

output.

considerevole

una

Dato

X

0 come

il valore

avrebbe

0

z

da un circuito

sostituito

essere

sempre

con

dell hardware

dell ottimizzazione

ha

circuiti

di

soddisfattibilitè

della

problema

0. può

circuiti

un

.

soddifattibile Il

è

C

C

SODDISFATTIBILITÀ-DI-CIRCUITI

879

ri

XP-comple

Problemi

circ liti.

Si

nri

etili

hard , vc

eli

un

c

luil.il ll ..

Cile

SQQQ Spp, fp l.lTÀ-DI-CIRCL ITl

NP-

Probfemi

speciale

t/na

valore

un

quenziale elaborare

gp

ggfIa

chiama

sia

del

memoria

del

contatore

del

calcolatore.

del

contatore è caricata,

del

programma.

del

è

programma

cio

I esecuzione

comporta

che

di un istruzione e

prop amma,

normale

di eseguire

considera

la

Ogni

di

una

denotati

con

cicli

ed

essere di M.

Si ricordi

M

nella

memoria

input

un

certificato

considerata

essere

realizzato

dimostrazione

come del

circuiri

combinatori

con

del

si

1 hardware

seguente

input

la

calco-

cui,

di

x

C

comspondenti

x, e lo stato

l unico

luogo,

tutti

36.6

Il problema

della

soddisfattibilità

di circuiti

è iVP-arduo.

corretto

e solo

se esiste

Sia che

polinomiale binaria.v

con

L un

linguaggio

qualsiasi

calcola

una

un circuito

C

funzione tale

fx

di NP.

di riduzione che

Per

Si descriverà

f che

mette

e L se e solo

un

algoritmo

F di tempo

in corrispondenza

se Cc

ogni

un

stringa

L

che

rispetto

L idea

che

verifica

a due

L

ingressi

in

A per

tempo

polinomiale.

calcolare

una

caso che

n della

de l

peggiore

T ii

On

che

il certificato,

stringa

eli input,

algoritmo

rispetto ma, allora

aIla dato

della

in

Partendo

memoria il valore bit

funzione

dimostrazione Come

più

parti informazioni

da

è quella

una

confi

mn trato

che di

non

stato

urazione

figura il

ausiliarie, iniziale

del

una

di

stringa

di

certificato

dimensione

sia

totale

input On .

è polinnmia1e

esecuzione

è polinnmiale

I input.v.

calcolo

ciascuna per

di

A

conie

configur azione A,

il certificato

il

Quindi,

in qualche e se si assume

è eseguito

per

F costruisce

un

sin oto

circuito

ha

una

direttamente

come

input

de f i

1 -eiimo

al più

combinatorio

circuito.

che

Cioè.

A x,

y

si deve

cosa

n secondo

input.r,

Per

al l output

di lunghenza

Qn .

calcola

1. La

mostrare

mostrare

si deve

una che

tale

che

seconda

un

tale

che

F calcola

in

C è soddi fanibile da

proprietà

di riduzione,

funzione

A x,

Quindi.

si supponga

se

dimostrare

si suppon,,a

è la

che

se si applicano

l. Allora,

y

che

si conclude

la dimostrazione. a n

éhe

C sia

soddiifattibile I

A . ,y

è necessario La

x. una

rappresentare

mostrare

osservazione

prima

configurazione

costante,

dimensione

O ir

in

n.

i bit

esiste

e quindi

esista

di y agli

un

quindi

input

correnamente

F calcola

dalla

che

soltanto che

fare

si può

F è eseguito

in tempo

il numero

è che

in n. Il programma

è polinomiale

indipendente

l ammontare

passi, assume

Si

contatore

una

regione

puii

ditferente

del

che alla

molto

più

memoria

della memoria

la

sia

situazione

del

lunghezza

input

suo

di bit

per A stesso

input

x.

La

lunghezza

le

che

da A è anch

richiesta l Esercizio

locuzioni il particolare

A siano

da

accedute modello

essa

chiede

36.3-4

polinomiale di

estendere

distribuite

di distribu

zinne

pu

una

su

a essere

x. M

cnmbin torio

di lavnro contigua

in cui

di memoria

grande

ei scun

per

Il circuito

che

l hardwnre

realizza

del

calcolatore

ha

dimensione

una

di

locazione che Tn

che

specit

dopo

A si lei-mi.

punii.

il risuhato

c il ol

Ic

conti

i tilt tc IA

ur izisni,

del

siitema.

Il circuito

C ce n iste

di

al più

r

0 st

copie

di,11

e quivi

ha

una

ic i

tempo

Il siasi

collegato

y.

c, è trasform,ito

è scritto

I esecuzione,

se J algoritmo

noti.

di riduzione.

per

memoria l

valori

corrisponde

input di

iniziale,

programma

di E.

Ot

i, da cui

rispetto

richiesti

più

y. e Ia ntemoria

configurazione

di c, . di riduzione

il

36.7.

stringa

che

luogo,

del I input.

il certificato

programma

c, , ciascuna

cioé0o A termin.i

quando

cambia.

nella

rappresentare

rappresentano

Il risultatodell algoritmoA di lavoro

di

una

prima

f

correttamente

il viceversa,

Cy

completare

Per

A su

che

il tenspo

qualsiasi

n

c , ,.

In primo

al certificato

per

calcola

configurazione

a questi

la funzione polinomiale

e la lunghezza

un polinomio

che

l argomentazione

altre

L algnritmo

tale

di input

lunghezza

spezzata

dei

nel

di A è in realtà

di configurazioni.

calcolatore.

è uno

A

I algoritmo

Per

C tale

y per

i.

programma,

allora

algoritmo

userh

c6stante

la stringa

chiaue

essere

del

I una

sia

ad

sequenza

un

di esecuzione

l

alla

rispetto

esistere

costruito

di esecuzione

include

della

sarà

il tempo

n. e sia

lavoro.

deve

f.

Tn

tempo

Il

NP,

F che

di riduzione

lunga

e

Per

proprieth.

di calcolo

F calcola

del

il bit di c

fornisce

è una

C.

direttamente

p

cosa

prima

Dato

se esiste

è la configurazione

il contatore

eccetto

si

gli

di C

corrisponde

A x,

fare.

Qutput.

y tale

certificato

che

Cy

di riduzione

y di lunghezza

soddisfattibile. che

L algoritmo

Sia

mostnre

certiticato

ignorati,

due

tempo

al circuito

sono

come

A,

per

calcola quando

per

leggermente

collegati

sono

connettono

F deve

L

modificando

che

se e so1u

input.v, input

881

SODDISFATTIBILITÀ-D1-

CIRCUITI. Dato

un

F,

funzione

del

il programma memoria

in ingresso

dimostrare

una

a

fili

soddisfattibile

e l output

su A x,y ,

F è ottenuto

circuito

riduzione

da

modo

computazione

costruito,

C e lo restituisce

polinomialità Dimostra-ione.

del

C, cosi

un di M.

sui

polinomiale

sia

F ottiene copie

trasmessi

tempo

che

fx

da T

da

della

rimane

output

gli

Rimangono Lemma

che

di

circuito

iniziale

input

di A. Il circuito

una

calcolato

con

C

I. Quando

costituito

ad

C

circuito

y

C

i V alort

sono

di riduzione

un

A x,

comsponde

L algoritmo

lemma.

che

un circuito

che

l input

l algoritmo

calcolare

y tale

di stato,

da registri

che

deve

fx e costruisce

gli

il calcolatore

cio

x, esso

Il circuito

di un calcolatore

essere

può

che

rappresentate

adesso

un

è rappresenil programma

di stato

Fondamentalmente,

può

calcolo

contiene

i bit

della

istruzione

in un altra.

del

che

e tutti

stato

particolare

stato

memoria

di lavoro

trasformazione

questa

l intero

propamma,

Si

configurazione

saranno

anziché le copie

il

può

la

quindi

al calcolatore

permettendo

la memoria

L esecuzione

determina che

un.istruzione Tuttavia,

nel

propamma,

di una

che

che

modifirata,

esecuzione

eonpgurazione.

boa cani,

scritto

essere

l esecuzione.

gestire

trasformazione latore

volta

con1atore Il

iniziale

dell

punto

per

chiamata eseguire.

da

sequenzialmente.

puo

il contatore

ntiqne

memoria.

condizionati.

rami

g qugunque

g gsgp,

ogni

e istruzioni

che

di istruzione

prossima

incrementato

ite q gua q

locazione

della

ja

AP-completi

polinomiale.

lin

ut

lingua z ,in

io

SODDISFAT di

NP

fl e,

poicil

BILITAapp..lr

Dl-C idi,c,.l

i

RCUITI NP.

esiO

i

percii NP-CO 11pleto.

refluo

almeno

qt

. to

qual-

Probiemi

882

Capitolo

883

P/P-completi

36

bit

Esercizi

di input

A

stato

ausdrmo

ddla

macchina

di

memoria

lavoro

,L

se L,

che

36.3-2

Si dimostri

3á.3-3

Si mostri

,

la relazione

che

Si mostri

36.3-1 C

pQ

e I

p

L

che

è una

L

si mostri

Cioè

linguaggi.

pLg.

se L ,L.

solo

SC e

sui

transitiva

reIaziane L

Rllora

M

in C

stato della

A

ausshsrio macchina

dimostrazione

è impiegata

dove

stato

ausiliario

delh

niacehma

tempo

Si mostri

3á.3-7

L algoritmo C

la

mncchimr

X

me

y

á

a di

Le

seqwen -a

di

configura ioni

da

prodr tte

rn

a1gorirnro

A

eseguito

su

un

i p t.s

ed

bit

della

memr ria

ch

che

della

di circuiti

paragrafo,

COIYlpll tC// l.

iottc.

Segue

immecli t mente

dai

8

e

1 *

0.

con

riduzioni

ma

non

non

il

costruire

puo

del

C

circuito

il

ed

che

dato

il

il professore

Quindi

linguaggio Si spie-

NP-arduo.

è necessariamente

non

ragionamento

effettivi.

valori

osserva

Sartie

di A e l

Inesistenza

solo

i loro

il

costruisce

36.6

lemma k. Il professor

di A,xe

F conosce

F

del

dimostrazione conoscenza

co-NP.

per

professore.

opti

provare

linguaggio

di NP

a quel

diversi

che 36.5

si mostrerà

come

lemma

è alla

base

del

per che

un

metodo

di

di

questa per

dimostrazione

sulla

L c

linguaggio

Si illustrerà

linguaggio.

dato

ogni

è NP-completo

linguaggio

soddicfattibilità

esempi

altri

molti

fnrni ce

di

problemi

si basa

di circuiti

dellasoddisfattibilità

prohlema

formule

In

metodologia

questa sono

NP. ridurre

senza

NP-completi.

Il

metodologi .

mostrare

che

un

linguaggio

k NP-completo.

è NP-completo. 36.8

Lemmn Dinzostra

di

se L è completo

se e solo

della

a RP ,

7

soddisfattibilitè

con

riduzioni

che alle

P rispeno

per

SODD1SFATTIBILITÀ-Dl-CIRCUITI

Il seguente Il problema

input

F

nel

del

L

direttamente

la orr .

paragrafo 36.

alle

C. Si mastri

di NP-completezza

dimostrando

Teore na

è un

che

NP-completezza

questo .specifico

completi

sono

NP

sulla

L appartiene

Dimostrazioni

diretta

è uno

rispeno

c

L

wii

La

L orctp r

alcuna

implica

output

36.4 36.7

Figura

F

basandosi

fx

l errore

ghi 0/1

ogni

AL per

SODDISFATTIBILITÀ-Dl-CIRCUITI

lavoro

dimostrazione,

non

ipotesi

questa

C di linguaggi

classe

non

per

riduzione

stringa.r

conclude à ila

una

C e L

in P che

L è comp1eto

di

linguaggio

ex

che

l algoritmo

per

Nella

polinomiale.

Si spieghi

per

se L e

linguaggi

che

36.3-6

che

Tn

di lavoro

la memoria

dimensione

polinomiale.

circuito

C

di

ipotesi

L è completo

unici

gli

tempo

ausiliario

che

ipotizza

36.6

contigua

polinomiale,

sono

stato

lemma

questa

linguaggio

Un

36.3-5

la

consente

di generalità.

perdita CI

del regione

una

certificato

come

usato certificato

Quale

semplice

più

A occupi

essere

può 36.5.

lemma

del

alternativa

La dimostrazione

36.3-4

di soddisfattibilità

un assegnamento

che

dimostrazione

una

Lcnami

36.5

e

36.6

e

dalla

clefinizione

di

NP5

Se

L è un

l

c

NP,

tale

lingua,,gio allora

L c

NPC.

che

I.

,,L

per

qualche

L

e

NPC,

allora

L, è i P-arduo.

Inoltre.

se

36

Capitolo

Dimostra -ione. ,L

L

Poiché

e quindi

L

è NP-completo,

transitività

per

si

tutti

per

veda

L

gli

1.Esercizio

e

36.3-1 ,

NP,

,L.

si ha L

si ha che

,L,

L.

per

Per

Per

ipotesi,

cui

L è NP-

la formula

esempio,

Se

L c

NP,

si ha

anche

che

Lc

si

riducendo

parole,

riducono

ad

dimostrare

L

che

linguaggio

1.

Si dimostri

che

2.

Si selezioiii

un

L un

linguaggio

i linguaggi

tutti

un

ad

Le

di

NP-completo

NP.

il

Quindi

conosciuto

Si descriva

un

una

istanza

di L

lemma

fornisce

36.8

un

per

L

algoiitmo

noto

come

linguaggio

NP-completo.

che

5.

Si dimostri

del

che

dimostrare

molto

sviluppa

di

che

conoscenza

una

funzione

fa comspondere

f che

L seesolosef r e

l algoritmo

che

calcola

riduzione

procedimento

dimostrazione

calcoli

ad ogni

da

f è eseguito

un

singolo

camplesso

più

L,pertuttiglixc

linguaggio

di fornire

il problema

un catalogo

vO w1

cui

della

facilmente

con

n invariabili.

roto

da tutti

i linguaggi

e

soddisfattibilità che

altri

di

NP-completi.

NPC

è assai

ha

YP-completi.

I applicazione

aperto

metodologia

via

sarà

di determinare ha

se un

l onore

storico

Si formalizza

booleana 1.

il pri no

della come

p composta

variabili

stato

il problema

SODDISFATTIBILITÀ

non

boolean ,

fnrmula

di essere

un circuito,

ue.

Un

si

sempre

che

del Questo

dimostrato

essere

una

del

cosi

problema

eseguibile

di SODDISFATTIBILITÀ

lingue

è una

gin

formul i

che

mostrare

della

in tempo

connettivi

bonleani r, BAND .

come

iOR ,

funzione

boole ma m

NOT .

con

uno se

implica ,

o due e solo

argomenti se ,

e un

output,

che

e

La

formula

d81 i

Questo

Si

per

port i

alle

puo

una

tormule

booleana.

i i he

quindi

Come

nei

insieme

circuiti

combinalori.

valori

di

assegnamento

di

per verità

assegnnineitto

un

le clie

variabili

di

implica

di

cl

e

un

d

p. Ii

tormiila

veritèi

per

una

assegnamettto si

di ugii ile

boole mu

formula

ne

costituiscono

ud

I.

è

formula

Una

con

un un

forn,ula

un i

SODDISFATTIBILITÀ

data

lonnub

bo

Q

loden.i

i

i.

i

ulti

. ddiil ittibile

1 irmula

in

bnolean

termini

di

soddisfattibilc

lingu i

i terbi ili.

.

generat,

.,i veda

nodo

astuto.

calche

qu L

se

l1011

mt .tO6llkll1BI4

che

per

circuito

qualsiasi

di tale

la porta come

porta

espressione

della

istanza

si considera

ingresso

della

istanza un

ad

Semplicemente,

un

SODDISFAT-

qualsiasi

esprimere

scrivendo

ottenuta

è soddisfattibile.

che

applica

una la

l input. l iduzione

Ull l

COYillllllSCC

in tempo

polinomiale.

c Ull

p

soddisfaltihilità

QUCStO

parole,

polinomiale

ciuscun

i eiprime

induttivan ente il circuitn

tempo

l induzione

usare

formula

mostra

si

In altre in

facendo è facilmente

compito

la NP-completezza.

è NP-arduo.

ridotta

ciascuna

l espressione.

la formula

l, allora

vale per

parentesi. SfOflUI121 llllLllil..

chicd

sopra.

36.8

lemma

essere

pun

come ed

l output

produce

formula.

di

l e pressione

Se del

tormule.

di booleano

funzione 3.

circuiti

di

soddisfattibilitè

qualsiasi v

valuta

cui

verificato

semplicemente

e quindi

36.2

certificato

un

essere

/può

valore

SODDISFATTIBILITÀ

TIBILITÀ-Dl-CIRCUITI

x,.

il lemma

per

che

mostra

sostituisce

SODDISFATTIBILITÀ.

oddisfattibilitè

x,.

l equazione

per

condizione

che

dimostrare

veritica

corrispondente

poli sonaiale.

la prima

combinatorio 2.

si è fatto

per

di

si

formula

data

una

attibilità

algoriuno

il suo

con

formu1a

che

vale

Per

di soddisf Questo

polinomiale.

quello

e ciò,

a NP,

appartiene

SGDDlSFATTIBILITÀ

da un assegnamento

tempo

si mostrerà

Poi

NP.

SODDISFATTIBILITÀe ,SODDISFATTIBILITÀ

il teorema.

dimostrerà

NP-completo.

in termini

formula

che

si mostre

cosa

prima

SODDISFATTIBILITÀ-DI-CIRCUITl

problema

di

booleane

Per

Dimostrn io re.

Quindi di

istanza

NP-completezza

è soddisfattibile.

ad

problema

soddisfattibilità se

della

NP-completo.

problema

di che

variabile la prova

sia

polinomiale.

è un

hooleane

formule

delle

soddisfattibilitè

costituito

fornendei

gli

come

la

permette via

Inoltre.

della

varco

un

formule

baia di riduzione

tempo

con

algoritmo

di un

$

di tutti

mostra

teorema

Il seguente

polinomiale.

formula

la verifica

ad n, allora

rispetto

è polinomiale

5 super

tempo

una

per

36.9

Teorema

La

in la metodolo

un

l esistenza

più

di NP.

è NP-completo

circuiti

sono

problemi

di

la lunghezza

Se

assegnamenti

possibili

e

è soddisfattibil

booleana

formula

generica 2

Esi tona

polinomiale.

richiede

assegnamenti

se una

determinare

per

in tempo

è eseguito

Per

Si illustra

36.2

0

a SODDISFATTIBILITÀ.

p appartiene

naturale

più

non

36.8,

di

n.

1

l

1 n

formula

questa

La

di linguaggi

Soddisfattibilità

v

1

poiché

polinomiale.

NP-completo

le riduzioni

.

0.1

semplice.

più

I

0 v

inverosimile

in tempo

SODDISFATTIBILfTÀ-DI-CIRCUITI

più

v I

L atgoritmo

istanza

di L.

metodoIogia

v

0

I

l,

I, x,

0, xe

0. x,

x,

l,

Sidimostrichelafunzionefètalepercuixe

semplice

-

0

$

metodo

NP.

4.

Questa

XE

L è NP-cotnpleto

linguaggio

che

A

A

di soddisfattibilità

1 assegnamento

implicitamente

L,

per 3.

V

Xp

NPC. ha

In altre

I X

I

Z V

XE

arduo.

figur

piu 36.Y

liluitr l

6.4-1 .

l F,e vi io

l id

ili

h. i .

Quindi

dc. ll i

l algiiriuno

ri lumi ani.

da

di riduzione

deve

SODDISFATTIHILITÀ-Dl-

es.,ere

in

T espressa

essere

come della

l operazione formula

La

con

circuito

Xp

formula

AND

porta

di

output

dall algoritmo

la congiunzione

delle

figura,

A

Z xe È-

x,vx,

A

Z,

g

riduzione che

m

.r

suoi

è un

AND

fili

incidenti.

Per

un

Xg

variabili

delle

di output

del

porta.

Per

X

descrivono

le operazioni

di ciascuna

è

Figura

x,v.ria

xm

x,vx,

X pe

esista

C, è semplice

asse

è 1. Perciò. clausola

l assegnamento

implica

1 e quindi

si

Quindi,

SODDiSFATTIBILITÀ,

formula

p in tempo lo

quando

trio

del

dei

valori

la

p valga

che

tale

esattamente ciascun

p valga

analogo.

ragionamento ,

in che

namento

una

produrre

C è soddisfattibile

di soddisfattibilità,

ciascuna

della

che

un algoritmo anche

ha

se

circuito

loro

dei

fili

alle

in tempo forma

booleane

espresse

che

Se

p

ben

definito,

C ha

1. Viceversa,

in

problema

c è un on

che

cosi

e

SODDISFATTIBILITÀ

NP

c è

L algoritmo.di ad un

dimostrati

NP-comp1eti

riduzione

enorme

numero

effettuare1a

desiderabile che

modo

essere

ci

siano

riduzione da

considerare

deve

gestire,

di casi

che

però,

da

nseno

casi.

un

essere

insieme

in forma

La 3-soddisfattibilità in una

Una

lettera

Una

formula

booleana

di clau. ole, normale

Per

ristretto

Naturalmente

C

ciascuna

e. empio,

1X

XV

-PC.

.l

la

La

booleana

delle

non

è un OR

è spe so

in forma

di

di formule

booleane.

in

deve

restringere

il

si

di una

congiuntiva, di una

o più

se ciascuna

VXg

lettere.

usando

variabile

o FNC,

clausola

delle

sue

tre

XqV

interni.

i nndi

o della

sua

se è espressa

Una ha

i seguenti

formula

ne

come

booleatu

esattamente

C,

XE

boolè. na

p in 3-FNC

è snddisfattihil .

in tre

suddiviso

i nella

di input

usato nel Teorema a quello SODDISFATTlBILITÀ. -parsing di . in cui binario

La

figura

è6.9

Se

X,

V

m

XE C-

in input

la formula

l albero

mostra XE

V .V

A

1a dimostrazione

segue

Ciascun

fondamentali.

passi sua

36.9

passo

rappresentazione

corrispondente

per

Per le lettere

che

dimostrare

SODDISFATla formula

si codifica

prima

cosa,

sono

le foglie

della

di parsing

sono

ed i connettivi

formula

X,.

36.3

di AND

operazioni

contiene

per

l o 2 figli.

abbia

interno

distinte

e OR

lettere,

di due

su più

allnra

si può

di parsing

binario

L albero

essere

adesso

può

visto

come

un circuito

lp,funzione.

calcolare la

nella

usata

riduzione

dimostrazione

del

Teorema

36.9.

i

introduce

una

IXg

V

V

X

X

.

e

contiene

le tre

letteieY

ioni

di

nodo.

ciascun

BlLITÀ-FNC Il seguente

consiste teorema

nello

stabilire mostra

se che

una i

d ite

inverosimile

esetnpio.

Per

IY. y.

y,

3-SODDISFATTI

essere

la formula

.

Il problema

cui

che che

D

è informa

lettere

tre

azione. un AN

W

Y

$

termini.

operar

elausolC

un albero

con

da

solo

mostrando

ciò

prova

mostrare

3-congiuntiva. è simile

TIBILITÀ-DI-CIRCUITI $ in input

può

trastorma

passo

Imitando

A mX V

riduzione

normale

Il primo

booleana

A XgVX

prima

si definisce

occonenza

normale

quali

e questo

Percio,

Si

NP-arduo.

mostrare

dimostrare

deve

si

Quindi.

per per

o 3-SODDISFATTIBILITÀ-FNC.

congiuntiva

è un

o 3-FA C.

formulai

congiuntiva,

normale

è in fonnn

3-congiwitiva,

XV

è in

formula

in input

NP.

36.9 modo

stesso

36.8.

progressivamente

Unlinguaggioconvenien-

normale

in forma

soddisfattibilità

considerati.

linguaggiocosltantodarenderlorisolvibileintempopolinomiale. te è le è-soddisfattibilità

della formula

qualsiasi

devono

partendo

riduzione

per

è un

3-congiuntiva

Teorema

nello

applicate

,3-SODDISFATTIBILITÀ-FNC,

al lemma

in base

del

dimostrazione

è-SODDlSFATTIBiLITÀ-FNC

anche

la dimostrazione.

congiuntiva

normale

in forma

essere

possono

SODDISFATTIBILITÀ-DI-CIRCUITI

normale

nella

usate

argomentazioni

Le

Dimostrazione.

seguendo

che

forma

possono

condurre

semplice.

più

NP-completo.

L algoritrno

può

di formule

la soddisfattibilità

polinomiale normale

La fonrn ki

circuito.

che

se

C è soddisfattibile

di formule

soddisfattibilità

La

e l output

6 comporta

di

un

SODDISFATTIBILITÀ

di formule.

del

filo

3á.10

Teorema

polinomiale. formula

variabili vale

il circuito

è mostrato

è la

ha un valore

congiunzione

I, allora

completando

3-soddisfattibilità

problemi

ogiti

per

in questa

espresse

3-SODDISFATTIBILITÀ-FNC

MoIti

variabile

una

determinare

possa

sono

alla

di circuiri

soddisfartibilità

di ridu-ione

dall algoritmo

X7AXgAXg

il circuito

circuito

del

Ln rida ioide

36.8

prodotta

x,m

assegnamento

10

Xg

x, x, ,

n.

circuito

Perché

di forni e.

esempio.

booleane

Daro

soddisfattibilirà

887

p

n

A

NP-completi

.r

dei

è x m x7AXgAX9 . di

clausole

la formula

n

variabili

sulle

p prodotta

deIla

il circuito

una

Problemi

tor uul i

s,v

y,e-

che y,

m

.r,

.r,

r

y, m.v,

l

per

lu formula

36.3

I espressione

risultante

è

888

Capitolo

35

Problemr

PP-completi

889

i yi

Y

36.10

La

tabella

di

verità

yi

1

i

l

0

1

0

l

0

1

0

0

0

0

1

I

0

I

0

0

0

1

0

0

0

la

per

x

n

y

1

2

Figura

x

y

I

0

0

clausola

M

y

A

3

IX

.

X

Figura

36.9

L albero

corrispondente

alla

forniule

p

m

x,

v

x,

m.v,

x,

v.r,

e,

x,.

Se

C, ha

3 lettere

Se

C, ha

2 lettere

I, v I, v p

i

y,

A V5

A Yg

I, v

V

CV6

X4i

Se

X

m

Xq

i

.

n l,

I. v

v

il requisito n

r

C ha

I, v

solo

una

v

q

p

congiunzione Si osseni quali OR

che

la formula

ha al più

cosi

p

è lettere.

Il solo

ottenuta

è una

requisito

congiunzione

ulteriore

di clausole

da rispettare

è che

ciascuna

di lettere.

ciascuna

p, ,

passo

Si costruisce

una

variabili.

tabella

Ciascuna

variabili

della

Usando

in una

della

di verità

si trasforma

di d,

è data

I

di verità

che

usando

clausola

sia

un

delIe

assegnamento

in base

I

l1AmX V

le

a

V

V

leggi

a

di

I.iV

DeMorgan,

aXi

h

si

V

v

V

ha

la

una

formula

Esaminando

i passi se

e la tabella

di

5.2

risultante

in forma

l

VàX1 A

V

della

è

equiv aulente

CiálliCUllD

e quindi Inoltre. fl

terzo

I i scun t ,, i,.nu

alla

clausola

come

segue.

C1ilusol p, c1 è equivalente ciascuna ed

ultimo

unibili irie

che

.. gridanti

clausole

di

paz n

ha

della

si chiameranno

formula

in

4

ai più

riduzione

esarranieirre

st lta

pi

tre

cosi

a

36 4-l

è

p

tr sforma

V1VXi

A

364-2

wl1VX

VV

di

g e c . Pcr

p.

in una

cotnposta

Si

consièeri

facilmente

la

dall

ulteriormente

che

ciascuna

La

per

uguale

vedere

puo La

ha

alla

ogni

0 sia

che

v

I vp

q

clausola l.

p n, ivo

qualsiasi

assegnamento

al valore

di I.

che

costruzione

al più

2

la di

8 righe.

lunghezza

ottenutz

riduzione

delIa

in tempo

banale

Teorema

del in

v q a p

n

e q la

formula da

p

d

in

3-FNC

o introduce

è

al più

1

La

costruzione

di d

da

p

formula

originale

i/.

Ciascuna

poIinomiale.

di

tempo

descriva

un

non

36.9.

36.4-3

formula

in FNC.

p,

congiunzione

Il

formu

è.. iis FNC.

Questo

clausola

C, di

la li

Si

p,

furmuh

ir p

in

pei,so

usa

due

si

inchtdono

n odo

formula

la toriziuI

forngula

con

accennata

polinomiale circuito

di dimensione

o in 3-FNC

che

ri ulta

J tgger

prutesinr

Ji

propon

p

l Id

ll/

dimoitr azione

li

lli.

I ll

I c 111

mostrare soltanto

leor m.i del

36.

i

li

quandn

uiandci

vari,hili in

produce

una

formula

la

Teorema

36.

se cui

si usa

il metodo

del

36.3 .

ch

3-FYC.

metodo,

questo

nella n che,

in s .

3-SODDISFATTIBIL1 l À-F4C

dei

finsi

una

è esponenziale

Si mostri

della

c1istinte,

si

clausola

rispetto

polinomiale

dimensione

lettere.

3 lettere

e.

p

per

AY .

tr l5fotmata

FNC.

è sempre

i/ è soddisfattibile.

ciascuna

per

p, .

tormcila

di d

ahbi t clausole

fortl ula

nlla

clausola

clausolu J,,l,e

dell t

che

noti

v q

0 . si includono

La t ibell

brulla

origin iria

Si

trasformarione.

se

essere

può

questa

FNC

VjV

a

che

vp

che

di

allora

servonosemplicemente

peep. distinte

sia

clausola

lettere,

complementare

per

equivalente

A

in

o .

clausole

quattro

e solo

verità

è

p

costruzione

p,, . Si trasforma

in FNC

in FND

tormula

di

lettere

t I, v l,

si indudono l

clausole

di queste

dimostrazione

liAX V V A

l, allora

cnme

. Le

3 lettere

è equivalente

p

lettera

trasfornlato Applicando

I, v

di p

esattamente

C, come l, e I, sono

Esercizi

.r

forn,ula

clausole

di avere

dove

I,vi. ,

sue alle

in OR. ,

come

direttamente

a que11 assegnamento.

a

di DeMorgan

se C,

congi rntiva.

assegnamenti

possibile

è equivalente

AND

y, m

IO. La

un

0, si determina

-che

e gli p

36.

valgono

normale

i possibili di

la clausola

le leggi

in AND

frgura

tutti

ha

in forma

p,

consiste

di AYiD

le clausola

nella

VjAl Ak V l A

che

in FNC, OR

valutando

valore

un OR

clausola

verità

di

al

o FND

e cambiare.gli

l esempio,

d

per

tabelIa

p,

ciascuna

tabella

insieme

formula

le lettere

Nel

della

clausola,

disgiuntiva

formula

trasforma

di verità

riga

elementi

gli

normale

tutte

di riduzione

si include

cioè,

del e

soddi fattibile Il secondo

allora

v I,vip

verifrcare

per

distinte, distinte,

f

l

i

l

Il 1 11l 1

I,1 li

.

l0

e ne iut

che

SODDISFATTIBILITÀ Ia tecnica altro

pn so.

della

tabella

Cioè.

di

verità

il professore

10

899

3á.4-4

Si mostri

che

è completo

36.4-5

Si mostri forma

il problema

che

di determinare

co-NP.

per

il problema

della

disgiuntiva

normale

se una

formula

si veda

Suggerimenro

determinazione

è risolvibile

booleana

l esercizio

della in tempo

è una

tautologia IL1TÀ-Dl-CIRC4 t

SODDISFATTIB

36.3-6.

soddisfattibilità

891

NP-completi

Problemi

di formule

$QQDI5FATI1BILITÀ

in

polinomiale. 3-SODDISFATTIBILITÀ-FNC

3á.4-6

che

Si supponga

fornisca

qualcuno

la saddisfattibilità

di formule.

un algoritmo

Si descriva

gli

assegnamenti

di soddisfattibilità

Sia

2-SODDISFATTIBILITÀ-FNC1 insieme

di tempo

come

usare

in tempo

polinomiale

decidere

per

algoritmo

questo

CICLO-HAiiIILTO ANO

CRICCA trovare

per

polinomiale. COPERTURA-DI-VERTICI

36.4-7

con

esattamente

FNC

2 lettere

c P. Si determinasi

deIle clausola.

per

un

algoritmo

che

to siosservichexvyèequivplentea FNC

36.5

ad

Problemi

un

sia

su

un

y.

orientato

grafo

che

il più

.v

problema

formule

Si mostri

soddisfattibili

in FNC SOiVIMA-Dl-SOTTOINSIEME

2-SODDISFATTIBILITÀ-

efficiente

Sciggerimen-

possibile.

Figùra

Siriduca2-SODDISFATTIBILITAche

è risolvibile

è6.11

La

efficiente.

S O D DI S FATTIB

NP-completi

se

formano

NP-completi di reti.

progettazione cazione.

e degli

problemi La

di

figura

36.1 e

paragrafo completo

teoria

dal

TIBILITÀ-DI-CIRCUITI,

36.5.1

Il

io

h stato

ed altro.

una se

di

dimostrazioni

lo

e pianifi-

giochi

e puzzle,

In questo

paragrafo,

teoria

caso

un

algoritmo

Teoremn

figura

Alla

punta.

è

radice

NP-completo

si

nel

di questn

stabilito trova

Teorema

essere

cricca

in un

ogni

coppia

di suoi

della

cric ,è

massima. di una CRICCA

vertici

non

V

SODDISFAT-

c

problema

dimh sione

G.

I

di

V,

da un arco

trovare si chiede

A. La definizioi e

grafo

con

è un

in

un

V c

cricca

una

parole.

una

grafo

semplicemente

formelle viso

sottoinsieme

in E. In altre

ottimizzazione

di decisione,

Ci è un

E

Per

mostrare

è6.7.

ottenuta

appartiene

in tempn d

al

ori tmo

di din1 nsione

immediato l è elencare

per tutti

che

V di vertici cricca

cricca

se esiste

nel

tale

determinare i l -sottoiniiemi

s

di dimensione

di

3$.

che

esista

G.

per

verificando

polinomiale

un d to

per

se,

k

G

V.

E

V. e considerarli

con

per

che

il

,CRICCA.

sorprendente,

poiché

è

ericcu

della

problem i

sia

Che

unn

per

grafo verifica

una

ha una uho

per

che

V u.

sia

l insieme

si usa una

cricco

c V , arco

le formule

logiche

con

un istanza

non

dimostrandc

NP-arduo

dimostrare

sembrano

ifo

comincia

di riduzione

L algoritmo

avere

questo molto

di 3-SODDISFATTIBILITÀ-FNC.

di ctimeniione grafo

V. E .

G

coppia

ogni

possibile

crimea

è soddist fattibile

se

se G ha

e solo

di dimensione

cricc

una

. j VA vertici

La

puo u.

i

che risultato in comune

3è a con

i grat i.

che

è un sotto r

certificato

è

un grafo

proporzionale

nel

E,

mostra

vista

e NP.

CRICCA

corna

cricca

della

cricca

e i,

i

conilizioni

le seguenti

contemporaneamente Un

a

E inverosimile

polinomiale.

è

. che

p

AP-completo.

è

SODDISFATTIBILITÀ-FNC

G

è connessa

cricca

i ertici

V dei

essere

cricca

orientato

il problema Cbme

data

grafo

della

Dimostra ione.

NP-

prin1a Una

per

essere

cricca.

dell i

il problema

è

algoritmo

36.11

Il problema

Si

Gella problema

efficiente

super

in tempo

eseguito

sarebbe

questo

/ potrebbe

tuttavia.

In generale.

I- è costante.

di

esecuzione

di

tempo

dei

mnlti

per

Il

cricca.

l algoritmo

i userb

NP-completezza

di NP-completezza

della

dimostrato

grah.

qual

di

di insiemi.

linguaggio che

aritmetica.

sequenzializzazione numeri,

dimostrazione

delle

Ciascun

linguag che

dei

partizionamento

la struttura

booleana,

e ricerca.

e teoria

la

e dal

grafi

36.4.

paragrafo

riduzione

per

dei

logica

di programmi fornire

per

aree

memoria algebra

ottimizzazione

l schematizza

del

diverse

e partizioni,

riduzione

dalla

presi

in

matematica,

automi,

metodologia

ritrovana

insiemi

programmazione

linguaggi la

si

a

NP-complete

dal1a

le

Tutte

e 36. .

36.4

paragrap

ridu inne

per

ILITÀ-DI-CIRCUITI.

polinomiale I problemi

a dei

iVP-comptere

ottenute

sono

ialmente,

sosrai

di

dimosrra.-io ri

delle

srrntturn

dinrosrra..ioni.

in modo

TSP

sono

cioè

ùifferenti.

in triple

r c s. e

vedere

eienspio

di

questa

ic

coitr izione.

ii ha

I X

,.illor,.i

V

G

X

i

il

V

.ronfo

Xg

A

inoilr,. to

,K

V,L

iicll,.l

V,V

f,

A

vr,

K

36.1

V

X

V

XE ,

k.

Sia

Si

deve

mòstrare

supponga

che

àlmeno

una

che

lettera da

V . Si sostiene

che

Vh lettere

non

appartiene Viceversa, due

essere

della

assegnare

stessa

1 a ciascuna

al suo

clausola

Nell 0.

che

G abbia e cosi

1.

corrispondenti

I

lettere

v, . e v, . e

l assegnamento

cricca

V

soddisfacente

di dimensione

contiene

che

e quindi

di G, I arco

v,. . v j

G non

V senza

contiene

un

ut

temere

archi

arco

vertice

di assegnare

tra

lettere

variabili

Alle

assegnato

/ . nessun

esattamente

in G connette

per

tripla.

Si

i sia

ad una

lettera

può

VX VX

valore

non

che

non

consistenti.

Un

36.12,

cricca

un

W

assegnamento

corrispondente

s, della

di

clausola,

prima

soddisfacente

climensione

x, della

k

seconda

della

problema

copertura

di

Una

copertura se u,

di vertici

v

incidenti,

e

ed

E, allorau una

figura

con

36.13 b

dimensione

una

o

per

è

è

clausola.

è

costituita

ed.r

. ,,

36.12 C.

k

Il seguente

G,

teorema

mostra

Teorema

che

di

che

copre

in essa

dimensione

in un

di questn

k

questo

-

se un

sottoinsiense copre

di vertici di vertici

w,

è di trovare

di linguaggio,

COPERTURA-Dl-VERTICI

è un

asse namento

clausola.

Vc

vertice

insieme

di determinare

In termini

D

V,

è i numero

La riformulazione

richiede

data.

G è un

di vertici

di vertici

minima.

G

dato

grafo

ha

una

in

il grafo

copertura

G ha

una

copertura

come

di vertici

l

.

Si

della

Dimostra ione.

o

Si

i

e

dimostra

CRICCA con1plenlento

V.

copertura

mostra

di vertici

che

prima

veritici

Questa che

il

CC ll

l

in

v.v .

i ella

0

C

SC ddisfa

C,

quegli

archi

illustra

la riduzione

riduzione

G ha

una

cricca

V

l. che

G

di vertici

che

3-FNC

C.

C,

p

richcione

e

Cq

CZ f1

di

Xq

l.

abbia

un

in E. Equivalentemente,

u e v non

r

C,.

dove

C,

v

s,

.i .

v

3-SODDISFATTIBILITÀ-FNC

corrisponde

e

a

c ricca

alla

da

da

un

vertice

una

di

vertici

copertura

i

V

un

co

i

ertici

V

arco

V

i

u,

un

o ani

della

ed

grafo

copertura

un

coppia

u e v appartiene sceIto

I insieme

vertici

di

a V

in modo

di

arbitrario ha

di

V

è una

implica

che

V è connessa

V , il che

V . che

V

V

E. cio

e

Per

riduzione di vertici

che

i

u,

e

di vertici. una

copertura

l . Sosteniamo Allora

cricca L output

polinomiale.

è davvero G ha

V di E.

è stato

V . Quindi,

mostra

problenu

della

problema

se il grafo

V con

tra

del

in tempo

trasformazione

c

uno

I

G,

de

a V , poiché

V . Poiché di

I questa

l3

36.

a COPERTURA-DI-VERTIC1.

ottenuto

qualsiasi

almeno

è coperto

v

cricca

u.

/ che

figura

La

un istanza

I se e solo

appartenga

di E è coperto

u,

una Sia

in G.

CRICCA

facilmente G,

di dimensione

di G.

sono du

input

si fa vedere

uno

arco

in

non

essere

può

è l istanza

almeno

tra

che

prende

G.

di riduzione

supponga

l ar o

Allor .

è NP-completo.

COPERTURA-Dl-V

, SSt. l ,

pUC

dell i

prob1em i

ERTICIc

CùlllOCI ttl1Cnte copi.rtura

di

COPERTURA-l3I-VERTlCI. di

co1nplemenfo

formula

vs,

X

la dimostrazione

copertura

da

significa in E,

dimensione

che

oeni

arco l,

g

è

di G.

YiP,

Si

suppong i

di

G,

tl, C

Dato E.

d t i.

tll1,.r,to Z

in

è

è

non, rientiltn

gli

u e i s

E V. se w e

Ve

d

V , allora

che.iia

Il.

l

ll.

l

E

E.

mostrando

V. Ill

G abbia

V, se

ia, v

sull. 1 F,

si

COPERTURA-Dl-VERTICl

ll l p ll lc,

Ci

i

il

i r fi di

i irtic

E.

In altre

è

C1i

ci,-t,iliaca

e

copertura

E. allora

di

vertici

V. c

u e V ppure

parole.

V-

V

V, dove

i e Vo

una

cricca.

ed

VA

AV

valgono

i di

diillctliiuilc

I,-.

entrambe

h t dimensione D

elio

110/l ITC

un, e

u.

.

f

polinomi lie.

h i ita

G

che

tutti

POIClli

tempo

NP-c mpleto.

riduzione

Quest i

r,.ito. l.

eseguita vertici

si supponga

per

fv - v V

C

ed di

Viceversu.

Si

dal1a

Cg

35.1

Il problema

c

sfa

il complemento

dell algoritmo

un

di una

è NP-completo.

problema

L algoritmo

dimensione

di vertici

di dimensione

8

esattamente

cnmpletare

si definisce il grafo

so Idi

il grafo

copertura

derivato

Xg

complemento

calcola

archi

archi

gli

esempio,

di ottimizzazione

problema grafo

una

V

X

c hiarr .

grigir

V tale

i suoi

tutti

Per .

G

grafo V

contenente

orientato

per

Il

À

vertici

dai

de Ila terza

0.

v,

vertici

entrambi .Cioè,ciascun

di vertici

copertura

copertura

di decisione,

non V o

copertura

ha

della

la dimensione

problema

ve

Vo

di vertici

di una

Il problema

grafo

copertura

G. La dimensione nelIa

di un e

V Xp VXg

ad alcun

arbitrario.

Figura

figura

X

C

Ciascuna

comspondono

il suo che

V mX

entrambi

dato

C -X

v, c

p è soddisfatta.

essere

può

a

Il

V mX

di velici

in

36.5.2

X

C

ad un vertice insieme

V , se r- s,

la costruzione

per

Si

C, contiene

corrisponde un

cosa

prima

clausola

si ottiene

tii vertici

Quindi,

una

tale

poiché

della

x,

1 per

Per

ciascuna

di queste -vero ,

coppia

complementari.

e cosi

cricca

esempio

x,

lettere

qualsiasi valore

tripla,

complemento,

della

Per

hanno

lettera

è soddisfatta,

vertice

di tali

riduzione.

Allora,

E. si supponga

vertici

che

I,. e ,

possono

ad

cricca.

p in G è una

I. e ciascuna

clausola na

una

di

soddisfacente.

è assegnato

ciascuna

le corrispondenti le lettere

assegnamento

l,. a cui

v, . Prendendo

wasformazione

questa un

sabbiò

111itlii11 i.

KP-ci tllplftO.

I1011

C1

SI

Vip . t l

di

trr vure

un

36

Capitolo

AI cuore un

della

riduzione

c è una

non

orientato

e sia

grafo

b

-

Per

l

se l arco

0

altrimenti

b

piuttosto di 5. un

Dati Figura

36.13 E

La uria

con

copertura

rida ione

di

di V

cricca V

vertici

CRICCA n,

V

a COPERTURA-DI-VERTICI.

v, x,

II

b

y .

G prodotto

grafo

Un

a

i on

grafo di

dal/ algoritmo

orieiitato

ridu-gioire

un

ha

che

non

essere

un

anche

se la

si deve

abbandonare

algoritmo

approssimato

ricerca

di

una

approssimati

algoritmi

la speranza di tempo

soluzione

per

il problema

malgrado

che

polinomiale

ottima

sia NP-completo.

ottiene

è FP-completa.

soluzioni

Il Capitolo

Ci può

II

della

problema

di

i

4,

di ordine di due

consiste

di B

di incidenza

un

tipi

b

un da

piir

ordine alto

può

riporto

non

di

un

essere

un

i

saranno

numero

k. L insieme

quanto

grande

essere

può

ed

rappresentino

si

di

i

per

S di numeri

insieme

basso

sulla

basso

piii

le formule

riduzione,

più

della

orientato

indice

semplificare

calcola

di

cifre

dalle

propagato

jE

positivo.v, Le

cifre. illustrato

cifre nella

la cui

di i, nella

riga

alla

Formalmente.

36.14 c .

4

in base

rappresentazione

corrispondono figura

e agli

ai vertici

rispettivamente

corrispondenti

intero

come

di G.

di

nessun

di numeri.

1 seguito

di

alto.

più

V, si crea

il grafo

per

l algoritmo

cifre

E

che

tale

modo

, s

di riduzione

di ordine

la cifra

ma in

vertice

ogni

. Le

gli

cio

si ia di solito,

funziona

come

con

è mostrata

k, l algoritmo

intero

per archi

di incidenza

la n atrice

come

modificata

5 consiste

Per

archi.

di

v,,

incidenza

sinistra

a quelle

basso

L insieme

diversi

sottoinsieme

4

in base

più

V. E

matrice

La

e, , .

....

che

tale

b

vertice

mostra di

comprendere

Per

modificata

somma

un

è costruito

matrice 36.5.3

G ed

numeri

ordine

NP-completi.

problemi

sulla

base

in

ottime.

quasi fornisce

37

che

rappresentate dei Quindi,

t.

inte o

numeri

-.

ir,

grafo

G

E

sul

36.14 b matrice

La

numeri

ag

B

e,,

e,.

.

36.14 a .

destra.

x

E

G

di G. Sia

di incidenza

matrice ed

VA ...,l ,

Vp

è incidente

e

con

rappresentazione

V

matrice

la figura

esempio,

figura

a

G è una

di

incidenza

V,

895

NP-compleri

Problemi

894

per

i,

o, ... i E -l

Il prossimo di sottoinsieme, un

10 0,

dati

sono

sottoinsieme

256,

NP-completo

problema

un

5 c S, i cui 1041.

1093,

si considera

che

insieme

tinnito

elementi

danno

1344

e t 3754.

l284.

è aritmerico. i

S w come

ed

un

t c

obiettivo

somma

allora

Nelproblesnu

t. Per

pb o .

se esiste l. 4,

se S

16.

1. 16.64.256.

S

x,. c

somara

Si chiede

N.

esempio,

il sottoinsieme

della

iO

64.

h se

1040.

e4

e

4 nrwlifirùsa e3

e7

ei

decinta c do

110

1093,

1284

è una

al solito.

Come

soluzione. si definisce

il problema

SOMilIA-Dt-SOTTOIHSIEiME Come

per

assume mostrare

che

r

interi

è inverosimile

avere

un

un

V4

sottoinsieme

in binario.

Sc

ricordare

Tenendo veloce

algoritmo

0

-

G,

e,

linguaggio

è importante

coditicati

siano

un

esiste

aritmetico,

problema

input

come

S.

qualsiasi

che

vii

e

S tale che

per

che

t

ps

.

seS

codifica.standard ipotesi,

questa

presente il

la

della

problema

1

t

CI VA

VA

di

i4

a

104 1284

0 .l .- i.

..Q

0.

0

0

1

0

G

0

l

0

l

1

xe

0

0

1

0

0

I040

XE

0

1

0

1

1

1093

0

0

1

p

0

0

64

o

o

o

25á

Io 000

si pun

somma

é

o

1

h

sottoincieme. 3g

0

0

l

r4 oio Teorema

36.13 g

Il problema

della

Di iostra io ic. r

S.

del

Per

Si

mo.

che

consideri

il

è NP-completn.

è

SO3 1illA-Dl-SOTTOINSIEiulE so toiniieme

come

5

coh

di. sso

Dat

l un iitann

Cz.

con

dimensione

I- is

un

che k

certiticato.

di

verifica

in

tempo

La

ih

NP,

verifica

per che

un ist inza t

Yv

snlo

I di

pr ihlem

se



un

cop rturi

èittoiniieme

polinomiale. ,,

COPERTURA-DI-VERTICI

del

e

algoritmo

di

vertici.

di

S

SOh1iMA-Dt-SOTTOINSIEVIE. l algoritmo

l

2

2

2

c

q5

ottenuta tra

di sottoinsietme

mostrare si

problema.

empiere

può

somm

3

cui

somma

Cli riduzione

vale

ewttamentc

coitruiice

t.

2

2

3754

896

Capitolo

Per ogni ,.identità

BACO

8j

di

E

della

posizioni

si crea

E,

incidenza.

un

intero

diagonale.

Vj che

positiYO

matrice

La

identità

di

Formalmente,

per

obiettivo

t è k e tutte

è semplicemente

incidenza

è

O, l, ....

j

una x

E

riga

con

E

della

matrice

1 solo

gli

897

NP-compleri

problemi



nelle

l,

E

pi

-J

La

cifra

prima

uguaIi

della

somma

le

cifre

E

di ordine

sono

basso

più

sempre

b

a

a 2. Formalmente lei-i

i c gz

c. j0

Tutti

numeri

questi

binario.

La

riduzione

lazione

dei

bit

hanno può

della

una

matrice

dimensione essere

quindi

polinomiale

eseguita

sono

quando

in tempo

rappresentati

in

la manipo-

attraverso

polinomiale

di incidenza.

d

c Si deve

adesso

se esiste

mostrare

che

un sottoinsieme

copertura

di vertici

S .,

r,,

G ha una

S c. S la cui V c

...

il grafo

V di dimensione

x,

u

Perverificareche

somma

e,è

g

copertura

è r. Per

l . Sia

di vertici cosa

prima

V

basso

più

l della

in

t,

corrispondenti un

agli

vertice

posizione. somma

Se

e, è incidente j-esima

un

2

esattamente un

I alla

soluzione

vertici,

nella

somma

si

supponga

È

S

della

somma

O

di

si Iiay,

cifra

sia

un

l/

in questo

cio

un

copertura C

C

di vertici

E,

l

i

n

s

e

i

m

e

G. Per

per

S

c

o

n

t

i

e

n

e

t

r

e

i

t

n

e

r

v

e

n

t

vertici

u

su e,. ed

nsodificata.

non

uno ci

viene bonn

d

y,. Dato

riporti

i

che

ilalla

un

la e

ancora

verifica

iol11rll I.

lllu V

che

è una

Poicll copertura

lltl elto

c

S

S

la

vertici.

di

r, di

Per

36.2.

paragrafo

e,

36.14

Teorema

di S del

Il problema

su

incidente

è NP-completo.

hanailtoniano

ciclo

ciascuno

un

2. Quindi.

cui

somma

S

è un i

l

n

e

I

l

à

o

è

Si mostra

Dimostrazione.

i

i

z

i

oiiervi o

n

e

e,

d

u

c

o

n

Sia

che

prima

un

Dato

ed NP.

appartiene

CICLO-HA VllLTONIANO

si sta

di

vertice

che. r

n

e

l

a

ogni

per t

i

v

i

Si a

i

d

Questo

controllo

dimostra

adesso

volta

una

V esattamente

può che

essere

con

e, alla

le rappresentazioni e,.,

posizione

in

Quindi.

per

in

ci lscun

1rCO col tribuiice

verif-,care

che

n,

I,

Ill t

c quindi

s llli11 i.

che

V

$ sulle

3-FNC

3 lettere

esattamente

variabili

che

softnstrut1ure,

è una i

-,,

in tempo

eseguitn

se inno

.v con

x ...,

che

solo

e

se

di grafi

pezzi .

$ che

è

fine

alla

ripetuto

C,

C,

C,...., un

polinomiale La certe

un

formula

G

propri th. 6. 5

, è

costruzione

.Siiu

booleana contenente

ciascuna rafo

che

vedere

facendo Data

sodi3isl attibile.

.,

ciclo

un

formi

polinomiale.

cl uiole

garantii .ono

ciascun

co tenga

sequenza

questa

vertice

è NP-completo

in tempn

si costruisce

distinte,

hamiltoniana

ciclo

i

il primo

CICLO-HAlAlLTON1ANO.

3-SODDISFATTIBILITÀ-FNC operando

con

e che

CICLO-HAMlLTONIANO

e

u

controlla

di verifica

L algoritmo

hamiltoniano.

ciclo

in G.

amo e

r.

i

i,,

atTermazione

posizinne

lill i

nel

definito

hamiltoniano

ciclo

del

il problema

adesso

Si riesamina

poiché omma

è

hamiltoniano

ciclo

del

problema

l alla

un COntribuile

li

almeno j-esima

per

ca o.

Il

36.5.4

p

incidenti 4

n

3-SODDISFATTIBILITÀ-FNC

5.

questa a

i

da

ridu ione

di ordine

I nella

niente.

Sosteniamocheni lecheV

dimostrare

nella

A. usata

sottostrutrura

, a , b e b , allora

posizioni

e contribuiscono

cosi

sottoinsieme

lg

La

a

S fornisce

le

per

quando

incidente

g

base

con

contribuisce

Nell altro

il vertice

l altra

contribuiscono

Quindi,

dell istanza

ci

X

S.

c

e, è incidente

.v, c S

entrambi

di t, producendo

di sottoinsieee che

r.

c S , ed

un

di i, non e

36.15

Figura

come

le cifre

V

è una C

V , allora

dopo

vertici,

di

i,

ottenere

una

c è almeno

che ,

Per

considerino

cifra

iinplic i

j-esima

L

I

di

posizione

di V -

della

Adesso,

il che

j-esima

vertice

un

velici

4 modificata.

copertura

e,,

La j- sinsa

posizione.

su due

vivo

su due

si

V è una

che

ciascun

per

.

è iran

quuli

e,. Dato

V . Quindi.

è incidente

con

archi

di

nella

produce

delle

una

V .

l inizialideeli.r

di r in base

G abbia

che

incidenteesattamentesuunsolouerticein

rappresentazione

ciascuna

k se e solo

e si definisca5

j,

r,siosservichelasomnsadei/

Ys

iniziale

si supponga

,

q

seS

la cifra

di dimensione

che basata

ha

sulle

oneacheA CIi

I,- inizi,,Ic

Nella S io

fi v,

due

ilell

obiettivo

36

ciré

v, vc*rtir. i

v.

y, li

t i oche nella

IP. y,. l.

Ia y,.

copeitur y, .

Tutti

somma

i di eli

vertici y

iono

ri.. no

inc1usi

V

v,.

inclusi

in

esattamente

i,. 5

i, od

I,- de ,li.v,.

cnrrispondc ccvirione

sl di

y,.

che

i itliiiiliici11c i-. incidente

36

Capitolo

le parti

capovolgendo

dei

b

per

vertici

due

hamiltoniano

se il ciclo

b

a

piccoli de

b,

tra

b,

tra b... tra

b,

b

e e,.

b,,

e

f,

e e.

che

Si noti

36.16

La

rt

sorrost

B, usata a s n ino

tiara

Nesswir

HA51ILTONlANO.

ridu lone

nella dal

do al

b,

vertice

vertice e

b,

tutti

conrenente

,,

utta ia,

.

della

veitici

i

La umiderato

essere

cm

in

hamiltoniano

di G d A come

la sottostruttura Il sottoerafo che G

8 baia un siano

atlraversare

8 nella

mostrato fi i ura

attraverso tutri

nella

36.16

di un

sotlografo

uno

v e includere

qualche

figura

di questi

due

Si rappresenterà

archi.

*

ottostruttura

G e che

le uniche

che

ci intere s i.

connessioni

tra

Si

suppong

archi.i are.

R ed

il resto

C ,,

Ji

Quindi

.b, ,,

b, . 1,, b b,

e

b,

G abbia una

un ci in

torma

b ,,

pnichi

altri aenti

tutti

vcr i vertici

dell

l

tutti

segue ITl ,l

l10ll

attraversa

tre

per

nella

mostrato

un

e quindi

36.17 .

esempio.

e, data

l arco

e, .

fi ura

36.18,

ie

il grafo f,, allnra

hamiltoniano

l arco

b

1

dall alto

i vertici.x-, e.i- ,

un

G contiene si mostra

che



Si

hamiltoniano.

ciclo

soddisfattibile.

Il ciclo

da

Qndare

sinistra

in altn

a destra

b ..i ,

per

in alto.

pCf

verso

il basso.

turn ire

indietro

Inarco

scegliendo

t. lltl ,11Tlt 1,

l arco

In

di archi.

e solo

se

A come

serie,

i vertici

la

particolare

attraversa

Innanzitutto.

Pni

i v eli

che avere

in

36.15 a -. Una

figura

nella

s,

snttostrutture

diverse

connettono

comporta

t gura

attraverso

passano

esempio

per

serie

una

che

A in realtà della

basso

l5 d .

36.

è la seconda r,fo

uno

e solo

con

o e,

$ è soddiifanibile

formula

h deve

e,

si

A

sottostrutture

le

da

interessato

esiere

puo

l arco

supponga

ltamillr Ridur .

ciclo

oe ,

clausole

in diverse

o in

in alto

archi

connessioni

delle

l aggiuista

anche

sostituendo

arco

apparire

caso

questo m

satc

essere

pria

e,

arco

a CICLO-

3-SODDISFATTIBILITÀ-FNC

ciascun

i cinque

1 , puo

lettera Figura

archi

con

sottostruttura

una

attraverso

di due

naturalmente.

0

e

Per

e e,

s i dispongono

e,.

la connessione di

sostituzione

si

la j-esima

b .,

b,

xe v x, ,

v

x,

mettere

segue

A come

sottostrutture

che

dato

36.17,

è

C,

la clausola

Se

e ,.

A tra

sottostruttura

una

si utilizza

invece,

36.17.

figura

C, è x allora

l arco

con

f , ,,

e

.l

ancora

si devono clausola

della

lettera b,

sini-

b

nella

in basso

0.

questi

la parte

archi

i due

G, poiché

grafo

l arco

connettere

A per

di tipo

del

il valore serie

in

Si connette

attraverso

è che

assegnato

x , fosse

è assegnato

più

questi

L idea

e e ,.

si connettono

e quello

Se la j-esima

le variabili.

C, è .x

figura

più

Si connettono e,

variabile

variabili

le

x,,,.

l, 2, .... n -1.

in alto

la costruzione

con

con

clausola nella

esempio.

d

fmito

le clausole

della

l arco

rispettivamente

sottostruttura

una

lettera

b, a

si connette

con variabile

alla

archi

due

m

per

destra

la parte

con

ancora

abbiamo

in relazione usa

sono

che

x,, .

, Non

x, ,

x, ,

di

ciclo

un

forma

archi

gli

se

alla

e allora

l arco

archi

questi

clausole

le

grafo

Ponendo

segue.

come B,

v, e

si denotano

che è come

allora

e ,.

vertici

due v .

.v ,

l arco

prende

aggiungendo

cicli

stra

di

coppia

Ciascuna

c

dell arco

prende

hamiltoniano

il ciclo

1. Se

tra loro sottostruttura

della

La una

di p, si include

k clausole

delle

copia

i-esima

$, si includono

x, di copie

due

attraverso

preso

sottostrutture.

due

di queste

di copie

si uniscono

sottostrutture

nella

b

variabile

ciascuna

come almeno

I.

k

1, 2,,

r peri

. Poi,

figura

vertice

del

la copia

b , sia

che

principalmente Per ciascuna 36.17.

B, e queste

sottostruttura

delIa

copia

consiste nella

è illustrata

costruzione

ottenuti

si rappresenta essere

deve

hamiltoniano

ciclo

in un

possono

sottostruttura

Questa

si

a-e

essere

le frecce.

si costruirà

G che

al basso.

è che

di base con

puntati

sottoinsiemi

due

i rimanenti

dall alto

e

l idea

cammini

Il grafo

ed

b

36.16 f ,

figura

nella

proprio

sottoinsiemi

di questi

cinque

mostrano

sottoinsieme

di g può, 36.16

Figure

Nelle

archi.

di questi

hamiltoniano

ciclo

Un

saltati.

verrebbero

b, e b,

b.,

b,,

un

attraversare

tuttavia,

uno

da

diversi

sottostruttura

ciclo

899

NP-compleri

Problemi 898

nella

parte

inistra.

e ,oppure

l arco

$0 -

.

itofe Pb

e

C é

b

Figura

La

36.1S

A.

Una

a

della

por. ,ione

8

Perciò

di questi

uno

2,

verità. Figura

36.17

If grafo

G

crrstruiro

dalla

formula

x

x,v

.v,v

p

w

x,

x,v

v x,

n .x,

.s x

0,

allora

nel

ciclo

hamiltoniano

vi

regole

arcr è I

e

.

sicuramente p.

In

Infine

attraversa

effetti

esso

usati

soltanto

D ato l arco

attraversa per

ilzic1o

garantire

ad

8 dal

basso

all

alto

sulla

gJi

che

archi

dentro

il cainmino

h, si definisce lt, allora

si ha

soddisfa

p.

le sottostrutture

passi u

da

una

questi

sotto

refi

sono

o dall altra.

parte

assegnamento

1. Altrimenti,

A, ma

di verità l arcoe ,

ogni

per

appartiene

ue.

Se

di

A e 8

in

facilmente d

polinomiale

consideri

infatti

unn

ciausnla

a cui

è assegnato

ciascuna

clausola

piii

costrniro.

il valore i

C

I.

una

il grafo

G può

ciascuna

delle

in

tempo

p.

ci

si

Quindi

polinomiale.

3k

soiio

un

è fornita

Queste

assegnamento

polinomiale.

una

sottostruttura A.

sottostrutture ha

G

il gufo

b,

b,

in tempo

in p. C i

k clausole

fissata,

s sia

costruito

essere

cui

per

l arco considerato.

che

G

il grafo

per

0, e attraversa

si è assunto

poiché

di

assegnamento

qualche

hamiltoniano

l assegnamento

per

che

dimensione

un

ciclo

Ok

vertici

una

riduzione

le

Poiché

e archi in

e si tempo iD

a CICLO-HAMILTDN1ANO.

3-SGDDISFATTIBILITÀ-FNC

Il

del

problema

viaggiatore

commesso

C, e 1 i corrispondente Nel

b

ite

ed lr. e quindi 36.5.5

Si

del

inflr en alo

per

se x

e,

8 per lettera

ciascuna hanno

l arco C, è zero

clausola

0.

Quest assegnamento

L arco

sottostruttura

istanza

sottostrutture cnstruisce

j come e

una

contiene

Esso

sinistra.

A per anche

hamiltoniano

e , appartiene

si ha x ,

le sottostrutture

è

effertivame

lettera

per un

costruire

applicate

notare

facciamo

soddisfatta

p sia

l, attraversa della

lettera

essere

In conclusione.

ue ,

e,

circo Il.sottografo

vale

proprietà

si puo

precedenti.

la formula

possono

soddisfacente

nn b

corrispondente

Questa

la formula

e , se x,

l arco

se la j-esima

se e solo se

le regole

attraversa

36.17.

p è soddistatta. che

si supponga

Seguendo

esso

vx,v

C è soddisfatta.

la formula

k. e quindi

...,

Viceversa,

quando

una

avere

deve

archi

tre

la clausola

l, e quindi

usata figura

effettiva ne ite

n srru.-ione tipo

di

sottosrrutture

del

problema

viaggintore .

commesso

che

è fortcn ente

IT7iita

ùesidcf

. b coti

completo

IN.LI.R.

ill

lIlglt .hl. .

it

vertici.

si

pliii

Tl ll ling-Arti .im w

dire

che

/ pr l li

il

1i

m

ahhrevi ihi

in TSP.

colle znto

i f re

ungirrP.

al

del

problema

ciclo

ll Inliltolti

ciclo

JI1i .

903

PfP-compleri

Problemi

Esercizi

a un

isomorfo

dati

isomorfo,

sottografo

del

Il prob1ema

3á.5-I

due

se

G richiede

e

G,

grafi

del

il problema

che

Si mostri

di G,.

sottografo

G,

è

isomorfo

sottografo

è NP-completo.

Figura

36.19

U r isran-a

rappresenta ro

un

chi di

giro

problema

costo

minimo,

de1

convnesso

ron

rosto

viaggiatore.

Gli

arclii

eside eiari

in

programmazione nell insieme

visitando

città

ogni

È previsto

un

fare

il giro

il cui

costo

con

costo

7. Il linguaggio

intero

costo

c i,

totale

volta

una

esattamente j

sia

e terminando

viaggiare

per minimo,

città

dalla

dove

nella i alla

totale

il costo

città città

cui

da ed

j,

è la somma

ha

cominciato.

il piazzista

dei

zione

desidera costi

singoli

TSP

c, k

G,

.

G

per è un

E

V,

il comspondente

di decisione

problema

funzione

grafo

Il

teoreina

seguente del

problema

giro

commesso

Teorema

che

è

inverosimile

di costo

che

al più

un

esista

che

A tali

I .

algoritmo

veloce

il

per

del

Si mostri

Dimostrazione. usa

Si mostra certificato

come

sequenza

questa controlla

viaggiatore

1a sequenza contenga

che

che

prima

36.á-á

Il problema

la somm5

del

ogni

vertice

L

giro.

esattamente

k. Questo

più

del

istanza

un

algoritmo volta,

una

processo

Data

di veritica somma

essere

archi

degli svolto

figura

della

e

segue.

Si

j

è NP-arduo,

si mostra

che

di CICLO-HAMILTONIAND.

il grafo

costo

-

TSP

istanza

forma

funzione

c i,

che

un

E

completo

G

CICLO-HAMILTONIANO Si costruisce

V,

F

dove

E

i,

i, j c

V

di TSP

0

se

i

se

di TSP

e si definisce

la

ad

ciclo

Teorema ed

della

il problema

S di A e A

di un insieme

partizione

parte

è NP-completo.

hamiltoniano

in un

massima

grafo.

ciclo

un

determinare

di

è il problema

che

Si mostri

che

,

con

questa

il cammino

che

e , sono

non

essi

anche

funziona proprietà

passi

valida

è più

non

sottostruttura

della

la

oppure

ad

e sotto

la riduzione

Cioè,

ragione sottostruttura,

i vertici

necessario

sopra

trovano

si

A nella

sonostruttura

come del

complicato

è più

36.14

ha

usato

il sottugrafo

che

i vntici

della

o dall altra

i.j E è

uindi

G,

pponon

E e q indi

G ha

a che ha

0

e viene

un

ciclo

il grafo

costo

facilmente hamiltoniano

G abbia

0 in G.

Quindi,

un

determinata

in tempo

se e .solo .se , ciclo hamiltoniano I, è un

iro

di

G

il grafo

polinomiale. G

ha

h. Ciascun con

costn

0.

è

i dir un.iro arco Viceieri .

hamiltoni no

del

rafo

indipendente

creo

di

di

indipendente

i sieme

Un

trovare

di in

E

è incidente

G

un

un

G

grafo al

in

un

più

di

indipendente

insieme

V. vertice

E

un

è

l .

di

c

V

sottoinsieme

V di

vertici

i in li

a.

l

Si e

Si

formuli si

che

dimostri

suppon

a

di

dcAnitri

è

a

avere nella

un

disposizioi e a.

parte

Si

indipendente.

1 piobleinadell insieme lo

Suggerinient

NP-cnmpleto.

lorniii.

riduca

si

mn ma

sottopro urr

che

massiina.

dimensione

decisionecorrispondenta

il problemadi

tale

indipendesite

insienre

de l

Il problei ta

di i

deciiioise

è un

una

hrsienre

36-1

h.

Ir

insieme

insiemi

Problemi

E

i.j c

raf fo

. p iùO.Sisu

appartiene

un

c come

Simostraoracheil costoal

input in due

tempo

come

ciascun

L-istanza

del

piccola

più

S

TSP.

un istanza

j

partizionati

di lungherza

sostiene

Il professore

necessari.

ics tempo

da dimostrare

in

come

prende

lungo

più

ripetuti

36.15 a

dimostrazione

che

polinomiale.

,

è risolvibile

è NP-completo.

Marconi

Il professor

3á.5-7

si

problema controlla

i costi

sicuramente

può

del

semplice

vertici

problema

versione Per

ciclo

senza

questo

ad NP.

appartiene

n vertici

degli

sia

è NP-completo.

TSP

che

cammino

del

il problema

15

commesso

3-

da

in unario.

essere

possono

. Si mostri

/.i

gr

che

36.5-5

semplice Il problema

programmariduca

è NP-completo.

viaggiatore.

36.

si

lo

sottoinsieme

insiesne

rn

di

partizione

di

r è espresso

obiettivo

è se i numeri

Il quesito

numeri.

viaggiatore

il commesso

per

mostra

de1la

Il problema

Z,

S un

della

il problema

che

Suggeri nenro

somma

della

problema

il valore

se

polinomiale

I GZQ G ha

il

che

mostri

Si

è

completo,

V x V m

da

b. Si dimostri

Ax

NP-completo.

è

elementi

con

x di ir interi

SQDDISFATTIBILITÀ-FNC.

36.5-4 c è una

1

della

il problema

m interi,

b di vettore

un

lungo 36.5-3

formale

-

0

che

tale

l

0, intera

vettore

se esiste

richiede

0-1

intera

e un

interi

A m x n di

matrice

una

Data

3á.5-2

grigio

7.

algoritmo

sul

per per

tClla

problClll l

risolvere trovare

il

cricc. .

di

problema ii dipen-

l insien c

G. polinomiule

j

rispetto

a

g

e

E,

quando

ogni

hi

knut

i

l

iotloprui rammu

i

conlat

t come

r

un

passo

Benché

il

speciali

sono

c.

Si

singolò.

d.

vertice

un

è corretto.

algoritmo

che

Si

NP-completo,

il problema il suo

certi

casi

dell insieme

tempo

indipendente

di esecuzione,

e si dimostri

un

il problema

dell insieme

di esecuzione,

i risultati

del

indipendente

e si dimostri

che

l algoritmo

paragrafo

non

orientato v

u,

devono

G

colori

numero

è una

diversi.

della

l, 2, ....

colorazione

a colorare se

V -

c

k

f.

esiste,

un

una

dato

il problema

che

tale

della

colorazione

di decisione

problema

della

problema

Note

Sia se

colorazione

3-COLORI

di un

il linguaggio

3-COLORI

x, y, e

tra

uno

se almeno

e solo

--

dei

di

un

2-colorazione

di

problema

in tempo

è risolvibile

grafo

come

grafo

è risolvibile

che

grafi

è NP-completo,

di

che

allora

3-COLORI

è

3-SODDISFATTIBILITÀ-FNC. si costruisce

un

variabile,

un

speciali

TRUE,

inùipendenti formano i d.

un

Si mostri

decisione. se

polinomiale

in tempo avere

possono il problema

Si

e solo

se

e 3ohnson

Si mostri

della

che è

b

parte

problemi

alla

guida

di molti

problemi

NP-completi

che

un catalogo

dei

aree

una

il

per

nel

NP-completezza

e Ullman

Hopcroft

inclusa

NP-

della

trattazione

buona

3-colorazione.

decisione

delle

L elenco

magnifica

una

forniscono

79 e fornendo

la teoria

si trova

che

La

sottostruttura clausola

e archi

sui

vertici

in qualsiasi o la sua

c FwLSE .

3-colorazione

alla

clausole,

triangolo

Gli

RED.

una

formula

segue. della

usare

può

p di m clausole

L*insieme

variabile,

archi del clausole speciali

si

che

di

dipendono

e formano

un

per

due

riduzione

in n variabili

V consiste 5 vertici

sono

grafo

una

tipi

ogni

vertice

clausole. anche

per

àel

3-colorazione

negazione Si

grafo

deduca he

mostrata nella -. Ciascuna x v y v

sono

colorati

COlllC

ll10 tl

BlO.

e.

rni stri

che

nel

19 /9 è

36.5

paragrafo

4

di

copertura

della

problema

a

vertici

dal

partire

riduzioni.

diverse

e si forniscono

in

Anche

complessità.

della

teoria

della

contesto

la NP-completezza

si esamina

del

problema

ciclo

P fu 61 ,

introdusse

che fu

NP-completezza

nel

introdotta

proposta

la classe

anche da

Conh

e,

Cobhnm 44

da

1964

49j

NP nel

e congetturo 1971,

nel

indipendentemente. che

che

forni

quellu

che

P w NP. le

prime

La

1965

da i

definizione

dimostrazioni

di

ogni

e 3 vertici che archi

Gli X,

X C

sono lettere

RED.

pel

di nero.

Essi

sono

c di un

è colorata che

per

contiene figura

36.20

clausola

gli

è usata

richiede

connessi

glie

l altra

lettere

archi per

un

la

della

di

sono

lettere, o la

verità

per

la condizione

copia clausola

dei

5 vertici

p.

La

è

Steiglitz

c è una

corrispondente che

e al vertice

se

ciascuno

tra.v.

y,

e.,

i

colorato

c niut

o c Fwt.si .

allura

ne l l a figura

speciale

la

sta1i

dimostrati

NP-con1pleti

da

molli

ricercatori.

quando

variabile

lettere.

forzare

unica

archi

gli negazione

assegnamento

qualsiasi proprio

contenente

grafo

c vRuE ,

I

TRL F.

j Si

lasse

Edmonds

. X,

per

clausola lettere

archi

dalle

triangolo

un

di

del

noti

hamiltoniano.

da

Xj X

erano

che

all inizio

a

discutendo

NP-completezza,

NP-completi

il

polinomiale.

una

di

NP-completo,

come

la negazione

per C

E

V,

1

n.

la variabile coloratá

G

FALSE,

dalle

I. 2...,,

Data

grafo

vertice

1Q

36..

PPOùfélna

è NP-completo.

3-COLORI

che

la dimostrazione

un

L dimostrare

lCI

usai

c tRUz .

è colorato

completo. Per

,

al capitolo

Aho. c.

s v

mv

di un

grafo.

fondo

mostri

se

Si completi

Garey

Si riformuli

clausola

alla

corrispondeiire

sortosrrurmra

l, 2, ..., Ic rappresentano

Il problema

necessari

determinare,

per

funzione

i numeri

parole,

di colori

efficiente

E

V,

E. In altre

avere

i1 minimo algoritmo

c

grafo. h.

W

36.20

Figura

27.3.

grafo

arco

adiacenti

fornisca

un

grafo

ogni

per

e vertici

tempo

è 3-colorabile

di un cv

risolvere

per il suo

si usino

di

è di determinare

a.

efficiente

colorazione

cu

l colori, grafo

risolvere

per

2. Si analizzi

grado

Si anaIizzi

Suggerimesito

k-colora. ioire

tale

efficiente

di G ha

G è bipartito.

La

sia

polinomiale.

è corretto.

fornisca

36-2

indipendente

de11 insieme

in tempo

algoritmo

un ogni

l algoritmo

Si

decisione

risolvibili

fornisca

quando

Una

di

problema

quando che

905

WP-compleri

problemi

sottoitruttura j

j

dimostrazione l é4 .

del

Teorema

36.14

à. b rato

su

si trova

in Papadimitriou

e

approssimati

Algoritmi

Molti

di interesse

problemi

tralasciare

tempo

polinomiale

ottima

è spesso

delle

Limiti

un

costo

Si dice input

di

che

al più

discosta

un

per

fattore

una

trovare essere

può

per

in

quei

è chiamato tempo

con

puà

essere

il prnblema

ha rapportn

come

di

costo

il massimn

con

o di minimo.

di massimo limite

ogni

se per

pn

si

approssimato

ottima

soluzione

una

del

tunzione

In

dall algoritmo

prodotta

soluzione

potenziale

ottima.

il problema

C

costo

dal

ogni

quasi soluzione

soluzione

C della

soluzione una

definita

possibile

pn

soluzione

ottime

quasi

in cui

di ottimizzazinne

problema

il costo

n,

presenta

soddintriine

approssimati

algoritmi

piccoli.

quasi una

due

sono

perfettamente

soluzioni

soluzioni

restituisce

Ci sono

approssimati

approssimato

algoritmo

dimensione

essere

In pratica.

è che

NP-completi.

desideri

costo

il minimo

con un

un

ottima

soluzione

o una

che

algoritmi

e si

positivo

una

problem i. possibile

ad

di lavorare

supponga

può

medin .

caso

capitolo

problemi

di

prestazioni

effettivi

trovare

possibile nel

algoritmo

Questo

a diversi

relativi

polinomiale

che

peggiore Un

approssimato.

algoritmo

abbia

sia

soddisfacente.

speranze.

esponenziale ancora

essere

può

ne t caso

te input

tutte

poterli

problema

polinomiale

se gli

perse

luogo,

In primo

di esecuzione

luogo,

secondo

siano

che

significa

non

tempo

con

algoritmo In

si possa

che ciò

tempo

con

algoritmo

un

trovare

per un

Se

è intrattabile.

ottima

soluzione

importanti

troppo

e risultano

NP-completi

loro

la NP-completezza.

aggirare

per un

sfacente.

Si

perché

la

ma

esattamente,

approcci

un

sono

è inverosimile

NP-completo. lo risolva

allora

pratico

semplicemente

- - -. 0

maisitno.

del

I

tppt

r iAcle

ha puo

OSitIll

rapporto fnrnire

IATO llOtl

limite cina

è l11Q 1 itll

u, u le

od

llOIY

detieniti.

ben di

1. cd

netlamsnte

i è assunto

C/C

I . p iicltd

un

1 ,oritmn ie

iure

C

0

Il rapporto

limite

l implica

C IC

approssimato eli qitella

è piii C ed

essere

oltim t.

con

r,pport

più

abbiano nn

trnvato l. U

rande

il rapporto

le soluzione

tutte

che

di

problema

risull i

approssimata

soluzione

Poiché

empre

snno

snluzione

del

ottinsa.

soluzione rapporti

questi

pnsitivn.

QOlltfllO

ottimo

per

di mi nimn.

un problnnu

per il coito

il quale

un

ottim

soluzione

una

cui

per

Per

di minimo.

sia

di massimo

C IC dà il t tt re

Analogamente.

di una

co to

sia

a problemi

ed il rapporto

il fattore

fornisce

grande ll

L

C

approssimai

di quella

cnstn

si applica

definizione

Questa

C/C

37.1

tl

un

ori t ao limite

è più

Talvolta

conveniente

relativo

l errore

di un

operare

algoritmo

con

misura

una

dell errore

è definito

approssimato

relativo.

Per

input.

qualsiasi

essere

ic-c

qualsiasi

diminuzione

aumento

del

di e di un

tempo

Descrizione

fattore

di esecuzione

del

di

un

costante

può

fattore

costante.

essere

ottenuta

con

un

comspondente

capitolo

C dove,

come

ic-c

di una

approssimato.

ha

simato

C* è il costo

prima,

dall algoritmo un

i

eiiore

relativo

e C è il costo

soluzione

ottima

relativo

è sempre

L errore limitato

da

non

della

negativo.

soluzione

Un

prodona

algoritmo

appros-

se

en

n.

37.2

defmizioni

segue

che

I errore

relativo

tre

po1inomiale

essere

può

limitato

da una

funzione

del

rapporto

limite

un

Per

.

37.3

della

algoritmo

approssimato con

la funzione

di costo

di minimo

problema

massimo

si ha t n

Per

p

molti

problemi,

limite

fisso,

indipendente

p per

indicare

Per

approssimato

dimensione

nel

presentato alcuni

rapporti

usando

piccoli

e la qualità studiato

pii

stati

dato

che

hanno

semplicità,

per

ancora con

è lasciare tale

esistono

in

un

crescere

pn

un

rapporto

di

ottenendo fanore

limite

è il problema

problema

Per

in funzione

della

algoritmi

di calcolo.

che

copertur



una

relazione

è il problema

aspetto

è tanto

errori tra

della

importante

da

relativi il tempo

somma

di

meritare

j

Uno

schema

di che

0 tale

relativo

che,

approssimazioire come

prende

per

limitato

approssimazioue

e.

Si

dice

riqpetto

alla

un solo

lo

che se

polinomiale

polinomiale

per non

e fissato.

qualsiasi da

input

uno

per

dimensione

di

problema un

istanza

schema

è un

schema

Il

paragrafo

un

ere

j

algoritmo

0 fissato,

n dell input

un

lo

è

schema

uno

di un

un

valore

con

err ire

un

ten po

crescere

di

esecuzione

troppo

costante,

per

tC111po Per

che

di un

lo schensa

lo schem,

al

decrescere

no

rag

cnitante.

a l/z i

schema

per

fattore

rispetto

di esecuzione

esempin,

uno

esecuzinne

di

più

polinomiale Si dice

di

rapidamente

il tempo

aumentare sia

u c dei

cosi

è polinomiale potrebbe

approssimazione

di

e.

Idealmente,

iungere

se

sia

per

l/e l e tempo

e diminuisce

l approssimazione p carole,

lo è riipetto

per

non

polinomiale

si vuole

j

il problema

approssimato

è, nel

si mostra

dei

peggiore 37.4

della

come

casi,

somma

di

voluta che

nnn

il tempo

copertura

tempo

Anche

orientato

G

oppure,,

c

V vertici

che

della

più

la dimettisi

di esi cuzione

onc I le -n.

ir dell Con

input tn

un

del

schema

poi

esser

possa

di un insieme.

costo

di un

ottimo

di approssimazionè

ottima

di

è un

di

problema

la sua

La

decisione

NP-completezza.

sottoinsieme

entrambi .

o

di

un

per

dato

vertici.

essere

di vertici

come

V

c

V tale

dimensione

PPROX-V

Per

2

E

-

EG

3

while

E-

il ill

vertici

è quello non

grafo

di

orientato.

il Teorema

difficoltéso

36.12,

trovare

trovare

una

come

prende la cui

trovare Una

5

questo

de l I iit in i.

u,

dimensione

i Cu

si rimuova

.,chenu. 7

return

C

v

u.

è un

di

ari

è il

vertici

di

copertura

vertici

di

di

vertici

di

copertura

è NP-arduo

problema

una

copertura

copertura input

è ga

un

antita

ottima

di vertici grafo

essere

G al più

che non doppia

8

C

di vertici

copertura

una tale

R Gg

sia

dn

se

nel

definit

si diie il

poiché

è NP-completo.

complicato

ERTEX-CDVE

C -8

stato

copertura

che

niuna

vertici.

I

è Una

contiene.

approssimato

copertura

E

V. V

di decisione

è cos1

vertici

l ttore

dovrebbe

ic

t,le

grande

non

di sottoinsieme.

dovrebbe

eli esecuzione

pr linnnriale

greedy

copertura

l.

senza

fissato

della

uno

in maui

che

di vertici

dimostrata

copertura

di

se può nnn

di

si è anche

ottima

tuttavia

4

pienamestte

limite

un

con un ale6ritnw

anche

un metodo

presenta

del

studio

viaggiatore.

mostra

rappotto

i problema

per

il paragrafo

il problema

con

lo

presenta

commesso

Esso

ùi

schema

NP-completo. 37.2

del

triangolare.

37.3

con

minimizzazione

a 2. Il paragrafo

efficiente

costo

dove

problema

algoritmo di

a n.

di espprr ssima ione

avere

a 2 per

uno

comincia

dell istanza.

In altre

come

schedina

di

paragrafo

per

minima,

copertura

A

Il

non

grafo

G allor

dimensione

schemn

impiega

Nel

copertura

36.5.2,

Il probfesna

algoritmu

approssimato

algoritmo

il cui

della

della

problema

numero

sempre

detmizione

anche

un

In conclusione,

Il problema

di

sottoinsieme

è ma

problema

apprnssimazione

di e

qualsiasi

ottimizzazione del

fissato

approssimato

copertura

di

fissato

la disuguaglianza

NP.

polinomiale

relativo

approssimato

P

37.1

con

approssimati

presenta

t, li

propria.

c

sv.z

di calcolo

una

che

logaritmico.

della

raggiun

possono

raggiungere

Cioè

esempio

Un Questo

approssimati

limite

soddisfa

paragrafo

problema

limite

di algoritmi

paragrafo

Il

un

esempi

e l ultimo

e o

alcun

fisso.

un

vertici, rapporto

rapporto

un algoritmo

pienamente

rapporto

determinare

limite

a meno

1.

problema che

la notazione

di

grado

il rapporto

equivalentemente,

o,

tempo

più

37.4.

paragrafo

un

per

37.3

37.3.

dell approssjmazione. nel

si userà,

sono

di

piccoli

sempre

approssimati

polinomiale

esempio

paragrafo

sempre

mentre

n.

fare

NP-completi

problemi

limite

uguaglianza,

la disuguaølianza

problemi

non

si può

Un

un

algoritmi

questi

tempo

che

essere soddisfa

sviluppati

da

con cosa

n dell input.

insieme

stati

informatici

gli

la miglior

problemi,

che

dipendenza

problemi,

algoritmo

risulta

1 /p n .

da n. Per

a non

altri

Per

sono

questa

di con

triangolare

come

alcuni

presentano

NP-completi polinomiale.

copertura

approssimato

usato

capitolo

problemi

pienamente

problema

esistere I

pn-

più

per

disuguaglianza

en

di questo

paragrafi

approssimazione

C Dalle

I primi tempo

un

generico ri.

i

da

E

ogni

arco

di E

arco

inciclu te

in ri o in

di sia

vertici

quasi

orientato di quella

di

un

ottima. e

restituisi c di una

G.

gr tt

Il se

cop

ucnt ut rl r

i

e

C ,

2 C ,

C

vertice il

cosicché

5

dimostrato.

risulta

teorema

di A. Perciò A

arco

nessun

un estremo,

in A condivide

di archi

di un

su più

è incidente

copertura

coppia

nessuna

di A. Poiché

arco

ciascun della

pb

91 l

approssimati

A1goritmi

Esercizi b

a

Si

37.1-1 c----

non

soluzione

di

copertura d

c

di un

algoritmo

greedy

di

Figura

37.1

ll fim ionamerrto

archi.

b

vertici

b e c, mostrati

che

si sra

da

alcuni

C,

che

fl

La

La

L arco

in Gli

vertici

in

coperncra

figura

37.

ad

E

6 iterativamente che

un

coperti

un appropriata

da

struttura

Teorema

a

prodotta

da

per

questo

37.

de11

C.

La linea degli

EG

archi

v. Il tempo

di dati

per

che

del

Teorema il

nel

senso

sei

vEe.

La

b,

d ed

c, d.

delle

linee

tutti

gli

3-

v

la

L insieme

vertice Per doppia

dato

del

cA

uguale

limite

che

di vertici cicla

C restituito

da

finehéi

gli

tutti

APPROX-Vzwrcx-Covcn

dimensione

situazioni

suoi

estremi

che sono

per

è una

AuvRox-VeRtcx-CovER archi

in

EG

siano

coperti

copertura da

ed

in

di

una

ciascun

cancellati

particolare

costante

notazione

vista,

un

giro

con

si indichi

c ahi, v

negativo

di G che

costo

abbia

grafo

a ciascun

associato

minimo. di tutti

complessivo

il costo

cA

un

dato

36.5.5,

paragrafo

non

intero

hamiltoniano

ciclo già

nel

introdotto un costo

gli

E

dicendo

che

restituisce coperture

copertura

una si

ottima,

di

con

denoti

A

vertici

Che

l insieme

arco da

E

selezionato nella

line ,

nella h.

Perci ,

linea o,,ni

4,

tutti

esecurione

gli

altri

è

degli

archi

l .1VC

Jl

di una

incidenti

linea

una

copertur i

ottima

C

deve

includere

ile n

non

mai

può

c soddisfa

di coito

la funzione

più i non

può

aumentare la disugtrpglian

essere il costo. a

dal

direttamente

andare

economico

Detto

costoso.

meno

se per

triangolare

altre

si formalizza

nozione

Questa

po to

enn

tutti

i vertici

più

V

11

C ll,

5

l

C lt,

eitrcrno

W .

C1,

è

triangolare

di ugua lianza

Per

soddisfatte.

n turale

abbastanza

esempio.

se

i vertici

ed di

un

nei del

trasferimento

6...iun,.e

u

fermata

sempre

itstermedie

fermate

archi

costo della

risulta

praticlte.

qualche

trian

vertici

limite

rapporto

la risposta.

Si giustifichi

con

un

trovare

attraversare

ir. il salto

La

dato

di

relazione

Questa

con

approssimato

un algoritmo

sono

è il complemento

ottima

complementare.

grafo

della

il problema

NP-completi.

.

pc u,v a.v1cA

autohsatic tmente estremo.

ottima

viaggiatore

E

V,

A c

sottoinsieme

parole,

ll,

della

della

a 2.

in C. verificare

che

E.

rappresentare

rapporto

l algoritmo

che

di vertici

nel

che

anche entrambi

cricca,

copertura

viaggiatore

G

si deve

e E,

estensione

In molte

vertici,

alto.

mostri

di vertici

copertura

una

si è ottenuto

della

una

cricca

commesso

orientato

non

u,

archi

usando

è OE,

arco Come

archi

del

problema

completo

La linea

ir al posto

di

che

esempio a 2.

uguale

trovi

più

il grado

I

APPROX-VERTEI-COVER

Dimostra ione.

un

che

36.12,

massima

commesso

del

Il problema Nel

C contiene

Il ciclo

algoritmo

e, f, g.

37.2

vuoto.

a C e cancella

di questo

per

c aperti

e.

variabile

insieme

dato.

grafo

estremi

di esecuzione

b,

che

essere

della

Si fornisca

con

L insieme

e

vertici

il problema

vertice

della

il problema

risolvere

per un

limite

rapporto

problema

dimensione

ci possa

che

copertura sono

a C.

di

cricca

una

incidenti.

efficiente

ed

/

del1a tesso

x enici

C all

del

i suoi

i e 8

implica i vertici

contiene tre

7 i e rie

ha

APPRox-VERTE -CovFR.

detto

sr lo

che

G,

è aggiunto

g

1 inizializza

v da E , aggiunge

u,

d,

contiene

grrc blema

u o da

inpur

rimossi

sono L arco

d

di APPRox-VERvex-Co

insieme

arco

di

greifo

AvvRox-Vzamx-CovER.

sta costruendo.

copia

toglie

sono

tratteggiati,

d,

è aggiunro

il funzionamento cheti

una

aggiustati

e c,

e j

Il

a

arco scelto da è il primo insienie all C conre rente

scuro,

scino c,

vertici

I illustra

di vertici

2 assegna

in E

di

ERtcx-CoveR.

grigio

e,

vertici

ottima

la copertura

b,

a, L arco

c di

copertura

in chiaro.

grigio

archi

C.

Avaro -V

mostrato

c,

b,

creaitdo.

è la

di

sempre

produce

lineare.

tempo

vertici

complementari

euristica

ricorsivamente

ha

non

la dimostrazione

copertura

AwRox-VaRtEx-Cover

seguente

archi

i suoi

professore

in un

albero,

Con

37.1-4 0

e

un

Si fornisca

37.1-3

cui

per

selezioni

Si

tutti

poi del

l euristica

la

propone

vertici.

rimuovendo

grafo

ottima.

Nixon

Il professor

37.1-2

r

di un

l esempio

fornisca

una

di

lare

è

ioddisl zila.

tra

due

vertici

è Ia comune

distanza

eucl

in grafo idea

molte

tra

risulta

applicazioni

sono

puisti essi.

del

piailo

lu disuguaglianza

et

il

Come

è mostrato

disuguaglianza viaggiatore.

questo

altera

la

che

si riesca

in

problema

che

assumere

37.2-1,

non

è invemsimile

Quindi

risolvere

per

nell Esercizio triangolare

funzione del

a trovare

esatto.

modo

la

NP-completezza

di

soddisfi

del

un algoritmo

con

si possono

cercare

Invece,

costo

problema

la 8.

commesso

tempo

Nel

algoritmi b

co

37.2.2

costante

seguènte

calcola del

la

funzione

TS P- Toh

1

seleziona

un

2

costruisci

un

3

sia

4

return ricorda,

incontrato

e prima

figura

mostrai

37.2

anticipato

TSP-TouR.

La

Il tempo

che

si

un istanza

del

dal

vertice

APPROX-TSP-TovR ottimo.

giro

di

disuguaglianza

orientato

albero

in

venga

figlio

di

il giro

che

quesito

ottimo.

giro

un

ottimo,

commesso

L di

non

un

appena

La

il minimo

albero

mostra

c

albero

visita

questo

viene

della

figura

che

i vertici

mostrerà

il cui

costo

che

è più

corto

8Y, che

soddisfa

la

non

di circa

è più

se

la

l input

è un

funzione

di

disuguaglianza

grafo

costo

di

del

doppio

visita

volte

che

visita

approssimato

viaggiatnre

commesso

che

con

.soddisfa

rapporto

la disuguagli

limite

uguale

ianza

equivalente Poiché minimo

del un

albero

.albero

FP

teorema

una è che

soluzione cH

di copertura di coperlur

attinica 2c H .

si ottiene per

l insivl11c

l insieme

per dove

H è il biro

cancell mdo dei

dato

vertici

un d ti,

dei

c ilcolato

reo

gualcii si

trian

vertici. da

z 2 per

completa

di

19.074.

è circa

totale 14.7

UA

e

giro

ottimo

H

per

me

l insic

errici

dei

l á.

dell

i velici

T elenca

su di loro

si ritorna

una

dopo

esempio

b, c, IA, h, l , a, d, e, f,

Un

sono

quando visita

ad

ogni

rcu

un

la prinsa

visitati

Si chiami

sottoalbero.

volta

tutte

e anche

N questa

visita.

è

dato

un

iro,

e, g, e, d, a . attraversa

completa

di

T

esattamente

due

volte,

si ha

37.5

2 cT.

z lV

enuniiatn

la visita

che

equ zinni

Le

il

oltre.

quindi

e

37.4

37.5

ulte

implicano

37.6

2 cH . il

insto

di

W

nvn

s ipera

il

arriva

r n

à 1ppiu

til

di

coito

un

iro

ottimo.

t.

Ave nn-TSP-Toi d

n sto

è circa

37.4

completa

c 1V

algoritmo

totale

.

Una

a,

costo

37.2 è un

costo

triangolare,

del

grande

suo

cH

cT

AvvRox-

il 23 7e.

che

Il

visitati

di T siano da

Il suo

APPROX-TSP-To R. dati.

Tcostruito

è restituito

dato

adesso

a

parte

di copertura

come

corrispondente

viaggiatore giro

MST-PRtii G.c.r T

anticipato vertice

è OE Si

un

ordine

di

ArvRox-TSP-TouR.

il giro

24.2-2 .

di

visitato.

n. La parte

giro

r usando

radice anticipato

un

mostra

b

radice

fornisce

Sia

e

Si vedrò

e

Dimostrazione.

d

c

usando

G,

di copertura.

di un

a

b

triangolare

non

grafo

nell ordine

elencando

Avmox-TSP-TouR

del

APPROX-TSP-TouR del

r

con

Dato

Teorema

problema

G dalla

visualizza

visualizza

e

problema

allora

paragrafo

approssimato

triangolare,

in ordine

visita

una

e la parte

d

l Esercizio

di un

algoritmo

lunghezza

i vertici

il funzionamento

e la parte

veda

commesso

radice Tper

albero, suo

qualsiasi

di esecuzione

completo

un

su

il minimo

della

visita

che

dell

dati,

parte

la

ottimo

la visita

con

13.1,

v6-tici

a partire

in ordine

del a 2. Nel

NP.

con

vertice

H che

i vertici

dei

uguale

un

trovare

doppio

di copertura

visitati

illustra

insieme

da MST-PeM

albero

paragrafo tutti

per

il problema

la disuguaglianza

del

come

hamiltoniano

dal

quasi

24.2

più

r c V Gj

vertici

il ciclo

P

per limite

c

minimo dei

ricorsivamente

La

R G,

giro

soddisfa

è lungo

vertice

L la lista

costo

che

viaggiatore

paragrafo

di

non

un

ha rapporto triangolare,

a meno

commesso

algoritmo

fornisce

APPROX-

Si

del

approssimato che

disuguaglianza

esiste

MST-PRIM

quando

algoritmo

la

non

Il problema

l algoritmo che

senza

algoritmo

un

triangolare

juaglianza

che,

limite

37.2.1

Il

la disu

si mostra

rapporto

si esamina

37.2.1

paragrafo

d

polinomiale

buoni

approssimati.

viaggiatore

913

approssimati

Algoritmi

se

T i un

allora ordii mento

indica

che

si

dirctt. inentc

da

.

Ripctcitdo1 tpplicazinnc

di

questa

le La

operazione

si possono

la prima. a,

rimuovere

Nell esemjio,

le visite

W tutte

da

successive

dello

vertice,

stesso

tranne

Le

risulta

l ordinamento

polinomiale

g. è uguale

ordinamento

H il ciclo ogni

comspondente

vertice

TouR.

a questa

è visitato

Poiché

visita

esattamente

H è ottenuto

visitando

ottenuto

a quello

anticipato.

in ordine

una

volta,

cancellando

l albero

ed

È un

in realtà

vertici

ciclo

è il ciclo

visita

dalla

T in ordine

anticipato.

hamiltoniano,

calcolato

completa

da

cui

Sia

H,

poiché

Ma

giro

qualsiasi

del

costo

qualsiasi

arco

usa

un

non

in G sono

IA

che

Dato e

37.6

37.7

se

parole,

usare

deve

in E ha

non

che

di

ciclo

alcun

contiene

non

1. per

di H costo

arco

arco

qualche costo

un

G

G ha un

originale

il grafo

è in E.

non

almeno

PIA-

37.7 le diseguaglianze

altre

Se

a ciascun

W, si ha

c lV .

Combinaiido

di G

giro

che

In

ag.

c.

G,

c assegna

di costo

di G in tempo

rappresentazione

una

viaggiatore

commesso

di

giro

da

create

essere

la funzione

allora un

allora

PIA

cH

il problema

Hamiltoniano,

ArvRox-TSP-

g

ora

contiene

c

G.

e c possono e

rispetto

hamiltoniano

ciclo

G

a

Si consideri

b, c, h, d, e, f,

Questo

di

rappresentazioni

si completa

la dimostrazione.

dal

37.2,

8

archi

gli

hamiltoniano

sia un ciclo

che

c è una

costosi,

cosi

in G

costo

altro

di qualsiasi

g

di

approssimazione

che

A restituisce

tra

differenza

grande

ed il costo

di un

il costo

giro

giro

maggiore

costo

di p g . il rapporto

Malgrado TSP-TouR

non

approssimati

limite

la

è

che

favorevole

miglior

scelta

in pratica

stabilito per

pratica

hanno

Teorema

questo migliori

prestazioni

Ci

problema. vedano

si

Ai vaox-

generalmente altri

sono

i riferimenti

alla

viaggiatore

fine

di

capitolo .

questo

accade

Cosa

algoritmi

i

volte Se

il costo G non

37.2.2

Se

II

problema

si elimina

l ipotesi

si possono

del

generale

che

trovare

commesso

la funzione

in tempo

c soddisfi

buoni

la disuguaglianza

triangolare,

a meno

che

P

Se

P e NP

non

rapporto



alcun

algoritmo

il problema

p per

approssimato del

generale

con

commesso

tempo

con

polinomiale

numero Senza

p.

36.14,

il

efficiente

se G contiene Si trasforma

segue.

V,

E Si

u.

v

assegni

u, v c un

costo

E

NP, del

to A ipotizzato. G

del

P

un istanza

Sia

nel

problema che

Si supponga

ciclo

in tempo

hamiltoniano il Teorema

per

è

istanze

del

se

un ciclo

h ns

hamiltoniano.

iltoniano

G in un istanza completo

ciclo

del su

V

facendo problema

cioè

Si desidera uso del

dell algoritmo commesso

problema

in

per

u che

arco

in E

come

segue

è nel

non

supponga

11

-

l

se

tc,v e

E,

I

tempo

di p g.

maggiore

in tempo

del

determinare

la cui

ma

in

del

doppio

che

questa

costo

di

trasformazione

In ciascun

un

restituisce

di

polinomiale

il ciclo

il cui

per

i vertici

tutti

fi ché

il vertice

costo

Si

è minima.

ciclo

del

v. Si estende

giro

costituito

banale

si identifica

passo,

qualsiasi

v. Si ripeta

dnpo

euristica

la

insieme

l approssima-

un ciclo

vertice

a u sia

vicino

più

tempo

costruire

per con

Si cominci

da

problema soddist

costo stesso

lo con

vicino

piii

di

P w NP.

che

puerto

distanza

ciclo

del

un

tale

una

arbitrariamente.

scelto

ciclo

devono

del

istanza

un

avere

istanze

viaggiatore.

immediatamente

u inserendolo

sono non

totale

includere cielo.

nel

è più

del

ottimo.

giro

approssimaviaggiatore

come

I j

37.2

3

Il

del

problema

trovare

re,

ii

altrimenti. moclo álllCllC

che

Assumendo che

mostrare

che

rapporto

lignite

tutti

che l

non EYCIClllO

viiita

una

prendendo si n

i nudi

elimin iti 24.2- 1 .

di

3. un

un

1

si

cluc

di

ulhero

nocli

ed intermedi

arco

ciclo

del

con

tempo che

ricorsivamente

copertura

eliminando cnirsecutivi.

sia

triangola-

disuguaglianza

mostri

di

problema

approssimato

algoritmo

St ggerintento minimn

il

è

lungo

più

soddisfi

costo

dell alhero eli

bottiglia

di del

lunghezza

esiste

completa piii

la di

funzione

questo

per ha

la

che

problema

visitare

pcis ono

tale

col1o

con

viaggiatore

connesso hamiltoniano

iLcicio

minim .

Volta.

pV 1

restituire.

hamiltoniano

funzione

la cui

assumendo

euristica

commesso

il vertice

che

polinomiale

C ll,

è7.3.

il

j j

a ciascun

perché

vertice

da un singolo

Poiché.

risolverlo

Si spieghi il Teorema

del

di un giro

due

Le

la seguente

Si consideri

37.2-2

Si dimostri del

a p

superiore

A lo deve

costo

ciclo

polinomiale

istanza

in un altra

limite

eccesso

per

polinomiale.

NP-completo

I

qualche

36.4.

V e u c i . intero

risolvere

per

ottime.

contraddica

in tempo

trasformare

triango1are.

soluzioni

zione

arrotondandolo

A per

36.5.5

paragrafo

che,

e rapporto

polinomiale

intero,

p

assurdo

per

tempo

l algoritmo

usare

problema

il grafo

A con

supporre

può

come

definito

G V, ,

modo

si

adesso

implica

polinomiale

assurdo.

approssimato

generalità

hamiltoniano

Teorema

è per

algoritmo

Si mostrerà

ciclo

Sia

un

di

perdere

necessario. del

dimostrazione

La 1, ci sia

p

di

giro del

il problema

risolvere

viaggiatore

disuguaglianza

I

viaggiatore.

si possa

come

commesso

non Dimostrazioi e.

un

A restituisee

allora A per

l algoritmo

Si mostri del

1, non

limite

hamiltoniano.

ciclo

non

allora

hamiltoniano

commesso

del

problema di costo

giro

Esercizi

37.3

e p

un

usare

un ciclo

se G contiene

onimo,

al

A un

i P. 37.2-I

Teorema

è garantito

polinomiale.

approssimati

giri

che

Dato

D

viaggiatore

di costo

polinomiale

ha

l algoritmo

applica

c

di un giro

si può

Perciò,

si

se G,

una

e uttamente da

esia Si

i nodi confronti

in

approssimai

Algoritmi

Si

4

37.2

supponga

siano

che del

punti

Si mostri

che

i vertici

piano un

giro

di

del

un istanza

v

e che

il costo

c u,

ottimo

non

attraversa

del

problema

sia

la distanza mai

commesso euclidea

viaggiatore tra

i punti

u e v.

se stesso.

O

O S,

37.3

Il problema

della

della

Il problema problemi di vertici

e perciò

copertura

della

soluzione

approssimato

una

x

ostante

ciò

dare

rispetto

risultati

questo

alla

e

ha rapporto

che

F

X,

delln

del problema di sottoinsiemi

E

SA

copertura che

di u

iiisieme

ogni

elemento

consiste

S4

S

istan a

una

Figura

soluzione

neri

quest algoritmo

di un insieme

di X appartiene

ed

g reedy

utili.

di X, tale

e

la dimensio-

di

lentamente,

o

s,

è quindi

problema,

dimensione

piuttosto

il problema

gestire

greedy del

Sz

molti

copertura

problema,

euristica

dell istanza

cresce

logaritmica

modella della

per

per

semplice

dimensione crescere

puo

la funzione

sviluppato

applicato

una

che

NP-completo

S.

famiglia

sottoinsieme

essere

della

approssimata

non

approssimato

Si esaminerà

al crescere

che

generalizza

tuttavia

può

di ottimizzazione

il problema

O

O

O

è un problema

Esso

approcci.

dato può

Un istanza X ed

insieme

L algoritmo non

Cioè,

Tuttavia,

ottima.

un

altri

logaritmico.

limite ne

vertici

di

insieme

di un

di risorse.

è NP-arduo.

tentare

necessario

di un

copertura

di al locazione

della

copertura

37.3

Uii

E

S

approssin atá

del

F

X, S,,

S S,,

S,,

S,

ra

cvpertu cwt

copertura

copertura

ni a

produce

della

prob1ema Una

.

di

di

un

dvve

insieme,

e minima

dimensioni

S,,

S,. S, ordinè,

dei 12 punti alg o ritmo

L

.

nel

4 se1e.-ionando,

diinensiorte

X consiste

è C

i isienri

gli

S,.

e 5,.

S,

finito

ad

almeno

GREEDY-SET COVER X,

F

di F

ps.

l

U

X

2

C-

3

while

SCP Si dice

che

un

sottoinsieme

un sottoinsieme

S c 2

di dimensione

è una

copertura

minima

C c F

dei i cui

suoi

elementi.

elementi

Il problema

siano

una

è di trovare

copertura

di tutti

l

Uw8

do 5

di X

x

ps.

I

37.8

SEC C che

Qualsiasi

soddisfi

l equazione

è detto

37.S

una

copertura

di X. La

figura

37.è

Il problema

della Per

formare

capacità

ogni versione

copertura

copertura

La

problema.

del

versione

else

ci

sia

al più

k, dove

decisionale

di molti

X rappresenti

un

del

di persone

illustra

membro

del

copertura l è un

problema

di un

ulteriore

di rapacità a lavorare

C return

che

ha

insieme,

parametro

è NP-completa,

ci

quella

di tipo

sul

problema. tale

che

capacità.

si chiede

se

per

esiste

figura

è richiesto

j

che

5 n

massimizzi

37.3,

GREEDY-SET COVER

come

segue.

hanno

una

U

a C gli

insiemi

nd

passo

aggiunge

S,

S.

SA. S

greedy di elen1enti

prendendo.

rilllasti

anconl

non

passo.

l insieme

S che

è coperturadel

mg

fior

di decisione di

S è stato

che

un

che

non

coperti

con

sono

rimn si

sottotJmiglia

una

risolta

parità da

si sta S che

sottoinsieme

elementi

C contiene

degli

l insieme

la copertura

è scelto

ancora i suoi

l in ieme

ogni

C rappresenta greedy

elementi

selezionato.

termina.

l algoritmo

U contiene L insieme

U, ed

5 è

di F

che

da

essere

di X. GREEDb -SET-COVER

con linee

eseguito

in ciascun

numero

massimo Dopo

L in ieme copertura.

il passo

4 contiene

in C. Quando

O X opera

linea

algoritmo

L

non

del

copertura

approssimato

greedy

La

copertura

posto

del di mostrare

funziona

arhitrariamente .

una

37.è-2.

algoritmo

numero

S

ancora

che

costruendo. sia

Nella

specificatonell istanza come

I

delle

Il metodo

Cu

di

L algoritmo elementi

eseguito

Un

S

C

Nell esempio

necessarie

di persone,

possibile

gruppo

comuni

problemi

insieme

disponibili

numero

il minor

un della

problema

è l astrazione

un insieme

contenente

in X,

dimensione

nell Esercizio

ci sia

un gruppo,

decisionale

insieme

si supponga

e che

richiesta

con

di un

esempio,

un problema

Si desidera

6

U

nell ordine.

combinatorio. a risoh ere

Uc

7

problema.

questo

un S c S

seleziona

quelli

può rispetto

polinomiale

è a/più

3-6

min X ,

tempo

O X

min ,Y , E .

L

in E

tempn

F F ,

Esercizio

essere

ed il corpo allora 37.3-3

del

esiste richiede

Poiché

eicln una

in

facilmente

realizzato S.

a Xe

può

il numero esserc

realizzazione la definizione

delle

realizzatn che

modo iteraziuni ii

modo

del

richiede

di un algoritmo

ciclo

da essere tempo con

tempo

lineare.

coperti. Analisi

J

È

Si

mostro

adesso

che

l algoritmo

givedy

reitiiui cc

cin i

copertur i

il ll

iniiC1118

Clll.

I1OI1

è

Teorema

37 4

Si osservi

GREEm-Sm-CovER H max S

ha S c

limite

rapporto

che S,v...v

5,u

AS

che

la scelta

La

algoritmo,

usando

dimostrazione

costo

questo

costo

questo

derivare

per

assegnando

procede

distribuendo

sugli

un costo

elementi

a ciascun

coperti

insieme

la prima

per

seleziona-

volta,

del l insieme,

denoti

con

richiede

S,

costo

1 quando

uniformemente

tra

assegnato volta,

l i-esimo

richiesta

della

tra

copertura

aggiunge

dell

a C.

coperti

x, per

ogni

per

la prima

è còperto

selezionato 5

elementi

gli

all elemento quando

sottoinsieme

scelto

5

che

al posto

S non

copra

elementi

più

di quanti

ne

copra

S

di S .

si ottiene l

la relazione

C , e la dimensione

stato

Conseguentemente

la dimensione

di

C restituita

insieme

una

copertura 5

dal l algoritmo.

Si

prima

Se .

costo

questo volta

x e X. A ciascun volta.

GREeov-Sm-CovER.,

distribuisce

la

per

da

da

elemento

S,.

di

è assegnato

è coperto

selezione con

un

la prima

per

EC -l

i

l

I algoritmo

denoti

Si

i

l

/ i-

x6S

Si

S,,

e quindi x

ottima

di S garantisce

greedy

sarebbe

altrimenti,

to dall

S,u...u

S- S,u Ll.

F dato

Dimostrazione.

S,

costo

voIta

da

di

c,

Per

S

valori

interi

a e b, con

il costo solo

a

b, si ha

b

una

H b -H a /lli

S,. allora

I

1 .

b-a uS,,

b

S,- S,uS,v L algoritmo

trova

elementi

di X.

j

una

soluzione

Perciò,

dato

C di costo

che

anche

totale

C,

la soluzione

e questo

ottima

costo

Usando

è suddiviso

è una

C

copertura

su

tutti

g H ia,

c,

g

disuguaglianza,

questa

xE X

Hu

fra

CS

deIla Per

poco.

insieme

qualsiasi

H iSi

c,

è basato

sulla

disuguaglianza famiglia

alla

chiave,

che

sarà

provata H 15l

E,

.

dato

37.10

Dalle

disuguaglianze

0.

H0

dimostra

S

S

S

il teorema. insieme

qualsiasi

segue

è7.10 ,

che

Corollario

e i

degli

dall algnrittno. coperti. almeno

Sia uno

la prima

Si

1, 2, ....

volta

in S ancora

definisce

/- il più degli

ha

da

ditnostrare

la

disuguaglianza

Si

usi

Per

37.10 .

C , sia

In alcune

u

insiemi da

non

S,

S,,

S , per

i

coperti

dopo

AS il numero

indice

piccolo

rapporto

limite

In X

tale ..., l,

che

S .. Allora. 2, ....

I.

degli .

0. cosi n,

che

S,,

elementi che u, e u ,

Quindi

S,,

..., di

ogni

S,

S, ago,to tutti

elemento w, elementi

stati

selezionati

ihizialinente

piccola. noi

ics 5 è coperto di 5 sono

di

da

coperti l

vertici

la disuguaglianza

applicazioni

GREEDY-SET COVER elementi

della

disuguaglianza

D

37.10 .

37.5-

Dimostragioize. solo

quindi

S,u5,u...uS

il numero

la dimostrazione

l.

C F ,

Rimane

S e F

completa

Questo

GReeov-Set-CoveR

H max

AC che

e

37.9 ill

Esce.

per

che

.

j

xcS

u

H

Hn,

seguente

S appartenente

Hu.

H uo

37.9

dimostrazione

telescopica

--I

X,X, Il resto

la somma

-H u,

pc, xcS

SEC

si ottiene

gli

di X, si ha

Ciò

max

S

è più

grande

per

esempio

acca

appros,.imata.

per

un

ed

3.12

S c F

una

è

costante

di uilB SOluzione qu utdn grafo

soluzione

trnvata

con

GREEDY-SET-COVER

soluzione

ottima.

una

prestazione

che

al più

euristica

vertici llOI

è

i. leggermente

e cosi per

al

più

fornita

costante

moltiplicatii

per

ottenere

una

3.

grado

di H 3 migliore

la soluzione

una

è usata

hanno più

374.

piccola,

ottima

questa i ccii

il Teorema

l 1/6

vnlte

di quella

da a

copertura

In questo rande più

creo.

la

di una

di Avr Rox-VeRtvx-

COVER.

j S.

Sj

U

S1

U...

U

S,

Esercizi

.373-1

Si c nsideiinociascun dash,

drair ,

della heard,

egUCllll lost,

p nos ,

1TOIC

COlllc

shunt,

Ull

lllslClllL

s1ate,

di lettere s are,

ar threaà .

d,

Capitolo

Algorinni

37

37.3-2

insieme

Si mostri

quale

è risolta

in favore

Si mostri

mostri

Si

come

tempo

37.3-4

decisionale dal

riduzione

per

restituisce viene

che

parola

la versione

che

NP-completo

37.3.3

di copertura

della

realizzare

GREzov-Set-CovER nel

prima

del

della

problema della

problema

copertura di

in

tale

GREEDY-SET-COVER

modo

insieme

di un

è

che

sia

eseguito

in

o g sl .

Si mostri c

che

la seguente

max

C

forma

debole

più

del

Teorema

vera

è banalmente

37.4

-s EF .

s

fusione

delle

merge

sort

paragrafo

dare

una

famiglia

di

I

nm S

2

Q

3

fori

GREEDY-SET-COVER

rispetto

alla

risoluzioni

dimensione

del l istanza,

della

nella

parità

cnpertura

di

un

insieme

che

soluzioni

Le

scelta

di soluzioni

di S ne11a

diverse

diverse

discendono

L

Il problema

della

Un istanza

del

v.....

x,

di interi

un

sottoinsieme

Il problema

return

da differenti

x.,

pratiche.

Nel

la cui

somma

v

si supponga

di avere

da spedire.

il peso

In questo

che

intero

Questo

la più

vagone

che

quali

ha peso

limite

dei

la somma

Si

denoti

coppia

dove

S un

insieme

e quindi

sia

grande

si desidera ma

possibile trasportare

può

pienamente

più

più

dir

un

grande

tonnellate

di

sottninsieme

di r. Per

0,

1,4,5 ,

P,

0,

l, 4.

ed n diversi

il vagone

il più

P,,

pacchi senza

possibile

si puo

Se L è una di

interi

allora 5X

lista

di interi

tempo

modificare

per

l algoritmo Si

polinomiale. un tempo

esponenziale per

ricordi

che

di esecuzione

che

questo

2

S X SC

pnsitivi

3.

4, 5. 7. 5.

ed x è un altro di.v

I I.

Questa

ciascun

di t

grande

di di

tutti

i valori

che

possono

e sommando

.x-,, x.....v

essere

ottenuti

i suoi

elementi.

un

selezionando Per

se

esempio.

5. 6, 9.

10 .

u

farlo

uno

uno

diventare

schema

intero

positivo,

elentento

di L.

notvzionc

s rh

usata

allora Per

si indica

in

anche

per

con

se L gli

insiemi.

37.11

lunghezza

per

tutti

di L può

in

se oppure

S

veda

i si di

elementi

gli

P,

l Esercizio valore

il cui

risulta

con

tutti

i valori

tempo

è più

nel

limitati

caso un

da

L, è una

lista di

grande un

i in generale

polinomiale

di 5 siano

non

la

che

37.4-1

2 , EXACT SUSSET-Su

raggiungere

anche

esponenziale,

su

induzione

con

algoritmo in

particolare in

polinomio

lista la

t. Poiché tempo

r sia

cui

S.

Uno

approssimazione

di

schema

polinomiale

pienamente

di appros-

è polinomiale

esempio

.z, ,

P,,

problema

l/e

oltre

esponenziale

aumentancto

è più

in L

grande

vuoto

contenente

Si puo

ottenere

somma

di

rimuovere

del

setaccio in L

la lista

L .v 2. l.

3. 5, 9 . cnsi

che

V

o.

1

equivalentemente,

B

uno

schema

sottoinsieme di setaccio

nel

ancora ottenut t

L

tempo

qon

che

elemento

l insieme

dimostrare

parametro algoritmo

x,

l identità

ordinata

esempio.

in n.

Un

input

in molte

si manifesta

trovare

non

riempire

con

come

ha

polinomiale

come

prende

t.

5 . allora

polinomiale un algoritmo

pienamente

L, ogni

anche

P.

Data

r. Questo

esattamente

decisionale

problema

x,. Si desidera

si mostra

di

chiede

decisionale

problema

elementi

suoi

r,

S,

ddto. si presentu

L,

più

P,

con

l. 4,

P,

a questo

non

il

per

Omettiamo

LI.

Exker-Sussm-Sus

obiettivo

usata

36.5.3 .

di ottimizzazione

problema sia

positivo.

il paragrafo

associato

di approssimazione

simazione

e r è un

dei

paragrafo.

ottimizzazione

sclsema

è un

un

l i-esimo

eccedere

di sottoinsieme

che

O L

ottenuta

ordinata MERGE

la procedura

0,

sonica

Veda

si

da

l elemento

sottoinsieme

di sottoinsieme

di S tale

di ottimizzazione

applicazioni

di

positivi

è NP-completo

problema

x,,

della

problema

i

se esiste

somma

la lista

restituisce

in tempo

La procedura

il valore

MERa -Lisvs L,,

rimuovi

S

37.4

Come

r

è esponenziale

4.

riga

che

L.

che

dimostri

che

ed

x

L

è eseguita

MeRaE-Ltsts

MERGE-LISTS.

per x.,

x,,

1,

L ed

1 ton do

6

un numero

restituire

puo

la

per

1.3.

di input

ordinate

0

4

istanze

liste

ExAcr-Suesn-Suw S,

5 crei

Si

37.3-5

due

lo pseudocodice S

MERra.L svs L.

ausiliaria

procedura

dalla

l insieme

vertici.

copertura

una

Useremo

la parità

quando

dizionario.

921

approssimati

il m aggi di Lyllora tale

che

di approssimazione setacciando

á tale

che

or numero per

ogni

0

5

polinomiale

pienamente ciascuna

lista

l. Il setaccio

possibile

di elementi

elemento

y che

è stato

L

dopo

di una

la lista

un

ta1e

che

da

a della

il problem Si

creazione.

L con

da L in modo rimosso

per sua

valore

usa

un

Sconsiste

se L è il risultato

L. c è un

elemento

y

Si

può

a un

pensare

rappresentato

da

-

tale -

uno

rappresentante

come

a un

che

l errore

tale

di y nella nuova lista L . Ciascun di -, rispetto a y, è al più 8. Per esempio,

relativo

La

y è

8 0.le

L

1I,

10,

allora

si può

10,

L

12, 15, 20, 21,22, setacciare

12,

dove

che

da

ogni

lista.

ed

il valore

della

lista

di una

prendendo

un valore

cancellato

dalla

che

dal

cancellato

24

è rappresentato

è anche

ridurre

può

rappresentante

un

dal

elemento

sensibilmente

vicino

i valori

10,

cancellati 23.

della

più

e

22

È importante versione

degli

per

setaccia

L sia

ordinata

una

in ordine

lista

di

non

input

L

decrescente.

v y,, L output

...,

y,

della

della

nella

che

vedrà

che

Come

esempio

104,

con

r

102,

m

L

2

L

y,

3

lasse

elemento

tempo

8m.

è una

procedura

lista

4

for

y, i -

2 to m

do

if

last

6

1

then

y aggiungi

7

IOSA

return

y

alla

fme

re tituita

di L

C

di L sono solo

inserito

la procedura

un

2

l

3

fori

m

ordine

crescente,

di L oppure

non

ed può

un

numero

essere

definire

linea

4

L,

0,

104 ,

linea

5

L,

0,

104 ,

linea

6

L,

0,

104 .

I

linea

4

L,

0,

102,

104,

linea

5

L.

0,

102,

20 ,

linea

6

L

0,

102,

206 ,

linea

4

Lq

0,

102,

201.

206.

303.

5



0,

102,

201,

303,

407 ,

linea

6

L

0,

102,

201,

303 ,

linea

4

L

0,

101,

102,

201,

203,

linea

5

L,

0,

I01,

201,

è02,

404 ,

linea

6

L,

0,

101,

201,

302 .

è inserito

rappresentato

nella dal

lista

numero

L

soluzione

r, ed

r,

restituisce ottima

do

di approssimazione

nel

modo

un un

insieme

S

x,,

x...

di approssimazione

parametro

e

x

di n interi e, con

in 0

un c

L, c

esiste.



d4

Aer

0.05.

Rox-Sussm-SuM

calcola

407 ,

302,303,404 ,

L

6

rimuovi

qualsiasi l.

P.

il valore ,

da

, L

X,

piùgrande

in L

che

i

più

granrle

di t

101

compreso

in effetti

scarto

nelJo

lo scarto

20 7r

e

dalla

al 2 7c.

è inferiore

Perciò,

Per

ottinw.

L, è setacciata.

di

di r mantengono il valore restituito

setaccio

anche

Si

noti

e

quindi

che

che1 si

intrudu e

nella

linea

da dimostrare che

che

il problema

1 equazione

l a1goritmo errnre

pienamente

relativo un

L, nella

di

la proprietà

grande

di S. Rimane

mostrare

di approssimazione

schema

per

polinomiale

il

di sottoinsieme.

nperazioni

Le pii

dimostrare elementn

è ampiamente

102

uno

somma

massimizzazione,

dn L, ogni

è

della

problema

ir

TRiw L ,

104

37.6

Dimostrazione.

MERGE-LISTS L,

che

302

307

seguente.

di

5

return

se questa

più

ottoinsieme

8

si

poco

206 ,

linea

APPROX-SUBSET-Sue

in input

obiettivo

lo schema

0 1 to

sia

di setaccio

0,

elemento

7

corretta,

si deve

Tra

indicate

Q

soluzione 4

linee

2

Teorema

si può

prende

valore

in

elemento

APPROX-SUBSET-SUM S,

n s

da L,,

l istanza

Il parametxo

nelle

linea

in L . TRw.

procedura

ordine ,

scanditi

se è il primo

recentemente

t

L, è creata

approssimazione.

approssimazione

l effetto

setacciata

101 0.20.

valori

L algoritmo

Questa

e

ha

3-6

L

elementi

Data

201,

ed

308

di avere

si supponga

linee

opportunamente

Poiché

un eccessiva

una

nelle

versione

di t rimossi.

introducano

restituisce

0. Il ciclo una

grandi

più

non

APPROX-Svasa -Sv

j

1

Gli

ripetuti

elemento

contenente

elementi

gli

setacci

il solo

ordinata

lista

6

5

tuni

P con

sicuri

con

Q

lista

ricordare

ciascun

in

è una

dell insieme

L

la lista

L , che

sono

originale

elementi

piccolo

2 inizializza

essere

i seguenti

il numero

e leggermente

21

setacciata.

TRrni L,

8

rappresentato

setacciata

lista

procedura

assumendo

è

lista.

seguente

ordinata

11

20

elemento

Il setaccio

La

L ottenendo

valore-cancellato

il

23,24,29 ,

15,20,23,29 ,

rappresentati

linea

di calcolare

se

5 e di

sia

della

più

somma è

37.2

di

sottoinsieme

relalix o

di

pi culo. ul piii

L

C

di

summa

l

e molti

l

di

ogni

elemento un

p icato

quatche per

è un

problema

e

C.

Si

una di deve

polinomiale.

dellsrispostareslituit i errore

la di

a

da

di L, è anche

piccolo

equivalet1te

in teinpo

rimozione

elemento

ogni

8 è iisdubbiamente non

è eseguito

linea

che

de

tra

ii noti i balnei

elle

CfLI .llldO I t liita

rappresentativi

che

*Algoritmi appmssimaa

rimangono

ed

elemento

i valori

dn y

I

sia

y in P, che

del

prima al più

setaccio. -

t, c è uno

Per

induzione

c L

tale

su

i, si può

mostrare

che

per

ogni

Problemi

che

. 37,11

Se p

c P denota

uno

e

L

una

tale

soluzione

ottima

del

della

problema

somma

di sottoinsieme,

allora

che

37-1 ch è

Riempimento

Si

supponga

saddisfi 1

n

il più

grande

il valore

restituito

da AP box-Sussm-S

uM.

Dato

che

si può

e/n

cresce

con

n,

cui

per

n

ricava

.. -

il valore

restituito

contenitore

non

una

che

da APPROX-SUBSET-Sul

soddisfare 1/ 1

lo

questo

è uno

sulla

lunghezza

limitazione

devono

non

più

di

piccolo

1

svolte

la soluzione

la relazione dn .

Perciò

schema

di

Si

che è

il

della

problema

NP-arduo.

J

1/ 1

il numero

dn .

pienamente

il setaccio, Ciok,

di elementi

essi

in ogni

elementi

jirst

che

lo può

contenere.

b.

Si mostri

che

il numero

ottimo

c.

Si mostri

che

l euristica

first-fit

d.

Si dimostri

che

il numero

e.

Si

dimostri

che

l euristica

jit

t

Si fornisca

devono

si

polinomiale

successi

differire

i z e

per

un

- di

numero

i-esimo di contenitori

sottoinsieme

qualsiasi

degli

oggetti

ci

del

si

minimo

riconduca

al

numero

di

contenitori

della

problema

somma

di

ciascun

prende Sia

oggetto

Sg

uno

fattore

37-2

di contenitori lascia

di contenitori first-fit

una

realizzazione

ha

G

E

V, E ,

V , modo

a. di bit

Questo

limite

Ig r necessari

di APPROX-SUBSET-Sua

è polinomiale

di approssimazione

è polinomiale

a rappresentare rispetto

pienamente

rispetto

al numero

r e a 118. Poiché

alla

e lo pone

lunghezza

n di valori

il tempo

dati

richiesti

al più

un

usati

dalla

rapporto

efficiente

Approssimazione

Sia

2.10 .

l altro

nel

primo

contenitore

è almeno

contenitore

meno

di metà.

della

pieno

euristica

limite

I S I.

per

first-fit

non

è mai

di I 2S1

più

2.

strategia

first-fit

e si analizzi

il suo

tempo

non

orientato

di

di

L, è al più

E/Il

l equazione

dopo

s,.

esecuzione.

della

dimensione

oriennto.

Per

un grafo

no t

V

è l insieme

dove

che

v...

v,.

o il vertice

schema

contenere

s dell oggetto

minimo

L,

In r

al numero

nel

determinazione

Suggerin etrro

i. euristica

f

approssimazione

di L,. Dopo

n 1n t

input,

la dimensione

oggetti

l.

di tutte

/

usando

che

qùesti

può

superi

y dimostrare

almeno

Dl/ I

dimostri

Ciascun totale

tali

tutti

n

l implica

e/n ,

1

èy

Per

a.

di n oggetti, mettere

mostrare

e quindi

ottima

dimensione

insieme

1. Si vogliono

sottoinsieme.

1

z

un

unitaria.

la cui

.o,

la funzione

Perciò

s

richiesti

i--

1

0

37.13 è

di contenitori

di avere

di capacità

y, di questi

che

I

925

della

sia

v è adiacente

Si dimostri

in

i

che

adiacente

a n

cricca

qualsiasi

ordinate

esiste

un

w ...., v,

cricca

più

cricca

le k-uple a w,

della

della

una /

in G, oppure

la dimensione

dimensione

di

ir .

G

di vertici se e solo

il grafo di

se,

V. e E ogni

per

è definito i con

1

in i

k,

i .

più di

grande

cassiera

1. si definisce

in G

grande

è uguale

alla

t -esima

potenza

G.

di esecuzione

di L . AevRox-Suasa-St. t

è uno

b.

Si

deduca

trovare

po1inomiale.

che una

se

cricca

algoritmo

di dimensione

apprncsimazione

approssimato

tnassima.

pienamente

che

allora

per

di

insieme

ha

rapporto

questo

limite

costante

c è uno

problema

per

schema

di

polinomiale.

Esercizi 37-3 37.4-I

37.4-2

Si dimostri

l equazione

Si dimnstrino

le equazioni

37.i

1.

Il probfesna

Si supponga e

37.12

Come una di im

si potrebbe buona q alche

modificare

approisimazinre sottoinsieme

lo schema del della

piit lista

copertura

pesata

il prnblen a

della

aut

copertura

di un

insieme

in modo

che

ciascun

37.13 . Si desidera

37.4-3

defla

di generalizzare

presentuto

piccolo d,ta

valore in input.

in questo non

minore

paragrafo di r che

per

trovare

sia

snmma

cui

w Si

I per

mostri

copertura cl è

determinare

la

tutti

gli

come

pesata din ensinne

una

copertura

un

minimo.

Il

para rafo

37.3

gestisce

S EC il caso

i.

l euri ticzgreedy

di

di peso

per

insiehte.

massima

Si di

un

mnitri qualsiasi

h

che

c ipcrtura

un insieme

di

tale

un

evri tica S,.

iniieini

ha

w11

r rpportn

Il

.ll.

limite

t tcilinente

H cl .

dove

in

.

926

Note

Capitolo

al

37

capitolo

Bibliografia Esistono

molte

Garey tazione ùrla

pubblicazioni

e Johnson degli trattazione

Anche

79 .

algoritmi

Yannakakis.

L algoritmo

Rosenkrantz,

Stearns

è dovuto sono di

e Lewis greedy

di Chvéial a Johnson

variazioni

sottoinsieme,

113 degli dovuti

del

problema

attribuiscono

42

per di un

e Lovász

algoritmi a Ibarra

Il Teorema

risultato

L algoritmo relativi l

un eccellente e Shmoys

di

presen13à

offrono

a F. Gavril

un ecceIlente

è dovuto copertura

generale

141 .

e Kim

in

37.3

approssimati

è quello

viaggiatore.

della più

Kan

APPRox-VERvEx-CovER appare

il problema

introduttivo

offrono

154

commesso

l algoritmo

170 .

testo

Un

Rinnooy

Lenstra,

Lasvler,

APPROX-TSP TOUR

dell euristica

dimostrazione

e Steiglitz

Papadimitriou

del

e Steiglitz

approssimati.

algoritmi

approssimati.

esauriente

Papadimitriou

L analisi

sugli

a Sahni di

un

il ri ultato

di

e Gonzalez insieme

presentato

Ar Rox-SusszT-SuM ai problemi

e M,

pubblicazione

dello

si basa nel e la sua

zaino

172 .

e della

sulla

capitolo analisi

11

somma

Milton

Abramowitz

e Irene

A.

editor.

Stegun,

Hasidbool

of Markematical

Dover,

Fiaicrions.

1965.

l l. P-

G.

M.

Adel son-Vel skiil

Soviet

al

Leonard

M.

from Hl

Adleman,

Aho,

Ravindra

P

K. Ahuja, path

Howard

H.

Randell.

editor,

Ajtai,

i

Selim

10

Richard

Komlás

Tom

M.

A.

J.

ll

Sara

of

distinguishing

On

1983.

Tl e

and

Design

Ullmsn.

Atrubin.

on

da Jackson

e Gary

L.

Data

Miller. on

information.

numbers

prime

Analysis

of Can purer

Strucrures

ond

Algorir/uns.

I, A

1977.

sequence

pp 203-222.

On

logn

Faster

controlled

networh.

of Computi g,

In

1-9,

pp

In

calculator. third

for 1988.

Center,

Springer-Verlag,

sorting

algorithms

Research

Brian

edition,

1982.

Proceedings

of

tbc

1983.

of Parallel Algoritlmrs. Prentice-Hall. 19S9. - Progettazione ed analisi degli algoritmi paralleli Deternsinistic

list

parallel volume

Compuring,

319

of

ranking.

In John

Lecrure

Nores

in

H.

Reif.

Computer

A simple

randomized

para11el

alg orithm

for

list-ranhing.

1988. l. Blaisdell

Publi hing

seconda

Company,

edizione.

1967.

Boringhieri .

one-dimensional

Com ntter

E. Tarjan.

Operations

1988.

volume

Calculus,

e Robert MIT

automatic

T/reo g

Libri

L. Mi J ler.

pubblicato,

Computers,

edition,

An

Orlin 193,

The

Ai alysis

a td

B.

Con pwrers,

Springer-Verlag.

volume

reni-tinse

EC-14 1 394-399, Algorirhnu

iterative

nsultiplier.

IEEE

Trcmsncrioi s

on

1965. lstrinclactinn

tn

Design

atul

Rei

bf

As alysis.

Addison-Vv eslèy.

1988.

Erie

Bach.

Comunicazione

ic

Erie

Ranch.

Rumber-thearetic

l l 9-172.

organization

117 173-206, Ullman.

Report

Symposium

IVorkshop

iJ

pp

the

S. Rumely.

D.

James

Szemerédi.

e Gary

81-90.

Baase.

eecond

D.

e Jeffrey

Hopper.

M.

Designi

Apostol.

Electrnnic

Hopcrott

Technical

italiana

non

Cnlcolo, 11

The

J. Anderson

anoscritto fl- l

e Jeffrey

ics of Digitai

ACM

Aegean

pp

Richard

e Robert

Mehlhorn,

e E.

J. Anderson 19 88

Science, 1 1

Orig

in lingua

editor,

E.

e Grace

The

Akl.

G.

for

1974.

Kurt

A rinre l

Tradotto

algorithm 1962.

of Mathemarics.

Hopcroft

problem.

Aiken

J.

Fifieei tlt

An

1983.

shortest

M.

t8

E.

John

Addison-Wesley,

the

Pomerance Anna s

Addison-Wesley, V.

Alfred

John

Landis.

3 1259-1263,

Cari

numbers.

V. Aho,

Alfred

M.

Dol lady,

composite

Algorit1uns.

I

e E.

Mathematics

Annual

privata.

1989.

algorithms. Reviev s.

Inc..

In 19 0.

Aivnvrl

iew

Ccwip irc

r Science.

i olume

4.

193

Leslie

G. Valiant.

355,

ParaIlelism

in comparison

SIAAf

problems.

Journal

on Computing,4 3

348-

1975.

Ill61CC 194

P. van of tbc

Emde l6th

Journal 196

Jean

197

Implementation

of Algoritluns, A

C. S. WaJlacè.

data

198

Stephen

Whshall.

199

A.

of Computer

of simultaneous

memory

logarithmic

time.

Science,

8I18lltlCO

In Proceedings

pp 75-84.

IEEE

Computer

structure

On

the

201

Herbert

202

J. W

203

S. Winograd. Mathematiciens,

volume

204j

James

Tbc

S. Wilf.

IEEE

abstract

access

in models

that

forbii

ir.

Communications

queues.

of

rl e

Transactions

on Electron

Computers,

C. Wyllie. University,

Yao.

matrices.

Journal adder

EC-5 2 ,

ACM,

9 1 11-12,

one-megacycle

Simboli

1962.

circuitry.

3-soddisfattibilità

Iinear

Complerity.

232

383-288,

Con plexity

Prentice-Hall,

American

Jonnral

of

congiuntiva

of functions.

of tl e In Acres

du

A CM.

Congrès

7 347-348.

1964.

Internarioital

Department

of Computer

bipartito

Ackermann bound

to finding

convex

hulls.

Journal

of t/ic

ACM,

652

con

621

senza

propagazione riporto

di cammini

minimi

di copertura

328

di copertura

il

seriale

642

del

riporto

previsinne propa

azione

di polinomi modulare

7è5

seriale

del

87 458

85,

202,

594

221 221

H9

247 á2

monoalbero

radicato

minimo 488

bi1anciato

nodo

134

colore

i6

H-alheri HFS binari

con 87

43 i 88,

201

pesn

bilanciato

b-altezza

3F

liberi

85

in x

87

binario

sparsi

antenato

alberi 201

ricorsione

erafi di un

87, S7

di copertura

altezza

88 degli

radice

hero

dimensione 266

RB-alberi

albero per

della

87

367.

380

265

87

2-3-4

ammortizzati

l

massimo

488

87

ordinati

proprinà radicati flusso

il minimo

243

sottoalberi

padre

primaria secondaria

dopo

85

posizionali

del

agglomerazione

I

á43

692

aggiornamento

I

DFS

nodo

63I 625,

643

agglomerazione

84.

626,

riporto

77 l

641,

matrici

alberi

riporto

47S

499

piccolo

263,

discendente

liberi

del

minimo

457

dei

con

di copertura

272

mantenimento

con

2gg

303

lessicografici

625

631

2 g,

406

494,

più 164

foresta

addizione

tra

ordinati

di un albero

diametro

624

completo

232,

4á8

di parsing di selezione

432

addizionatore

28 4 780-

787,1981.

91

di intervalli

57 l

573 perfetto accessi concorrenti

Science,

non

bisezione

di decisione

massimo

Comptcrations.

binomiali

DFS

683

229,

384

costruzione

886

abbinamento

des

1970.

of Parallel

normale

A

1979. A lower

in forma

1986.

Connnunications

heapsort .

complexity

3, pp

886

3-soddisfattibilità

dependence.

di ricerca

binomiali 886

6-colorazione

and

algebraic

binari

3-FNC

IRE

1956. of

properties

of tbc using

1935.

Algorithm

Oidi the

boolean

A one-microsecond

Algorirhms

J. Williams.

C.-C.

priority

multiplier.

Computers,

47 509-533,

Andrew

a fast

on

Smith.

Electronic

Whitney.

Marhematics,

manipulating

for

for

A theorem e J. L.

on

Hassler

address

1983.

1964.

Weinberger

Transacrions

205

than

1978.

A suggestion

14-17,

Cornell

in less

on Foundarions

4 1 45-50,

2 1 4 309-335,

EC-13 1

200

Symposium

Vuillemin.

ACM,

in a forest

order

1975.

Vishkin.

Uzi

Preserving

Atrnual

Society, 195

Boas.

247 247 247

di ricerca

229

interrogazioni

su un albero

lkl3 pr priet i ita in ordine

247 anticipato

iiita

in ordine

difterito

i i. it

in ordine

simmetrico

binario

230 230 230

di ricerca

23 I

938

indice

albero

analitico

di copertura

visita

minimo

completa

478,

488,

549

913

Stooge

Sort

Strassen tra

di input

813

verifica

872

I,

12

Viterbi

alfabeto

867

alfabeto algoritmi analisi

10,

5,

12 907

Bellman-Ford Boyer-Moore

519

825

tempo

esponenziale

confronto

tra

CRC

920

algoritmi

EREW

e algoritmi

russo

correttezza

del

di Tarjan

643 metodo

dei preflussi 578 antenati comuni

i minimi

per

off-line

855

Edmonds-Karp

orientati

mediante

dinamica

grammazione Euclide 766.

767,

547

768,

di approssimazione

564

ammissibilità

916

di Gabow

tra

cammini

per

di corrispondenza

tra

segmenti

minimi

stringhe

806

842

sparsi

grafi 514

rispetto

con

gli

heap

hash

max

16,

deg1i

146

578,

multipli

di oggetti 124

nsassimo

aggregati

del

875

simplesso

513

di soddisfattibilità

assegnamento

di verità

potenziale del

ERE

667

CRClV

con

un

arbitra gio arco

118

altezza

intervalli

8l,

10

stringhe

814

cricca

h se

Bayes.

bilanci ito

noào

in

una

chiave

di di di

da

una base

chiave

un

B-albero

370

376 372

369

teorenu

fusione

pari-dispari

l01 507. l07 247

6 l6

da

una

684

massimo

594

93

binomiali

95

94 95 94 onsma

e prodotto

93

94 delle

98

probabilità 98 istico probabi binomiale continua

distribuzione

discreta

distribuzione

geometrica condizionata

probabilith valrire atteso

di una

variabili

casuali

varianid

e scarto parallelo

can mini

ilheri

SI S 298

720

flusso

distribuzinne

527.

541

683

del

125 l 07 uniforme

99

di probabilith l 07 ed

indipendenza

variabile

discrete

99

casuale

I 00 lù4

103 nledio

quadratico 658, 674

J 06

593

S4

aumentanti

Cùt11lllil111Tlllll111l

309

le coppie

6-colorazione

concatenazione di

parallelo

628

LCS

matrice

una

binomiali

CQllll lllll

66 reti

una

combinatorio

striaghe

alcnlo

Be hn n-Ford l3eri oulli

370

247 29,

Hatcher. i

vuoto

369

h-altezza

di una

B-albero

un

inserimento

ricerca

492

tra

circuito

685

6-colorazione

distribuzione

un

di

operazioni

925

478,

813

366

divisione

704

520

MlS

permutazioni regole di

8 l3

367

eliminazione

87

4

linsiti

813

un

LUP

combinazioni

367

di

di di una

contatore

552

approssimazioni

di un

la corrispondenza

658,

fattorizzazione

813

stato-finale

con

prefissi tra tutte

di transizione

dell inversa

884

344

del Ia dimensione

lunghezza

assiomi

462

incrementale

funzione

di una

di transizione

definizinne

543,

627,

della

calcolo

705

approssimazione

algoritmo

tiniti

366.

52S.

287

incrementale

di input

per

minimo

655

coefficienti

S14

riporto

ottimi

della

calcolo

a stati

342

197

884

98

probabititè 74

creazione

proprio

87S,

$78,

338

compleanno

degli

multipli

74

automi

B-alberi

discendenti

array

4

funzione

probabilistica

massima

di un

4è2

con

assegnamento

automi

accantonamenti

approccio 809

con pressione

costi

prefissi deiranghi

146

valore

automi

di cammino

pesi

del

dei

197

alfabeto

337

degli

antisimmetria

10

con

stati

dei

partizionamento rappresentazione

de1la

dei

dei per il calcolo dei cammini minimi

124

16

funzione

degli

antenato

580

566

max

programma mancante 69

inversioni

S66

polinomiale

534

del

intero

in tempo

bottom-up

assorbimento

124

rangn

annullatore

574,

di

211

Ford-Fulkerson

annidnmento

158

con

metodo

dei

di Lomuto

bit

C

770

assoeiatività

144

paradosso AND 620

400

riduzione

algoritmo

di

651

partizionamento

simulazione

al numero

316

greedy delI algoritmo

metodo

anelli

di copertura

aggregabili

progetto Rabin-Karp

770

attributi

ammortizzata

analisi

801

albero

d-ari

metodo

588

685

processori MCD binario

preflusso

521

482

efficiente

paralleli

minimo

819

583,

massimo

medio

sui

organizzazione

programma unione per

539

di peso

e Prim

heap

analisi

per il ciclo Knuth-Moms-Pratt

lift-to-front

520

algoritmi

802

procedura

852 per

degli

operazioni Euclide

Karp

minimo

delle

139

Karmarlar

Kruskal

514

170

calcolo

opposto

assiomi

intersezione

Johnson

198

134

comparata

approssimato

incrementale

Jarvis

di oggetti

sort

calcolabile

analisi

311

ingenuo

908

e deallocazione

Ford-Fulkerson

770

908 g

825

670

Bucket

770 770

analisi

I

80 102

Boyer-Moore

584

625

625

770

reciproco

328

di somma

Brent

identità

array

relativo

altezza

492

modulare

chiusura

316

bit

91

di ingresso

79

aritmetica

326

greedy 316

greedy 312

approssimato

532

greedy heapsort

metodi

pesato 651

paralleli 651

Floyd-Warshall

peedy

scelta

ottima

allocazione

S47

dell algoritmo

di riporto

Boole

ammissibili

argomento

315

schema

802

dei

di attività

errore

pro-

reti

314

di alberi

bit

biunivoca

associatività

teorici

algoritmo

di cammini

Graham

della

della

PRAM

514

etichette

correttezza

algoritmi

567

81 479

pesi negativi residuo 559

e della

peedy 316

314

su un matroide

divide-et-impera

ellissoide

dimostrazione

strategia

503

algoritmi

dinamica correttezza

sonostrunura

442

Dijkstra

S44

incidente

degli

bisezione

456

etichetta

programmazione dimostrazione della

proprietà selezione

81

leggero

greedy fondamenti

663

contadino

697

greedy comparata

analisi

507,

adiacente dell albero

308

algoritmi

approssimati

con

159 la moltiplicazione

per matrici

561 433.

S2S, 499

34,

av

54 1

i .

ov .

avi.

am.

algoritmo

incrementale

minimi calcolo 528,

dei

cammini

di cammino

pesi

sottostmttura struttura

minimo

le coppie

541

527

5 1l

etichetta

minimi

513

544

camino

di accesso

cammino

hamiltoniano

campi

4,

874

25á binario

concatenata

capacità

559,

75

Carmichael catena catena certificati

853

370

pubblica segreta

785

di un

grafo grafo

dinamico orientato

549 536

Q

82

475 521

897

colpo

ClfCUlll

647

moltiplicatori tally

634

634

temporizzati circuiti

641

combinatori

addizionatore addizionatore

senza

addizionatori addizione addizionare circuiti

6 I 9,

con con

63 l

210

di un grafo 90. 904 indipendenti e insiemi

mancato

di vertici

389

34

7S5 a chiave

785

RSA

pubblica

84

decremento

di una

DeMorgan,

leggi dei

deque

192

397

chiave 74

numeri

densità

792

primi

4I

593

ca1colo

della

del

metodo

dei

810

combinazione

convessa

combinazioni

94

503

di Graham

850

con

viaggiatore viaggiatore

bitonico

e euclideo

74

99.

74,

del riporto 631 626, previsione gazione del riporto 623 prop

cnmponenti

connesse

componenti

fortemente

868.

di Schur

892

714.

fattori

gli automi su un calcolatore

costo

6R6

cammini

c mnesse 430

468

COstf

579 331

calcoli

dei

di un

75

dimensione

allusero cammino

623

circuiti

759

6,

dell algoritmo

correttezza

87 S7

dire

funzione

proprio della uaglianza

finiti

astati

parallelo uno

338, aritmetici

di copertura minimo

816

suffisso

75

klanhattan

832

di ripetizione

sul

S13 832

183 453

minimo 74

distribuzione

SO 43 342 759

minintn 534

307

cammino

dictributività

478

binomiale

107

hinomiale

code

continua

uniforme

9 di probabilità discrela di prnbvbi genmetrie l inviluppata

314

greedy

883

discendente

di editin

814

805.

UZlOllc

di un

74 503

distanza

789

di Eulero-Marche.roni ammortizzato

74

dimostrazione

stringhe

uno-a

o a destra

457

discendente

tra

441

a sinistra

512

di NP-completezza

di RSA

con

costo

725

PERT

i1isgiunti

ispondenza

costante

di Venn

diagrammi

dell input

455



profon svolta

745

744,

diagramma

dei

323

corrispondenza

543

dei

306

822

prefisso 578

824

sui

742,

della

di preflusso sui matroidi

basata

9 I l

funzione

algoritmo

dell

correttezza

835

della

differenza

preflussi in ampiezza

di Dijkstra

greedy KMP

determinazione

Dijkstra

del

correttezza

della

diametro 737

pun olvalore

visita

determinazione

DFT

76

695

694.

determinante

909

ordinata

generico

247

compressione

74S

cammini

di Huffman

680

complemento

6. 4

concatenazione

per

624

moltiplicatnri

125

909

892,

con

della

6SO

complemento

programma

correttezza 95

risoluzione

commutativo

880

593

coppie

209

cammutatività

dag

356

737.

è70

binomiale

heap

643

probabilistico 653

coppia

866

695

621 riporto

del

vuoto

552

925 di un insieme pesata 840 di segmenti coppia

735

62 l

crittografia

flusso

rovesciati

ottima

binomiali

commesso

completo

319

polinomialmente 79

commesso

crittografia

340

minima

èl9

coefficienti

colore

nuovo

761

algoritmo

minima

865

collisione

di un

derivate

320

massimali 871,

di divisione

l là

319

variabile

colorazioni

660

del

di vertiri fissa

colorazione n ihimo

hamiltoniano

binomiale

creazione

570

686

667.,

B-albero

COpCrtUI B

colorazione

medio

per

convoluzione

190

cofattore

archi

russo

controllo

663,

di un

653

binario

contatore

653,

143

l inserzione

creazione

asintotica

contatore

190

166

CREW

contadino

141 priorità della distribuzione

sort

137

crescita

modulare

bit

con

28

congruenza

contatore

190

collisioni, 641

di Eulero di peso euleriano

189,

coefficienti di un

782

di clock

visita

474

heap

342

761

dei

codominio

transitiva

cic1ico

462 con

heap

di uno

eredito

conservazione

641

correlate

transitiva

chiusura

archi

prefissi codifica

868

chiusura

archi

degli

di HuA man

785

chiusura

77

degli

a 1unghezza

141

mediana

761

di uno

321

299

27

conmuente

connetuvità

classificazione

a lunghezza

790

chiave

n

codici

853

sinistra

modulo

di equivalenza

testa

793

destra

tricotomia

di congruenza

27

trasposta

simmetria

LCS

CRCW

27 7

simmetria

di una

counting

27

funzioni

riflessività

869

203

liste

tra

confronto

con

81

cardinalità

prefissi

tra

confronto

di Huffman

di un codice

S68

806.

841

confrontabili 628

873

coda 561

638

643

classificazione

coda

194

residua

cappi

235

allace

866

ciack

di ricerca

di

SSO

transitività

in ampiezza

cancellazione

lista

429

á44.

confip razione

872

classe

707

albero

NP

classe 512

concatenazione

641

a catena

di complessità

co-NP e cammini

P

critico

seriale

moltiplicatori classe

$33

635

623 profondità calcolo dei circuiti paralleli, 64 1 circuiti sequenziali addizione

aciclici

82

cammino

a piglia ad albero

moltiplicatori

491

in grafi orientati ottima 495

di differenza

cammino

tra tutte

minimo

527,

vincoli

minimi

di matrici

di cammino peso sorgente singola

623

dimensione

534 dei cammini

moltiplicazione

ciclo

per

moltiplicatori

bot tom-up

calcolo

-

di Gabow

520

113 di probabilità lite

107

sparse

860

99

99

837

943

analitico

lndu e -.W

. .W,..

13 distribuzioni

del

inviluppate

sparse

860

del

102 107

triangolare

911 10,

12,

85

divisione

di un

divisori

in un

B-albero

370

762

dominio

79

effetto

á67

delle

elementi

sul

tempo

di esecuzione

43 I

73

elementi

combinatori

elementi

di programmazione neutro 70

elemento elevamento

620,

a potenza a potenza

elevamento

670 291

784 ripetute

quadrature

784

713

di una

chiave

di una

chiave

397

fattore

di carico

fattori

primi 31

ellissoide

514

equazione

normale

376

LU LUP

7 è,

745,

modulari

notazione risoluzione

di un

70,

ERCW

lineari

modulari

776

653

EREW

652,

663.

667

errore

relativo

errori

di approssimazione

908 727

espansione

della

espansione

e contr .zinne

esperimenti

con

esponenziali

tabella

349

navette

spaziali

352 594

estendere

una

estensione

struttura

dalle

di dati di un

potenze

268 intero

netto

553,

i reali

70

netto FNC

positivo 8S6

FiilD

iSS9

di RB-alberi

estrazione

del

nodo

estremi

836

etichette

di cammini

mazione

269 con

orientati

dinamica

Euclide

766, 43.

euristica

547

768 475,

773,

43 1 buon

la chiai

suffisso

782

mediant

391

procla-

del

funzione

dell ultima

funzione

di Ackermann

funzione

di densità

funzione

di densità

funzione

di distribuzione

funzione

di entropia

funzione

di etichettatura

funzione

di maggioranza

funzione

di riduzione

funzione

fi di Eulero

funzione

generatrice 209, hash

756

funzione

heap

di Fibonacci

406

358,

metodi 564.

estesa

332 dell al

oritmo

norin ile

3-cunziuntiva

Ilori 1 lie

corl iullliva

normale

diieiui tiv,

iui inula

Ji

lonnule

Booleane

Fourier

75

768

886 886

738

81

incidente

81

70

cammini

minimi

cammino

82

cammino

chiusura

transitiva

chiusura

transitiva

funzione

8

ciclo

finita

sequenza

infinita

densi

aperto

di divisione

metodo

di moltiplicazione

scansione

lineare

scansione

quadratica 216

universale

221

61 l

G

648 S

Gabon, g rha

s

collector

19

S15 549 81 cammino

sul

connessi

453

83

di pesi generazione rideterminazione grado

entrante

grado

uscente

grafo

bipartito

grafn indotti

minimn

84

foresta

gl QfO

648

447

fortemente

221

473

componenti

distanza 2 l5

468

574

diretti

2 l9 215

metodo

83,

465

singolarmente

dinamici

221

doppio

687

connesse

82

di vincoli

213

hash

536

84

delle

79

fusione

fortemente

dag

648 80

82,

connesse

componenti

d-regolari

79

549

orientato

84

connessi

79

dinamico

462

archi

degli

componenti

connessi

sequenza

grafo di un grafo

90

completi

80

di un

82

colorazione

80

82

81

classificazione

36

453

semplice

cappi

448

488

La r is e

simnietriche

di Euclide

adiacente

513

indirizzamento

332

arco arco

790

462

discendenti

81

archi

77

875

dei

intervalli

degli

annidamento

648

539

sparsi

grafi

per

9l

344

hashin 429

di Johnson

96 543

570

bipartito

grafo

84

algoritmo amichevoli

potenziale

funzioni

disgiunti

173

peso

surgettive

fnrma

di probabilità

in un

82

albero

104

congiunta

536 massimo

funzione

valore

84

515. 81, grafi abbinamento

funzione

iterate

36

greedy 566

82

aciclici

104

8

permutazione 80 rango

dei

432

367

uscente

lineare

80

553

828 inversa

e la sua

minimo

obiettivo

iniettive

inferiori

occorrenza

la

540

pesi

82

funzione

S32

ed

830

dei

tramite

735

limite

suffisso

152

pseudo-casuali non negativi

276

Flavio

grado entrante

13

casuali

di numeri

funzione

quadratica 80

superiori

648

simmetriche

96

buon

immagine

capacità

782

re di numeri

Giuseppe

80

funzioni

per 575

787

458

f unzi ni 828

booleana

funzione

simmetriche

early-tirst e illinima

funzione

7l5

753,

nuovo

teorici

caitonic i

estensione

altezza

562

rii insiemi a tutti

709,

uno

Booleane

595

DFS

uno-a 79

inversa con

ti este

27

funzione

552

Ford-Fulherson

29

713

ire

di pesi generazione rideterminazione

29

formule

189

fondamenti

di tahelle

generatore

802

numerica

massimo

di equazioni

79

420

t1usso 25

codominio

404

tirrna

776

asintotica

348

749,

I- loyd-Warshail

lineari

genera

782

FFT

FIFO

equazioni

859

797

tattorizzazione

numeri

728

103

98

211,

fattorizzazione

heap un B-albero

condizionato

ed acchiappafantasmi

creazione

da

101

98

Fibonacci

di Gauss

del

in modo esclusivi

Fermat

con

eliminazione

Eulero

l00 a coppie

mutuamente

fattoriali

dinamica

80

confronto

101

98

fantasmi

euristiche

generai

biunivoche

dominio

indipendenti

nullo

Edmonds-Karp

argomento

79

comspondenza

indipendenti

760

comuni

429

98

indipendenti

760

banali

indipendenti

elementari nodo

di esecuzione

Gauss

79

funzioni

7

comuni

certi

760

8

il tempo

mutuamente

divide-et-impera divisibilità

migliorare

per eventi

di Markov

discordante

915 più vicino rho di Pollard 798

punto euristica

disuguaglianza di Boole

carattere

83

dei

S2 82 84 84

COlllplCtO

non

non

orientato

8 1

tramite

negativi pesi

540

la

insieme

degli

insieme

dei

iperarco

archi

universale

84

isomorfi

di incidenza

multi mafo

2-3-4

450

84

orientati

81

ordinamento

topologico

orientati

81,

biconnesse

474

rappresentazione

con

liste

rappresentazione

con

matrice

di un abbinamento

448

di adiacenza

massimo

57 I

bipartito

447, non

versione

orientata isolato

vertici

Sl

83

in ampiezza

450,

in profondi bipartito 84

pafo abbinamento Graham

453,

455,

474

di due

modulo

n

771

770

moltiplicativo

modulo

n

772

half-cleaner

á08

2,

395

heap

chiave

di un

nodo

nodo

l

413 413,

416,

420

408

minimo

del 420

75

74

319 319

221

costruzione

di un

codice

di Huffman di Huffman

hash 213 doppio

211, one-w

790

infinito

numerabile

insieme

degli

insieme

dei

insieme

indipendente

insieme

k-separante

insieme

parzialmente

22 I

hashing

universale

metodo

di concatenazione

216 2 IO

di scansione

219

interi

80 raster

impulso

uniformitè

della

uniformità

seinplice

funzione della

hash tunzione

641 di scatole

hash

I

l

increimentale

10

I

519

78

minitno

e massimn

n1inimn

e inasiiislo

non isum ri

74

di DeMor an

massimali

S52

di clocl

260 persistenti 680 massimali

su un albero

nwuirabile naturali

silllultanei

176

840

qualsiasi 837 segmenti 842

chiuso

271

694

80.

l6 rispetto

alla

inverso

rispetto

all addizione

84á

divide-et-impera

metndo

incrementale

metndo

prune-and-search 576 saturante

non

invio

saturaiste

846

57á

84 84

ipergr tfn

iter zinne

705

846

convesso

invio

Ji

707

moltiplicazint e

metodo

73

721

720,

di matrici

inverso

iitJnrv

delI unità di ricerca

868

74,

sepnenti

75

binario

coppia

iperarco

I 75

complesse

radici

interrogazioni

inviluppo

74

73,

747

738, nelle

inversioni 78

797 763

interpolazione

inverrione

73

leggi 688

inczpsulamentn

220

indipendenti

74

impacchettamenro

209

dinamici

543

ordinato

426

47

primi loro

tra primi interpotazione

inversa 903

concatenata

73

tra

680,

4è0

709

numerica

intervallo

6S4

disgiunti

435

a lista

41,

integrali

81 81

compressione

426

75

7S

insiemi

idempntenza

immagine

vertici

potenza vuotn

idempotente

immagine

archi

insieme

insiemi

pro edure

di insiemi

tra due

75

insieme

348

432

per foreste dei ranghi

di una

74

33 321

di Ackermann

interseziane

75

infinito

408

209 di carico

funzioni

tabelle

di Fibonacci

320 prefissi correttezza dell algoritmo

221

primaria secondma

hashing

sequenza

heap

S43

75

idempotenza

408

chiusi

di semianelli

con

182

430

429,

in fattori

74

distributiiità

680

rango

funzione

interi

74

commutatività

codici

collisione

funzione

di due

minimo

massintali

indipendenti

grandi

179

426 pesata il tempo

l unione

per

più

177 peggiore 263

73

per 432

cammini

initahilità

75 e insiemi

complemento

i numeri

dell unione

unione

colorazioni

finito

disgiunti

caso

dinamico

proprio 423

proprietà rappresentazione

74

disgiunti 417

degli

foreste

235

74

cardinalith

737

codici

agglomerazione

fattore

nodo

del

9

73

dimensione

massimo

grado

sequenza

lineare nel

lineare

per migliorare 429 di esecuzione

350

definizione

operazioni

su un insieme

74

medio

tempo

euristiche

235

406

di Fibonacci

selezione

euristica

di ricerca

binario

assorbimento

420

in tempo

dei

associatività

390

con

selezione

251

albero

389

77

8

medio

vuoto

selezione

analisi

6

76

relazioni

insiemi

194

concatenata

sort

-V3

disgiunti

cartesiano

sottoinsieme

372

B-albero

in un

e cancellazione

binomiali

di una

Huffman

agglomerazione

j

lista

insiemi

404,

limitazione

Horner

i

in una

inserzione minima

395

nuovo

del

unione

H

209

397 la chiave

minima

heap

di un

ricerca

574

chiave

8 peggiore di esecuzione tempo

405 potenziale massimo 406 grado inserzione di un nodo 407

770

additivo

Hall

395

nodo

di una

elementare

di Fibonacci

estrazione

6

funzione

gIUppO abeliano

hash

chiave con

chiave

eliminazione

847

finito

unione

273

aggiunta 80

caso

387

della

creazione

570

389

389

decremento

massimo

matematica

insertion

397

di un nodo

ricerca

he p

460

458,

dell insieme proprietà 423 rappresentante

caso heap

nodo

ràppresentazione

82

prodotto

43

di un

134

parziale

chiave

di una del

operazioni

83

partizione

207

inserimento heap

gli 406

heap

nuovo

di una

inserimento

orientata

fondono

di un

decremento eliminazione

539

vertice

che

creazione

con

400

estrazione

versione

visita

447

83

sparsi

albero

di ordinamento propri à heap binomiali 384, 386

82

sottografo

visita

di adiacenza

proprietà di copertura

75

219

dimensione 135

della

operazioni 447

sottocammino

404

su insiemi

diretto

input

di Fibonacci

operazioni aperto

iniettiva

aggregabili

e componenti

ponti

rappresentazione

ricerca

137

minimo

di articolazione,

punti

383

73

reali

numeri

indirizzamento

informazione

aggregabili costruzione

346

indirizzamento

induzione

mantenimento

543

448

pesati

400

399

heap

465

216

133,

heap

83

matrice

228

343,

7S2

indice

k-universale

340,

binario

di un contatore

incremento 221

doppio

81

84

iperpafo

non

hashing

81

vertici

un problema di Newton

647

846

747 231

-

94á

Indice

anatusco

linguaggi

J

formali

linguaggio Jarvis

852

i -arduo

K 94

k-permutazione

k-sottostringa 94

Karmarlar Karp

514

521

Kleene

Knuth-Moms-Pratt

figli

dei

vicini

819

liste

doppia

radici

388

L 738,

Lamé

768

Legendre

803

193

770

puntatori ricerca

leggi

di DeMorgan

74

ricerca

lemmi cancellazione

742 di Schur

dimezzamento

743

725

iterazione

della

funzione

della

funzione

sommatoria

prefisso suffisso

LUP

suBissi

806

nulla

783

algoritmo

i

di partizionamento

713

macchina

ad accesso parallela màntenimento della dimensione

lettura-esclusiva

652

letture

concorre ti

LIFO

189

del

niassimo

grado

nella

concatenazione

scansione hash

più

nsatching

227 lunga

in un

matrici

organizzazione

762,

in un

grafo

69S,

704

570

la moltiplicazione

per

binomiali infe ori

sull ordinamento

medio stretti linearità

aneIli

95

sulla

per

confronti

nel

caso

calcolo

I S7

calcoln campi

40

linearmente

dipendenti

linearmente

indipendenti

694 694

dell invereo

fattorizzazione

173 sommatoria

705

LUP

di una

fattorizzazinne

707

compatibili definite dei

di una

da

720

una

prodotto

esterno

693

prodotto

interno

693

prodotto

per

uno

713

di ri a

p os i t i ve

tridiagonale

691

526

prnprieth

de oblema

342

incremento

di un

contatore

operazioni

su pile

338

degli

del

nento

unitaria

prodottn

Miller-.

tbin

miniin

uadrati

minimr

I 75

grafico m, ltriciali

3

6

328 di scamhio

326

binario

346

345 pile di Yen all algoritmo

793 727

724.

binario o comune

442

multiplo

770

C

Ill I

illiO

C

lll I

llllO

di ricerca

23

69 I

MIS

691

MIS

f è.i.,ltL

232

Sllnultanei

176

440 . 683

d..na

683

6-colorazione .i complessità

moliip a ca ,

326

340

344 contatore

ante

madell I11,.lllillclL

binario

338

alber

nf t -li..

331 LI11

343

19

misur i

ill

binario

286 del

692 unitaria

330.

potenziale di un su

corni.

704

724

portante tra matrici

QII.LJS.

contatore

operazioni

724

inferiore

pes ili

692

694

326.

di un su pile aggregati

incremento

di numeri

58

incremnsto

metodo

692

fllI1lt

51,

miglio

ricorsiva

55

operazioni metodo

694

superiore

695

709 284

694

algebrici

846 51,

Ford

triangnldre

matroidi

LUP

parentesizzato 284

scalare

triangolare

,.ll

286

728

pseudoinversa

matroidi LU

285 692

sequenza

S2 846

846 prune-and-search metodo degli accantonamenti

fattorizzazione

di una

matroide 692

pri.-decessori

m trice

2 l5 51,

principale

ottima

prodotto

sottrazione

697

limiti

693

della

sottomatrice

di Strassen

558

incrementale

cornpletamene

soluzinne

215

iterativo

di parentesizzazioni sulle matrici

sistemi

210

di moltiplicazione

694

euclidea

singolare

bipartito

di

SSO

578,

divide-et-impera

simmetriche 765

692

al oritmo

436

232

divisore

massimo SS, 689,

addizione

226

di tempo

di ricerca

comun

e inversione

694

simmetrica

binario

massimo

tabella

di Ford-Fulkerson

prodotto

rango

175

albero della

327

342 726

quadrati 574,

di sostituzione

704 quasianelli rango di colonna

78,

massimo

417

limite dimensione

sottoalberi

107

massimali

583

limitazione

dei

651

266

663

Markov

lift-to-front

diretto

accantonamenti minimi

di divisione

721

presentazione

709

204

matrici

690

operazioni

heap

706 matrici

parentesizzazione

158

M

652

tra

invertibile

norma

204

84

lettura-concorrente

alla

compatta

I dei

di mano

tra

379

13

preflussi di concatenazione

692

692

numero

30 discreto

LU

ordinata

364,

sort

dei

matrici

704,

6á2

364

dei tra

matrici

744

sovrapposizione

alfa

lista

364

degli

moltiplicazione

non

concorrenti

primaria

metodo

724

moltiplicazione

04

182

accessi

mergeable

694

720

694 quadrati 695

moltiplicazione

658

194

logaritmo

823

e determinante

non-singolare

logaritmi

817

lista

pesato 73

principale secondaria

di matrici

negativa

in una

Lomuto,

ricorsione

su una

197

sentinelle

complemento

rango

mediano

merge

booleane

heap 197

commutativa

strette

dei prefissi l .4

19-

oggetti

legge

inverse,

203

mergeable

774

694

minore

inserimento Lapangc

inversa

minimi

concatenate

confronti

690

801

175

membri

724

identità

invertibile

404

198

paralleb cancellazione

335

690

inversione

585

calcolo

482

192

404

libera

631

Kruskal

dei

delle

868

KPG

193

concatenata

orientato

697

hermitiane

192

circolare

94

k-stringa

diagonale

bidirezionale

75

non

binario

mediano

memoria

di Vandermonde

868

lista

94

k-sottoinsieme

di un grafo 691

di permutazione di Toeplitz 754

876 872

vuoto

MCD

895

di incidenza

876

verificato

695

di incidenza

NP-completo

k-combinazione

determinante

867

867

a gri...a ad liicro

RAM .i uri .i

869 651

634

643 63 di fallace

638

di Bellman-

.

948

analitico

Indice

moltiplicazione

tra

754 771

modulwe mauici

veloce

543,

monoide

740

di parentesizzazioni

41

197

allocazione ombra

e deallocazione

a farfatla

6

che

di giunzione join insiemi disgiunti

spaziali 692 iterazione

per

circuiti

di divisione

87

nodo nodo

594

404

minimo

NOR

NOT

693

euclidea

sugli

heap

sulle

matrici

asintotica

21,

35

27

confronto

25

equazioni

operazioni

tra

notazione

Q

24

OR

notazione

O

23

ordinamenti

notazione

o

notazione

Q

notazione

cu 27

standard

29

9

556

comuni

29

29

esponenziali

in tempo

insertion

sort

78

merge

sort

2,

modello

ad atbero

1ogarimii

30

parziale

78

di Fibonacci

numeri

29

polinomi 9 tetto

873. 863

NP-completi nucleo

876,

fo állC

285

ordine

760

ti

di Carmichael

33.

di Fik nacci 73

aperto 70.

802

overtlow

147,

1S2,

lés

613

819

mondezza haih 223 189

9, con

94

incliritz t1 entn

356

prefisso

806 del

616

233

147

quicksort riporto

626

792

a coppie

loro

tra

medio

521

peso

medio

minimo

principio

di inclusione

principio

zero-uno

764

189,

98

calcolo

9S 100 100

ed indipendenza 125

probabilistico 98

107

distribuzione

binomiale

distribuzione

continua

uniforme

distribuzione

discreta

99

308

aziendale 34á,

342,

338,

379

379

189 160 189 29,

34,

735.

737

735

107

34

asintotico 735 736 veloce

740

rappresentazione

a coefficienti

rappresentnzione

a punti 737

di Horner

737

potenza

non

pi tenze

eli w

potenzè

esatte 552 AHI

variabili

tutte

tra

una

737

737

492

clcmciito

76S

alberi

hittari

alberi

di copertura

alberi

lessicografici

con

bip in un grafo hilanciato peso con

di ricerca

minimo

pe

rafi

minimo

4

di copertura

minimo

ci

binario

t

MCD

de

algoritmo

di K rp

ns itrici al

488

ie un

semianello

549

algoritmo

62

243

sparsi

243

di copertura

ori mo

358

i uguali

ulbero

ul

570

chi,

albero

algoritmo 781

nsassieo

ammortizzati

minimo

h naie

491

492

le coppie coppia

alberi

620

106

medio

varianza e scarto quadratico minimi di cammini prnblema 492 singola destinazione 492 singola sorgente tra

104

103

discrete

casuali

chiuso

798 lo ica

geometrica 120 e contenitori

problemi abbinamento

735

comportamento

99

125 dell assunzione problema casuale di una variabile valore atteso

festa

secondaria

76

esclusione

ed 605

99

probabilità assiomi

palline

521

di una

793

di Miller-Rabin

randomizzata

distribuzione 491

minimo

peso

pozzo PRAb 1

á53

658

lista

del

distribuzione 276

512 di cammino

pnrta 34

su una

contatore

Flavio

valutazione

609

prefissi

condizionata

peso

Pollard bitonico

653

condizionata

di permutazione 714

regola

465

di

805,

parametri

moltiplicazione

7S

nr anizzazi me 793

386

di ordinamento

1I dinatore

Catalani

naturali

rete

pattern

160

di 97

grado-limite moltiplicazione

l6S

topologico

554

numeri

co 1spo

883

164

163

145,

quicksnrt radix sor

NP-completezza

heap

dello parziale per confrnnti

33,

69

cnefficienti di decisione

146

mediano-fra-tre

dei

passaggio costo

polinomi addizione

16

ERE

primalità

77

sul

profondith underflow

16

6,

13.

31

29

173

163

fattoriale

monotonicità

triangolo

overflow lineare

inferiori

lineari

partizione Pascal,

memoria

841

in loco

limiti

e funzioni

166

PRAM

previsione 482 Prim

285

dell array 7S,

pianificazione 160, pile

170 sort

di segmenti

notazioni base

608

counting

implicita

16

653

primi

partizione

perni PERT

620

69

parametri

303

reti

74

bucketsort

35

423

770

bitonico

di sommatoria

disgiunti

insiemi

13,

dei

80, permutazione dei bit rovesciati

74

CRCW

primalità

di Giuseppe

su insiemi

cpposto

proprietà notazione

420

74

operazioni

iterate

22

389

74

funzioni

26

42è

692

differenza 36

261

I IS

numero

partizionamento

su RB-alberi

su insiemi

unione

notazione

406

di Fibonacci

intersezione

ù

6

heap

714 perno su heap binomiali

operazioni

60

norma

647

fondono

121

passaggio 5

valore

parsing

75

negativa

del

parentesizzazioni, 621 parità

750

0

navette

Newton.

854

PRAM

prestazioni

per

di un punto 423 operazioni

i BAND

198

854

ombra N

parametri costo

e controllo

493 predecessore di ricerca binario albero

l-

120,

compleanno

del

paradosso

84

n-insieme

364

pagine

285

e contenitori palline di successi sequenze

oggetti

29

multigrafo

armonico

numero

852

87

padre

numero

O

704

monotonicità

wrapping

package

721

692,

di polinomi 99 perfetta

moneta

761

73

654

dei puntatori sincronizzazione

salto

P

e composti

primi reali

736

di polinomi divide-et-impera

791

760,

primi 527

di matrici

il ciclo

per

peso

medio

521 di partiziOllDlllCllt l, di Sharnir ier la mi boolem e

oriamo

di Tarjan

comuni

442

LC 111LltO

15iS

.plicarione

di

730 per

i urini.

i airtenati

incrementale 520

algoritmo minimi

di Gabow

cammini

per

di ricerca

albero di copertura per il minimo aggregabili 400 gli heap il massimo efficiente algoritmo per trovare al numero di processori 685 rispetto Stooge

con

Euclide

del algoritmo

dimensione

di una

520

assunzione

125

ranghi

dei

calcolo

segmentato

866

polinomiale dei

parallelo 491

minimi

685

prefissi

in grafi e-densi 549 transitiva chiusura dinamico di un grafo 475 cirli di Eulero ciclo

hamiltoniano

ciclo

semplice

più di divisione

circuiti

classificazione

871,

897

lungo

903

dell ufficio

colorazione

di un grafo di un pafo

commesso

viaggiatore

commesso

viaggiatore

componenti

866

confronti

tra

contatore

binario

contatore

bitonico

dei

e euclideo

306

corrispondenza fattori

di im

925 Partition

minimo

off-line

dei

69

heap

parametri con l inserzione

della 86 865

profnndità

44 l

lista

scheduling

quadratica 332, 335

selezione

di attività

selezione

di elementi

863,

all algoritmo

328

754

89l

di Fibonacci

26 1

420

strati

precisa convessi

strati

massimali

in tempo

lineare

unico

di durata

proeesiore unitaria con

173

e contenitori

865 124

insieme

903

di Ciuseppe di una

profondità

della

profnnditi di ricerca

nsedia

276

aziendale

pii per il quieksort in un di im nodo

costruito iiiter

in modo 0- l

sequenza

e terno

693

903

pC1-

casuale

binarir 243

U 110

scalare prodotto cal vin

un.poligono

302

prova

69

disgiunti

di inni .mi

4è0

385

binomiali

699

dello

parziale

247

07 4

2, 730

792

pseudoprimalità

puntatori

punto

S42

di arresto

dei punii di Bernoulli

6á4

197. e oggetti

197

di massima

e componenti

ponti

sovrapposizione

284

di niatrici

838 ripetuta

quadratura quantili

flussi

ab

7

2 47

annliii analisi

7 W-

145

quieksort

ottimi

784

531,

I

hooleano

qu isinnello

di matrici coiti

18

qoaiianello

19

KC,ll lfC

134

heap

326

pseudoinversa

polinomio

316

di snicolazione. punti 474 biconne se

635

dei

755

è5

asintotica greedy 689

matrici

puntatori

693

di

835

notazione

pseudocndice punti di un

85

Q 83b.

parziale

160 albero

prospetto

76

di una

interno 308

802

736

93,

incrnciato

Flavio

feste

755 punto per foreste

sottom trici

delle 283,

di un

prodotto cartesiano

segmenti

RB

687

625

riporto

liberi

dei

di Fibonacci

di polinomi in più le derivate di tutte

valutazione

procedure

di proscadenze e

mancante

l.intero

raster

immagine

302

di un poligono 513

435

ranghi

di scambio

per i numeri ottinn di

valutazione

332

pianificazione

di un

292 291

ottima

di ordinamento

859

294

memorizzazione

del

284

di matrici

sequenza

e della

greedy 316

dinamica

1ineare

di alberi

859

algoritmi

degli

comuni

dell a scelta

296

lunga

292

291.

dinamica

ottima

alberi

332

unitaria

124

con

dei

della

306

algoritmi

in un

più

proprietà degli

delle

73 I

l

920

903

comune

stampa

trovare su RB-alberi

878 894,

isomorfo

triangolazione

join

max

propagazione 731

335

aciclici

spline

tre

70

su un

di circuiti

traslazione 890,

18 più mandi lineari di equazioni

di sottoinsieme

sottografi

programma

programmazione

i numeri

degli tridiagonali

di durata

triangolazione 183

piccoli

243

programma

sottostruttura

I

sequenza

623

160 pila di un nodo

sottoproblemi

312

286

otùma

623

ricorsione

866

polinomiale 227

286

parentesizzazione

programmazione di una prodotto

925

di contenitori

scansione

204

compatta

ordinata

in tempo

42

programmazione comparata analisi

227

statico

risolvibile

sottosequenza

di giunzione sugli heap

pro rammazinne

confronti

440

permutazione 143

in una

754

divide-et-impera

in loco

partizione

ricerca

somma per

di copertura

ordinamento

palline

insieme

soddisfattibilità

519

ordinamento

83 -

in un

sottografo

di Fibonacci

penalità ottimizzazione

158

S90

di ottimizzazione

albero

basata

di ripetizione

determinazione di decisione

minimo

grammi

insieme

procedura tn stringhe

conca-

357

dinamica

binaria

ricerca

della

media

615

per trasposizione 616

ricerca

173

di Yen

ordinamento

909

nella

182

pesato

operazioni

916

492,

pasaggio ii uno

356

317

pesata della

rovesciati

tabella

sull ordinamento medio

moltiplicazione

12S

copertura

cricca

914

854

in più lunga hash 226

di Toeplitz

operazione bit

di vertici

correttez..a

caso

di ordinamento

sistemi

di Bellman-Ford

203

copertura

costruzione

912,

reale

della

scansione

NP-completi

di un insieme

del

911,

I

227

migIioramento 315

i 26Q

2

problema dimensione

inferiori

numeri liste

903 persistenti in tempo

convesso

mediano

686

copertura

costo

1S3

914

519

di un

nel

di intervalli 901,

probabili tico dello zaino

continuo

visita

con

1

concreti

dinamici

un organizzazione

postale 904

connesse

computazionali

indipendente

insiemi

alla

reti

struttura produnorie

della

616

di Batcher

pari-dispari

riempimento di scatole

insieme

limite

di fusione

di permutazione 5 ricerca

399

alla

reti

285

di parentesizzazioni ricorsiva

soluzione

profondi h dei circuiti

334

reti

228

k-universale

matrici

collocazione

viaggiatore

commesso

tenazione

474

in ampiezza

colorazione

del

2-3-4

limiti

archi

simmetriche

593

limite

647

degli

756

802

quadratici con monete

resto

liste

con

heap

mergeable

204

concatenate

648

istanza 549

i

859

funzioni

per

di un

realizzazione a tutti

553

Booleane

inviluppo

minimi

cammini

594 intero

modulare

incapsulamento

655

di un

massimo

heap

calcolo

cammini

aritmetica

con

generale hashing

in tempo

spaziali

potenze

residui

FFT

fuga

864

calcolabile

navette

420

290 ottima

numero

del

determinazione

eliminazione

284

parentesizzato di una soluzione

costruzione

276

sovrapposizione di massima punto deIla alternativa realizzazione

68

acchiappafantasmi

ed

cricca

860

70

formule

925

massima

con dalle

fantasmi

flusso

della

arbitraggio

sui

di

144

d-sri

approssimazione

astrani

bit

S02

di heap

analisi

sui

sparse

di ricorrenze

esperimenti

124

307

inviluppate

estensione

max

propamma delle operazioni

analisi

esempi

completamente

lineare 513 promammazione e componenti di articolazione, ponu punti 474 biconnesse

317

di editing

reali

del

analisi

zaino

distribuzioni

159

Sort

dello

distanza

514

ammissibilità

5

discreto

algoritmo

algoritmo

analirico

Indice

analuico

Jnchce

154 de

casn

meglio

134

276

.

. fndiée

analisi

del

analisi

caso

del

caso

154

peggiore

inferiore

il caso

partizionamento

per bilanciato

partizionamento

migliore

partizionamento

164

reciproco

regola

di Horner

737

regole

di somma

e prodono

160

medio

155

complessa

radice

primitiva

782

radice

primitiva

radice

quadrata complesse

radici radix

sort

orizzontale

RAM

6

742

non

dell unità

con

banale

di

dell unità

742

1. modulo

742,

n

747

rete

destro

machine

435, 80.

-129,

263.

694

di colonna

á94

di un

elemento

reti

265

694 limite

a lista

a punti 737 dei cammini di alberi di grafi di oggetti di oggetti

con

array

con

un

l97

array

197

solo

840.

842

20

rho

-17

per reti reti

residue

69 251

RSA

di propagazione 249 785,

con

capacità

superinri

sorgenti

ed

210

e pezzi

555

559

dei

552 840.

delimitante

di Pollard 204.

scatole 842

221

quadratico KPG 631

schema

vertice

medio

357

einiinn

p 111llOI11lùlv

Jell

coppie

di punti

setaccio 389 più

Schur vicini

854

traboccante

585

106

41

921

908

27 trasposta

sirnplesso

513

27

653 e controllo

9

l

sistema

di crittografia

sistemi

di equazioni

sistemi

tridiagonali

prin1i

797

514,

di differenza

lineari

di equazioni

207

soddisfattibilith

di circuiti

soddisfattibilitè

di formule

di flussi ill trattori

78S 708

709

di vincoli

ai minimi g3 742

Cartesiana di interi

RSA lineari 709

sistemi

somma

921

653

75

solùzione

7I4

ccomposizinne

803

di Legendre

simmeuia

slot

di approssimazione

plCil,llllt.lllt.

dir amica

41

sovradetermiisato

332

23l

chiave

40

sottodeterminato 22 l -227

332

scheduling

798

654

quadratica di un

schedule

837

della

geometrica telescopiche

70

eincronizzazione

puntatori lineare

scansione

scarto

nlo

formali

simmetria

866

40

convergente

di poenze esponenziale

simbolo

517

di differenza polinomiale 621

788

scaricamento

di c pacità

40 41

singoletto

scansione multipli

219

79

setaccio

S salto

558

182

79

sincronizzazione

59S

di rastrellamento

binaria

631

per concatenazione 679 dei conflitti

di vincoli

più grandi 332

assolutamente

631 riporto

552

562

ricerca 255

561 flusso

multiple

con

renan

628.

senza

549

546,

608

armonica

497

553

merci

reti

626,

543,

i numeri

aritmetica 496,

in tempo

ritardo

194

infinita

collisioni

rotazioni

del

massimo

tagli

flusso

chiusi

sentinelle

179

peggiore 263

serie

8è7

625

di sistemi

semianelli

finita

875

risoluzione

594

dinamico

insieme

di scansione

5è9

27

594

aumentanti

vincolo

fratello-destro

cancellazione

inserzione

multipli

del

pesi

875

di uscita

183 piccoli nel caso lineare

di esecuzione

polinontiale

495,

177

sequenza

294 dei

lineare

medio 312

bitonica

immediato

risolvibile

incrementale

inferiori

737

247

estensione

493

massimo

62

62

in tempo

delle

flusso

su un

62

59

memorizzazione

deterministica del

201

i

175 tempo

degli

addizionatore 608

841 836

in tempo

62

625,

841 837

di elementi

53

62

51,

principale 62

581

552

esempio

447

rastrellamento

RB-alberi

426

51,

51,

di variahili

rilassamento

609

552,

antisimmelria

flusso minimi

radicati

di polinomi figlio-sinistro

RB

disgiunti

principale candidata

riporto bitonico

conservazione di insiemi

metodo

riflessività

613

615

bitonico

càmmini

concatenata

iterativo

665 841

affrontabili

di attivith

rideterminazione

616

836,

con

71

69

di sostituzione

652

concorrenti

selezione

156

metodo

rifiuto

ura-esclusiva

764

primi 652

ordinamento

204

VLSI

metodo

riducibilità

massimo

737

59,

6 I 1

aggiornamentn

907

a coefficienti

68.

con

60S

di flusso

calcolo

rappresentazione

esempi

in fattori

orientati

di chip

riducibile

di ordinamento

ordinatore

pieno 694

555

616

half-cleaner

694

di riga

e pezzi multipli 601

di fusione

rete

1á5.

sorgenti

scr

seg..ienti

204

369 51,

alberi

ura-concorrente

consecutivi

compatta

ordinata

teorema

posizione

seri.

c

B-alberi

ricorsione

584

61S pari-dispari per trasposizione

6

655

di colonna

pieno rapporto

334

sc

scr ure

193

193

sostituzione

di Batcher pari-dispari rete di ordinamento 604,

840

5 concatenata

802

di permutazione S59 residua

783

lineare

264

rango

compatta

77 77

di confrontatori

n-esima

random-access

rango

unità

168

raggio

ranghi

dell

ordinata

ricorrenze

77

ammissibile n-esima

lista

su

rete

radice

in una

controllo

quadratici con monete

resto 809

concatenata

soluzione

residui

87

lista

77

simmetrica

R

226

insieme

in una

lista 93

78

riflessiva

761

Rabin-Ksrp

749

77

binaria

antisimmetrica

1 52

statico

in un

lista

di equivalenza

transitiva

radici

420

641

relazione

per randomizzata

quoziente

e1iminazione FFT

un dato

778

148

160

pi il caso

versione

707,

della della

registri

156

ricorrenza

iterativa

571

bipetito

massimo con

di un elemento

relazione

della

profondità ricorrenza

aIternativa

realizzazione

261

join

149

147

prestazioni

realizzazione

abbinamento

di un

di giunzione 249

rotazioni

peggiore 149

peggiore mediano-fra-tre

sul

partizione

operazione 155

partizionamento 150

medio

limite

imalitico

558

quadrati

877 884 727

517 731

Indice

sommatoria

analitico

39,

sommatoria

43,

45,

implicita

sorgente

450,

49,

157

albero

5á6

552

sostituzione

53

a ritroso

della

in x

sottocammini

minimi

sottografi

aciclici

456,

sottogruppi sottoinsieme sottosequenza

un elemento

di una

ottima

ottinaa della

spazio

di una

lunghezza

costruzione

di una

sottrazione

minimo

LCS

tra matrici campione

speranza

297 LCS

tagli taglio

104

cubiche

stampa del

tasso

306

precisa riporto

statistica

tasso

805

d ordine

stella

di Kleene

stima

di cammino

Stooge

issininsn

496

159

Snrt

Strassen

I 75 868

697

859

massimali

stringhe

859

94,

SOS.

corrispondenza stati stringa

Sl4 tra

stringhe

con

gli

Sl3 vuota

806,

pnrentesizzazione di un cammino miniino ricorsiva

insiemi

di

527

286

26S.

giunti

3 i4 4. 4

conca-

9.

dell algoritmo

di Euclide

Q

notazione

asintotica

notazione

O

llOllZ1011C

O

notazione

Q

cammino

791 primi 462 bianco

760,

pnlinnmiale principale di ricorcio e

864.

866.

868

59

6

461

testo

cifrato

tetto

29,

761

e di congruenza

transitività

782

trasformata

774

de1 MCD

disegua lianza

della

massimo

766

ottima

ammissibile

la proprietà 330

non

lemma

del

lemma

deIla

sommatoria

lemma

delle

strette

lemma

dell iterazione

lemma

di cancellazione di dimezzamento.

limite

á2

della per

potenze

eintte

6

matrici

un

82

prefisso

raster

687

449,

615

690

coniugata

724

302 ottima

di un poligono 305

ricorsiva di una

di Pasral

tricotomia

28

tricotomia

degli

302

ottinn

triangolazione

305

97

intervalli

27 I

U

funzione dei

suffisso

S17

suffissi

di invii

underflow

806 saturanti

e

189

unicith

del

operazioni

uniformitè

581

unione di

ravosa

783 forn1ano

della

due

per

un

inello

701

pe ata

ran

hzch

della

220

funzione

MS

h ap

o 426

. 90

hinomiali di 429

alberi

738

intnpolazione

ftinzione

semplice 74,

e divisione

722

di

polinomio

uniformità

è più

artello

immagine

di ordinamento

sonostruttura

743

moltipiicazione

su

745 641

di un

soluzione

S4

detla

discreto

745

742

alle

non

795

di Fourier

ciclico

triangolo

581

superiore

logaritmo

di Fourier

reti

725

funzione

al numero

saturanti

62

veloce

trasposta

578

744

di sovrapposizione superiore

l inver inne

discreta 749

triangolazione mai

di Schur

della

di ricorsione

764

701 di Miller-Rabin

triangolazione 584

di mano

lemma

738 primi

760

rilassata

trasposta

della

decrescono

complemento

lemma

816

564

è aciclica

vertici

dei

suffisso

minimo

soddisfano

tori

trasposizione

funzione

taglio

.zione

787

traslazione

768

è un

finita

27

traslatore

di ricorsione

po

gr

364

782

573

297

LCS

di un

754

traccia

á74

cammini

66

Toeplitz

resti

i cammini

sono

di interpu polinomio in scomposizione

test

748 dei

.abia

773

essenziale

termine

c

minii

di una

chiuso

numeri

761

di innalzamento



della

di Fermat

nnn

ottima

del

di Eulero

limite

di cammini

unicità dei

3i non

pesi

495

unicità

teoria

85 695

binomiali dei

50t10gfUppO

269

liberi

determinante

539

di primalità 190 testa

di convoluzione

lemma o

RB-albero

divisione

607

alberi

sonostruttura

26

22 7

del

minimi

789

numeri

21

23

proprietà

greedy

767

24

degli

sottocammini

èèl

530

431

euristiche

notazione

algoritmo

del

le altezze

8

delle

16,

prnprietà

un sottoinsieme

dei

la rete 6,

peggiore confronti 16

tetto

generico

parentesi di Brent 670

zero-uno

minimi

59

sottostruttura

364

caso

dimoctntziw e

dell algoritmo

di un

i matmdi

di esecvzione

dimostrazione

850

estensione

flusso

795

tempo

albero

503

di Graham

di RSA

di Lamé

874

tenrema

di Dijkstra

matroidi

62

principio

509

dell algoritmo

di integrità

562

9

di accesso

ha e

IO di dati

ottimo

algoritmo

di Hall

227

415

tempo

tempo

della

successore

u

dell

di Lagrange

di errore

noturione

68

struttura

strutture

automi

nella

226 più lunga statico 226

quadratica di tlusso

di crescita

effetto

315

greedy convessi

tabella

442

tautologia

627

correttezza

di divisione.

insieme

a cascata

Tarjan

73 l

spostamento

di Bellman-Fard

delle

numeri

562

taglio

731

spline

in reti

. ome

del

scansione

in un

scansione

692

algoritmo

della

chiavi

dimensione 227

alla

ricerca

con

223

228

delle

alla

limite

298

dell

correttezza

352

214

tenazione

98

matematica

spline

LCS di una 299

..ash

k-universale

limite

495

. correttezza

455

in ampiezza

principale

di alberi proprietà rideterminazione

779 visita

sui

di tabelle

aperto

interpretazione

305

resto della

349

209

naturali

di un cammino

calcolo

tabella

dell organizzazione

hashing

897

sottostruttura

strati

hash

316

ottima

strati

e contrazione

indirizzamento

triangolazione

ottima

348

espansione

462

di preflusso correttezza de l

207

della

94

sonostruttura

diretto

dinamiche

analisi

297

del

un

quasianillo

intervalli

correttezza

,correttezza

211

espansione

tahelle

comune

sottostringa

774

73

proprio 296

sottosequenza

526

tabelle

da

generati

493,

209,

indirizzamento

applicata

101

i orrettezza

hash

335

predecessori 773. 774

620

di base de gli

discendenti

.nese

tabelle

749

dei

sottogruppi

di verità

tabella comune

sottografo

95

495

82

sottoespressione

strategia

binomiale

può essere 578

form-..

su un quasianello 705

matrici traboccante

operazione

dei ayes

T

di cammini

01 vertice

un

266

87

sottocammino

stati

dimensione

emi J un

midamento

80

sviluppo

mantenimento

b.

555

surgettiva

sottoalbero

233

555

supersorgente

710

radicato

di ricerca 233

, superpozzo

7I I

in avanti

binario

e predecessore suffisso 806

-3-A

380

h ish

21

I

W

irriálitico

Tiidiée

- occo

unità

di

unità

di

mmino

unità

di

ezzo

uno-a-u

437 437 4è7

vettori

linearmente

dipendenti

vettori

linearmente

indipendenti

vincoli

80

694

515

di capacità

552

di differenza

V

694

513.

di differenza

514,

S17

e cammini

minimi

513

Y151tS

valore

7 completa

aneso

r

hash

2,9

una

variabile

casuale

104

valutazio del

737

polinomio

di polii di tutte

ani

in più derivate

in un

punti di un

Vanderm

755 punto .ide 697

variabili

.suali

913

in ampiezza

755

450

in ordine

anticipato

in ordine

diEerito

in ordine

simmetrico

in profondità Viterbi

polinomio

algoritmo

discrete

230 2è0 230

458

308

104

varianza,06 varianza

. scarto

quadratico

medio

106

Wallace,

moltiplicatori

ad

albero

638

verifica dell intersezione

di una

dell intersezione

tra

di primalità 81

due

randomizzata

coppia segmenti

qualsiasi Sè7

di Miller-Rabin

840

793

XOR

620

vertice

isolato

82

Y

traboccante vettore

585

690,

collineare colonna di bit riga unità

Yen,

836

miglioramento

Ford

836

all algoritmo

di Bellman-

519

690 208 690

zero-uno

605

690

i

SU

2-45

rg, .ICp

BIBLIOTECA

G QgNTRAM

1

ol S..e

1

i

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF