ASD w5

background image

Notatki do wyk ladu 5

24 marzec 2011

Drzewo binarne – struktura zdefiniowana na sko´

nczonym zbiorze

we

,

z l´

ow, kt´

ora

nie zawiera ˙zadnych we

,

z l´

ow, lub

sk lada sie

,

z trzech roz la

,

cznych zbior´

ow we

,

z l´

ow:

korzenia

– drzewa binarnego zwanego lewym poddrzewem

– drzewa binarnega zwanego prawym poddrzewem

Drzewo puste (drzewo zerowe) – drzewo binarne, kt´

ore nie ma

˙zadnych we

,

z l´

ow (oznaczane jako sta la NIL)

Je˙zeli w drzewie binarnym we

,

ze l ma tylko jednego syna, to jego

po lo˙zenie ma istotne znaczenie, tj. czy jest on lewym synem,
czy te˙z prawym synem

Regularne drzewo binarne

Regularne drzewo binarne – drzewo, w kt´

orym ka˙zdy z we

,

z l´

ow

jest ba

,

z li´

sciem, ba

,

z ma stopie´

n dwa. Porza

,

dek syn´

ow we

,

z la

odpowiada ich po lo˙zeniu.

Pe lne drzewo

Pe lne drzewo rze

,

du k – drzewo, w kt´

orym wszystkie li´

scie maja

,

te

,

sama

,

g le

,

boko´

c, a wszystkie we

,

z ly wewne

,

trzne maja

,

stopie´

n k

Typeset by

AMS-TEX

1

background image

2

Reprezentowanie drzew ukorzenionych

za pomoca

,

struktur wska´

znikowych

We

,

z ly drzewa reprezentowane sa

,

za pomoca

,

rekord´

ow.

Ka˙zdy

we

,

ze l ma pole klucz oraz pola s lu˙za

,

ce do zapamie

,

tywania wska´

znik´

ow

do innych we

,

z l´

ow.

Drzewa binarne

W ka˙zdym we

,

´

zle drzewa binarnego T pamie

,

tamy wska´

zniki do

ojca oraz lewego i prawego syna w polach p, lef t, right

p[x] = N IL x jest korzeniem drzewa T

lef t[x] = N IL – we

,

ze l x nie ma lewego syna

right[x] = N IL – we

,

ze l x nie ma prawego syna

root[T ] – atrybut zawieraja

,

cy wska´

znik do korzenia

drzewa

root[T ] = N IL – drzewo puste

Drzewa o dowolnym stopniu rozga le

,

zie´

n

Reprezentacja

na lewo syn, na prawo brat

root[T ] wskazuje na korze´

n drzewa T

– ka˙zdy we

,

ze l ma pole p wskazuja

,

ce na ojca

– zamiast wska´

znik´

ow do wszystkich syn´

ow ka˙zdy

we

,

ze l x ma dwa wska´

zniki:

1. lef t-child[x] - wskazuje na najbardziej lewego

syna x

background image

3

2. right-sibling[x] - wskazuje na najbli˙zszego,

znajduja

,

cego sie

,

na prawo brata we

,

z la x

lef t-child[x] = N IL - we

,

ze l x nie ma syn´

ow

right-sibling[x] = N IL - we

,

ze l x jest najbardziej

wysunie

,

tym na prawo bratem

Twierdzenie 4.

Dowolny algorytm sortuja

,

cy n element´

ow za

pomoca

,

por´

owna´

n w przypadku pesymistycznym wymaga Ω(n lg n)

por´

owna´

n

Sortowanie przez zliczanie

Za lo ˙zenie:

* ka˙zdy z n element´

ow cia

,

gu wej´

sciowego jest liczba

,

ca lkowita

,

z przedzia lu od 0 do k dla pewnego ustalonego ca lkowitego k

Idea:

* dla ka˙zdego elementu x z cia

,

gu wej´

sciowego wyznaczamy

liczbe

,

element´

ow mniejszych od x; w ten spos´

ob otrzymujemy

dok ladna

,

pozycje

,

x w cia

,

gu posortowanym

* je˙zeli dozwolonych jest wie

,

cej element´

ow o tej samej warto´

sci,

to poste

,

powanie to nale˙zy zmodyfikowa´

c aby wszystkie takie

elementy nie trafia ly na te

,

sama

,

pozycje

,

* dane wej´

sciowe zawarte sa

,

w tablicy A[1..n]

* dane posortowane zostaja

,

umieszczone w tablicy B[1..n]

* tablica C[0..k] pocza

,

tkowo wyzerowana przechowuje

tymczasowe dane pomocnicze

background image

4

Algorytm:

– dla ka˙zdego i = 0, 1, . . . , k wyznacz liczbe

,

element´

ow tablicy

A

ownych i (C[i] = liczba element´

ow r´

ownych i)

for j

1 to n

do C[A[j]]

← C[A[j]] + 1

– dla ka˙zdego i = 0, 1, . . . , k wyznacz liczbe

,

element´

ow tablicy

A mniejszych be

,

z r´

ownych i

for i

1 to k

do C[i]

← C[i] + C[i − 1]

– umie´

c wszystkie elementy A[j] na w la´

sciwych pozycjach

w tablicy B

for j

← n downto 1

do B[C[A[j]]]

← A[j]

C[A[j]]

← C[A[j]] 1

Ca lkowity czas dzia lania, to

Θ(n + k)

Je˙zeli k = O(n), to czas sortowania wynosi Θ(n)


Wyszukiwarka

Podobne podstrony:
ASD W5
nw asd w5
W5 Zawiesia
W5 sII PCR i sekwencjonowanie cz 2
W5 s33 Inżynieria finanansowa
W5 Temperatura powietrza WWSTiZ
ASD od z Sawanta II Wykład17 6
W5 Rozpoznawanie 2010
IB w5 co
Architektura i organizacja komuterów W5 Pamięć wewnętrzna
W5 pieniadz i system bankowy
psychologia ogólna W5 2013

więcej podobnych podstron