Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Szortírozás KÉSZÍTETTE: KOVÁCSICS KRISZTIÁN. Tartalom:  Beszúrás  Összefészülés  Sorbarendezés  Átrendezés cserével  Legnagyobb és a következő elem.

Hasonló előadás


Az előadások a következő témára: "Szortírozás KÉSZÍTETTE: KOVÁCSICS KRISZTIÁN. Tartalom:  Beszúrás  Összefészülés  Sorbarendezés  Átrendezés cserével  Legnagyobb és a következő elem."— Előadás másolata:

1 Szortírozás KÉSZÍTETTE: KOVÁCSICS KRISZTIÁN

2 Tartalom:  Beszúrás  Összefészülés  Sorbarendezés  Átrendezés cserével  Legnagyobb és a következő elem

3 Beszúrás  Adott egy lista n-1 dologról ( ezek lehetnek számok, nevek bármi )  Ezután az n-ik elemet pedig beakarjuk rakni a listába.  Cél: listában szereplő dolgokkal összehasonlítva, a lista megfelelő helyére kell beszúrnunk.  Hogyan lehetséges ez?

4 Példa:

5 Beszúrás Hátránya:  Lineális kereséssel történik  Átlagosan n/2 összehasonlítást igényel  Legrosszabb eset: n-1 összehasonlítás > nem túl gazdaságos

6 Bináris rendezés Feltételezzük: n= 2 k tehát a listánk megegyezik 2 valamely hatványával. Ötlet: Hasonlítsuk össze a kiválasztott elemet, a lista középső elemével. 2 k-1 -1 elemmel kell összehsonlítani Következő: 2 k-2 -1 és így tovább. Tehát a k lépésszámot kifejezve: k = log 2 n

7 Bináris Keresés példa: Kezdő sorozat: { 4, 2, 6, 9, 12, 15, 2 } Beszúrandó elem: 1 Egyszerűség kedvéért Feltételezzük: n = 2 k 1. összehasonlítás: 1 n = = 3 ( enyni elem közé kell beszúrni az újat ) 2. összehasonlítás: 1 <  n = = 1 elemmel kell összehasonlítani 3. összehasonlítás: 1 Megvan az elem helye

8 Bináris Keresés K lépésszám n – el kifejezve. K = log2 n Előző példában : n = 8al K = 3

9 Összehasonlítás Nem mindig gazdaságosabb mint az előző lineális keresés és beszúrás elem esetén ( legroszabb eset) : Beszúrás: 1000 művelet Bináris keresés: 10 művelet. Informatikában: Gazdaságtalan, nem használjuk.

10 Feladat Itt kétserpenyős mérleg segítségével kell kiválasztani a külsőre teljesen egyforma pénzdarabok közül a könnyebb hamisat, 27 darab pénzérme van. Megoldás:

11 Feladat – Bináris rendezés Ha n = 3 k alakú pénzdarabok száma, akkor átlagosan k mérlegelésre van szükség, de átlagosan ennél kevesebb mérlegelés nem lehetséges. N = 27 pénz db 27 = 3 k > k = log 3 27 = 3

12 Amerikai Hadsereg - Feladat 2.1. Példa. Az amerikai hadseregnél állítólag úgy végzik a vérbajosok felkutatását, hogy az egész társaságtól vért vesznek, és a páciensek felének véréből egy részt összeöntve elvégzik a Wassermann-próbát. Amelyik félnél ez pozitív, ott a felezgetést tovább folytatják egész addig, amíg a betegeket ki nem szűrték. Ebben a seregben 1 beteg van. Hány összehasonlítás kell hogy kiszűrjük biztosan a beteget ? N = 1000 N = 2 k ~ k = log

13 Összefésülés  2 db rendezett n hosszúságú lista  Szeretnénk összefésülni a 2 listát  Kevés összehasonlítással X1…. Xn Y1…. Yn

14 Összefésülés 1. megoldás: Hátránya: x elemek sokszoros mozgatása

15 Javított megoldás: 3. tár bevezetése, elemek egyszeri mozgatása.

16 Sorbarendezés  Gyakori feladat hogy n adott dolgot valamilyen szempont szerint sorba kell rendezni.  Lehet: érték, súly, növekvő, csökkenő,  Feltételezés: bármely 2 dolgot összehasonlítva, megtudjuk mondani melyik előzze meg a másikat.

17 Szomszédos elemek cseréje - buborék Adott egy 5 elemű tömb: Hány cserével tudnánk az elemeit növekvő sorrendbe rendezni?

18 Szomszédos elemek cseréje

19 Átrendezés Cserékkel Adott egy K1, K2,….,kn sorozat. Melyeket növekvő sorrendbe kell átrendezni. 1. fázis k1 szám a helyére kerül. 1. csere k1 kn-2 és az új sorozatban függőleges vonallal vágjuk le amikkel már nem kell összehasonlítani. Kn-2 | K2K3…..Kn-3,K1|Kn-1,Kn

20 Példa 503,87, 512,61,908,170,897, fázis: 503 helyére kerül. 1. csere után :275 |, 87, 512, 61, 908, 170,897, csere 275,87 | 503,61,908,170,897 | csere 275, 87, 170 | 61,908,502 |897, csere után:275,87,170,61,|502|,908, 897, 512

21 Példa: 2. fázis: 275 helyretétele 275,87,170,61,503,908,897, csere után: 61 | 87,170,275 | …..

22 Feladat – Átrendezés cserékkel Szomszédos elemek cseréjével: 8 lépésből. Átrendezés cserékkel:

23 Legnagyobb és következő elem N dolog adott, melynek a sorrendjét nem ismerjük. Hány összehasonlítás kell hogy a legnagyobbat megtaláljuk? Tegyük fel n db ping pong versenyzőről van szó Lehető legkevesebb mérkőzést szeretnénk játszatni velük, hogy kiderüljön melyik a legjobb. (Erősorrend adott, és a jobb képességű nyer) 2 lehetőség:

24 Legnagyobb és a következő elem o Kihívásos verseny: Valaki kikiáltja magát bajnoknak, a bajnokot bárki kihívhatja. o A Vesztes kiesik a versenyből, a győztest újra ki lehet hívni. o Ha elfogytak a kihívók akkor megvan a bajnok. Kieséses bajnokság a közismert módon.

25 2. Legnagyobb elem Így a szükséges mérkőzések száma : (n-1) + (m-1) De mennyi az m? Legfeljebb annyi ahány forduló volt, és a versenyben feleződnek: Minimum mérkőzés szám a 2. helyezethez: n+ (log2 n ) -2


Letölteni ppt "Szortírozás KÉSZÍTETTE: KOVÁCSICS KRISZTIÁN. Tartalom:  Beszúrás  Összefészülés  Sorbarendezés  Átrendezés cserével  Legnagyobb és a következő elem."

Hasonló előadás


Google Hirdetések