Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaBenedek Borbély Megváltozta több, mint 10 éve
1
Rendezés lineáris időben (edény rendezések) Arany Zsolt ZDHYXP
2
• A rendezés nem összehasonlítás alapján történik, hanem egy hasító függvény alapján. Példa: Pénztárgép Egyértelműen meghatározható, hogy melyik címlet melyik „edénybe” kerül.
3
Hasító: h(k) -K a kulcs -H a hasító fv. Az 50-s érme a 4. edénybe fog kerülni. H(50)=4 <- Hasító függvény A 200-s érme a 6 edénybe fog kerülni. H(200)=6
4
Születési dátumok jó példa a több mezőt tartalmazó kulcsra. 2013.02.12 [év] [hó] [nap] Igaz a mezőkre, hogy mindegyik osztatlan kulcs. 1.Lépés: Az évek szerint válogatjuk szét őket 2.Lépés: A hónapok szerint válogatjuk szét őket 3.Lépés: A napok szerint válogatjuk őket 4.Lépés: Kivesszük az adatokat az edényekből és sorozattá alakítjuk őket, a sorozat rendezett lesz Hátrány: Az edények száma arányos az adatok számával. (Sok memóriát igényel sok adat esetén)
6
Listás edényrendezés visszafelé • Input: bcc, cba, aac, bbb, cab, acc, bca • Első lépés: • 3. pozíció szerint válogatjuk szét az adatokat • a: cba, bca • b: bbb,cab • c: bcc, aac, acc • a->b->c sorrendben összefűzzük
7
• Input: cba, bca, bbb,cab, bcc, aac, acc • Második lépés: • 2. pozíció szerint válogatjuk szét az adatokat • a: cab, aac • b: cba, bbb • c: bca, bcc,acc • a->b->c sorrendben összefűzzük
8
• Input: cab, aac, cba, bbb, bca, bcc, acc • Harmadik lépés: • 1. pozíció szerint válogatjuk szét az adatokat • a: aac, acc • b: bbb, bca, bcc • c: cab, cba • a->b->c sorrendben összefűzzük • Output: • aac, acc, bbb, bca, bcc, cab, cba
9
Bináris számok RAD->
10
Bináris számok RAD <-
11
Kérdés • Össze hasonlító rendezés vagy edényrendezés? • Öh. Rend: n * log n • Edényrend: d * n • Ha d > logn => az edény rendezés roszabb • Pl: n=1000 • Rekordméret = 500bájt • Kulcs méret = 16 bájt • d= 128 • Öh rend T(n) = ϴ (n * log n ) ~ 10.000 • Edényrendezés T(n) = ϴ (d * n) ~ 128.000
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.