Algoritmusok és adatszerkezetek 2 Újvári Zsuzsanna.

Slides:



Advertisements
Hasonló előadás
A Szállítási feladat megoldása
Advertisements

Készítette: Kosztyán Zsolt Tibor
Nevezetes algoritmusok
I. előadás.
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ő:
Matematika és Tánc Felkészítő tanár: Komáromi Annamária
Készítette: Mester Tamás METRABI.ELTE.  Egy bemeneten kapott szöveg(karakter sorozat) méretét csökkenteni, minél kisebb méretűre minél hatékonyabb algoritmussal.
2009 Bevezetés a programozásba Krankovits Melinda.
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.
Csoport részcsoport invariáns faktorcsoport részcsoport
DAG topologikus rendezése
Gubicza József (GUJQAAI.ELTE)
Operációkutatás szeptember 18 –október 2.
Az összehasonlító rendezések
Bevezetés a Java programozásba
Algoritmusok Az algoritmus fogalma:
STATISZTIKA II. 5. Előadás Dr. Balogh Péter egyetemi adjunktus Gazdaságelemzési és Statisztikai Tanszék.
Turbo pascal feladatok 2
Tartalomjegyzék és tárgymutató
OPERÁCIÓKUTATÁS Kalmár János, 2012 Tartalom A nulla-egy LP megoldása Hátizsák feladat.
A digitális számítás elmélete
A HTML alapjai Havlik Barnabás Készítette:
Reprezentációs függvény. Adva egy adattípus absztrakt és konkrét specifikációja: d a = ( A, F, E a ); d c = ( C, G, E c ); A = {A 0,..., A n };C = {C 0,...,
C++ Alapok, első óra Elemi típusok Vezérlési szerkezetek
Edényrendezés - RADIX „vissza” - bináris számokra
H A S H E L É S M Ű V E L E T E I N Y Í L T C Í M Z É S S E L S L I D E 01 HASHELÉS MŰVELETEI NYÍLT CÍMZÉSSEL Készítette Juhász Zoltán Gyakorlatvezető.
Dijkstra algoritmus Algoritmusok és adatszerkezetek 2. Újvári Zsuzsanna.
Vizuális és web programozás II.
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 II.
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,
Előrendezéses edényrendezés – RADIX „vissza”
Betűk rendezésétől egy valós számokat tartalmazó vektor rendezéséig Kiss László főiskolai docens OE RKK MKI augusztus 25.
A másodfokú függvények ábrázolása
Képek beillesztése. A beszúrandó képnek abban a mappában kell lennie, ahol a html oldalad forráskódja található! Először mindig a képet szúrjuk be, majd.
A differenciálszámtás alapjai Készítette : Scharle Miklósné
I276 Antal János Benjamin 12. osztály Nyíregyháza, Széchenyi I. Közg. Szki. Huffman kódolás.
Két kvantitatív változó kapcsolatának vizsgálata
Brute Force algoritmus
Visual Basic 2008 Express Edition
A Turing-gép.
Készítette: Hanics Anikó. Az algoritmus elve: Kezdetben legyen n db kék fa, azaz a gráf minden csúcsa egy-egy (egy pontból álló) kék fa, és legyen minden.
I. előadás.
Mélységi bejárás Az algoritmus elve: Egy kezdőpontból kiindulva addig megyünk egy él mentén, ameddig el nem jutunk egy olyan csúcsba, amelyből már nem.
Táblázatkezelés KÉPLETEK.
Gazdasági informatikus - Szövegszerkesztés 1 Hosszú dokumentumok kezelése.
Mikroökonómia gyakorlat
Bekezdések formázása 1..
A HATÁROZOTT INTEGRÁL FOGALMA
Valószínűségszámítás II.
Függvények.
C Programozási alapok.
Gazdasági informatikus - Szövegszerkesztés 1 HasábokHasábok.
Gazdasági informatikus - Szövegszerkesztés 1 Bekezdések formázása 2.
Karakterek, bekezdések formázása
OPERÁCIÓKUTATÁS TÖBBCÉLÚ PROGRAMOZÁS. Operáció kutatás Több célú programozás A * x  b C T * x = max, ahol x  0. Alap összefüggés: C T 1 * x = max C.
Prim algoritmus Algoritmusok és adatszerkezetek 2. Újvári Zsuzsanna.
KNUTH-MORRIS-PRATT ALGORITMUS (KMP) KÉSZÍTETTE: ZELNIK MÁRTON.
Quick-Search algoritmus. Bevezet ő Az eljárás működése során két esetet különböztetünk meg: A szöveg minta utáni első karaktere nem fordul elő a mintában.
Huffman tömörítés.
Huffman algoritmus Gráf-algoritmusok Algoritmusok és adatszerkezetek II. Gergály Gábor WZBNCH1.
Total commander.
Mediánok és rendezett minták
Programozás C# -ban Elágazások.
Programozási nyelvek alapfogalmai
Formázási műveletek.
Algoritmusok és Adatszerkezetek I.
Algoritmusok és Adatszerkezetek I.
INFOÉRA 2006 Szövegfeldolgozás III.
Szövegfeldolgozás II. INFOÉRA perc kell még hozzá
Előadás másolata:

Algoritmusok és adatszerkezetek 2 Újvári Zsuzsanna

Bevezető Az algoritmus esetén a mintát és szöveget balról jobbra hasonlítjuk össze. Ha az illeszkedés elromlik vizsgáljuk meg a szöveg minta után eső részének első karakterét (S[k+m+1]). Ennek a karakternek a függvényében fogjuk eldönteni, hogy mekkorát "ugorjunk" a mintával. Két esetet különböztetünk meg: 1.A szöveg minta utáni első karaktere nem fordul elő a mintában 2.A szöveg minta utáni első karaktere előfordul a mintában

1. A szöveg minta utáni első karaktere nem fordul elő a mintában, azaz S[k + m +1] ∉ M. Ekkor bármely olyan illesztés sikertelen lenne, ahol az S[k + m +1] pozíció fedésbe lenne a mintával. Tehát ezt a pozíciót "átugorhatjuk" a mintával, és a szöveg következő ( S[k + m + 2] ) karakterétől kezdhetjük újra (a minta elejétől) az illeszkedés vizsgálatot. S[k+m+1] S X M ennél az illesztésnél romlik el M itt nem illeszkedhet M M M M itt kezdjük újra az illeszkedés vizsgálatotM

2. A szöveg minta utáni első karaktere előfordul a mintában, azaz S [k + m + 1] ∈ M. Ekkor vegyük a mintabeli előfordulások közül "jobbról" az elsőt, és akkorát ugorjunk" a mintával, hogy az említett mintabeli karakter, fedésbe kerüljön a szöveg S [ k + m + 1] karakterével, majd a minta elejétől kezdve újra vizsgáljuk az illeszkedést. Mivel úgy találtuk, hogy k nem lehet érvényes eltolás, egy i (k < i < k + m + 1 ) eltolás akkor lehet érvényes, ha S [ k + m + 1] karakter fedésbe kerül a minta egy azonos karakterével. S[k+m+1] SABBABCBC… MAACBCD MAACBCD

Azért az említett i eltolásokat tekintjük, mivel ekkor kerülhet fedésbe S[k + m +1] –gyel valamely mintabeli karakter. A mintával való "ugrás" végrehajtásához bevezetjük a shift függvényt. A shift függvény az ABC minden betűjére megadja az "ugrás" nagyságát, amelyet akkor tehetünk, ha az illeszkedés elromlása esetén az illető betű lenne a szöveg minta utáni első karaktere. Definíció: A shift stukrogrammja:

A Quick-Search algoritmus struktogrammja:

A legjobb eset: A legrosszabb eset: Műveletigény:

Köszönöm a figyelmet Köszönöm a figyelmet