KÉSZÍTETTE: KOVÁCSICS KRISZTIÁN

Slides:



Advertisements
Hasonló előadás
Egy szélsőérték feladat és következményei
Advertisements

Koordináták, függvények
Nevezetes algoritmusok
KÉSZÍTETTE: Takács Sándor
Eljaras linearis_kereses(adatok[],n)
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
Logaritmikus keresés Feladat: Adott egy 11 elemű, növekvően rendezett tömb számokkal feltöltve. Keressük meg a 17-es értéket! Ha van benne, hányadik eleme.
Programozási tételek, és „négyzetes” rendezések
Matematika és Tánc Felkészítő tanár: Komáromi Annamária
Adatszerkezetek Az adatokat két fő csoportra oszthatjuk: egyszerű és összetett adatok.  Az egyszerű adatot egy érték jellemez, tovább nem bontható. (szám,
Illeszkedési mátrix Villamosságtani szempontból legfontosabb mátrixreprezentáció. Legyen G egy irányított gráf, n ponton e éllel. Az n x e –es B(G) mátrixot.
INFOÉRA Dinamikus programozás (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Juhász István-Zsakó László: Informatikai képzések.
Táblázat kezelő programok
Az összehasonlító rendezések
Programozási alapismeretek 11. előadás. ELTE Horváth-Papné-Szlávi-Zsakó: Programozási alapismeretek 11.2/ Tartalom.
Programozási alapismeretek 12. előadás. ELTE  Tapasztalatok a rendezésről Tapasztalatok a rendezésről  Keresés rendezett sorozatban Keresés rendezett.
1 Hash-elés. 2 Mi a hash-elés? Gyorsan teszi lehetővé a keresést, törlést, beszúrást, módosítást Nem szükséges az elemek rendezettsége Nincsenek rendezéshez.
Algoritmusok Az algoritmus fogalma:
MATEMATIKA 100. ÓRA MAJOROS MÁRK.
Egydimenziós tömbök. Deklarálás: var valtozónév:array[kezdőérték..végsőérték]of típus; type típusnév = array [kezdőérték..végsőérték] of típus; var valtozónév:
Gombkötő Attila Lineáris egyenlet.
Készítette: Pető László
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
AVL fák.
A digitális számítás elmélete
Edényrendezés - RADIX „vissza” - bináris számokra
Készítette: Szitár Anikó
„Országos” feladat. Feladat: Egy tetszőleges, színes országokat tartalmazó térképen akar eljutni egy kommandós csapat egy országból egy másikba. Viszont.
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
Microsoft Excel Függvények VII..
Microsoft Excel Függvények VI..
Programozás C# - ban Feladatsorok.
Nevezetes algoritmusok Beszúrás Van egy n-1 elemű rendezett tömbünk. Be akarunk szúrni egy n-edik elemet. Egyik lehetőség, hogy végigszaladunk a tömbön,
Rendezési algoritmusok
Félévi típus feladatok
Adatszerkezetek 1. előadás
Kombinatorika összefoglalás
Kombinatorika Gyakorló feladatok.
Kombinatorika Véges halmazok.
Binomiális eloszlás.
Programozási alapismeretek 11. előadás. ELTE Szlávi-Zsakó: Programozási alapismeretek 11.2/ Tartalom  Rendezési.
Adatbázisok tervezése, megvalósítása és menedzselése
Logikai programozás 6..
Témazáró dolgozat Kiegészítések.
Az internetes keresési módszerek
A konvex sokszögek kerülete és területe
Feladatok (értékadás)
Gráfok ábrázolása teljesen láncoltan
Hibajavító kódok.
Programozási alapismeretek 11. előadás
Memóriakezelés feladatok Feladat: 12 bites címtartomány. 0 ~ 2047 legyen mindig.
(Bináris) Kupac (heap) adattípus
„RADIX előre” edényrendezés Adott a háromjegyű bináris számok következő sorozata: 011, 111, 101, 010, 110, 001, 100 Adja meg a tömb tartalmát az egyes.
TÁMOP /1-2F Felkészítés szakmai vizsgára, informatika területre modulhoz II/14. évfolyam Az interaktív vizsga jellegzetes feladattípusainak.
Huffman kód.
Huffman tömörítés.
ZRINYI ILONA matematikaverseny
HÓDítsd meg a biteket! 2. sorozat
Bemutató óra
Nevezetes algoritmusok
Tömbök és programozási tételek
Logikai programozás 6..
Mediánok és rendezett minták
Eljaras linearis_kereses(adatok[],n)
A maximum kiválasztás algoritmusa
Algoritmusok Az algoritmus fogalma:
Lineáris keresés Keresés (N,A,sorszam) i := 1
2-3-fák A 2-3-fa egy gyökeres fa az alábbi tulajdonságokkal:
Algoritmusok és Adatszerkezetek I.
Állapottér-reprezentáljunk!
Előadás másolata:

KÉSZÍTETTE: KOVÁCSICS KRISZTIÁN 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

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?

Példa:

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

Bináris rendezés Feltételezzük: n= 2k 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. 2k-1 -1 elemmel kell összehsonlítani Következő: 2k-2-1 és így tovább. Tehát a k lépésszámot kifejezve: k = log2 n

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 = 2k 1. összehasonlítás: 1 < 9 ------- > n = 23-1-1 = 3 ( enyni elem közé kell beszúrni az újat ) 2. összehasonlítás: 1 < 2 ----- n = 23-2-1 = 1 elemmel kell összehasonlítani 3. összehasonlítás: 1 < 4 -------> Megvan az elem helye

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

Összehasonlítás Nem mindig gazdaságosabb mint az előző lineális keresés és beszúrás. 1000 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.

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:

Feladat – Bináris rendezés Ha n = 3k 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 = 3k ----- > k = log3 27 = 3

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 = 2k ~ k = log2 1000

Ö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

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

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

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.

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?

Szomszédos elemek cseréje

Á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 , k1 < kn-1, 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

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

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

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

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:

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

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