A Helyes Zárójelezés Struktogramja

Slides:



Advertisements
Hasonló előadás
A Floyd-Warshall algoritmus
Advertisements

Sor láncolt ábrázolással
Készítette: Kosztyán Zsolt Tibor
83. (1 pont) A felsorolt végeredmények, hatások közül karikázza be a mondatszerű leírással (szöveggel) megadott algoritmus eredményét jelölő betűt, ha.
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ő:
Egyszerű LL grammatika.  Definíciók  Példa. Ábrákkal  MASM program (szó felismerése LL(1) –ben )
Felhasználói felületek és üzleti logika Bollobás Dávid ASP.NET
Segéd-pszichoterapeuta-biogyógyász TANFOLYAM „Herbály” Oktatási- és Egészségvédő Bioközpont TEMATIKA.
Ismétlés. Ismétlés: Adatbázisok megnyitása: OPEN DATABASE adatbázis_név OPEN DATABASE ”adatbázis_név elérési útvonallal” Adattábla megnyitása: USE tábla_név.
Operációs rendszerek Mappa és file-kezelés.
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,
Lapcsere stratégiák FIFO, LRU, OPT, SC
Algebrai specifikációk Szlávi Péter ELTE IK Média- és Oktatásinformatikai Tanszék
Rekurzió (Horváth Gyula és Szlávi Péter előadásai felhasználásával)
4. Helyes zárójelezés algoritmusa
Gráf Szélességi bejárás
7. előadás (2005. április 12.) Láncolt lista File kezelés 1.
4. előadás (2005. március 8.) Pointerek Pointer aritmetika
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 6. Gyakorlat const, static, dinamikus 2D.
A verem működése fpga-n
A körlevél készítésének menete
A C++ programozási nyelvSoós Sándor 1/14 C++ programozási nyelv Gyakorlat hét Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet.
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ő:
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ő:
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,...,
16. Verem műveletei Kaszab Gábor.
Prím algoritmus.
„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.
Helyes zárójelezés programozási tétele LL.
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ő:
Adatkezelő lehetőségek
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,
Alapszint 2.  Készíts makrót, ami a kijelölt cellákat egybenyitja, a tartalmat vízszintesen és függőlegesen középre igazítja és 12 pontos betűméretűre.
Algoritmusok II. Gyakorlat 3. Feladat Pup Márton.
Listák, Vermek és Várakozási Sorok. Vermek Def: Egy sajátos lista amelyben minden beszúrási illetve törlési művelet csak a lista egyik végén történik.
Listák, Vermek és Várakozási Sorok
Listák, Vermek és Várakozási Sorok. Listák Pl: Kirándulók listája Bevásárló lista Alma Kenyér Krumpli Szappan Mosópor Bevásárló lista.
Egyirányban láncolt lista
Speciális Listák: Sor A sor adatszerkezet olyan speciális lista, amelyet a műveletei definiálnak. 1. ACCESS HEAD 3. POP itt GET-nek nevezzük 5. INJECT.
Rendezések és szövegkezelő függvények
Felsorolások. Egyszerű felsorolás Első elem Első elem Második elem Második elem Harmadik elem Harmadik elem TYPE = disk – teli kör (alapértelmezett)
Készítette: Rummel Szabolcs Elérhetőség:
Fák.
Rekordok Dinamikus tárkezelés és pointerek Dinamikusan láncolt listák
Gráf szélességi bejárása SzB(G,p). Tetszőleges gráf, melyben a p csúcsot választottam kiindulónak: A gráfnak megfelelő fa:
Koncepció: Specifikáció: e par exp i = eb imp bod ib Specifikáció elemzése: tulajdonságok felírása a koncepció alapján + tulajdonságok bizonyítása.
A Mikroprocesszor Harmadik rész.
HF MINTA 2012/2013. ősz. HF Minta  Objektum-orientált program  „Adatvezérelt” alkalmazás írása  Fájl kezelés (olvasás, írás)  Menü készítése  5-6.
Az ábrán az inicializáló blokk lefutása utáni állapotot láthatjuk. A KÉSZ halmazhoz való tartozást színezéssel valósítjuk meg. A nem KÉSZ csúcsok fehérek,
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.
Példa kettő-három fa felépítésére - törlés művelet Készítette : Krizsai Petra
Logikai programozás. ISMÉTLÉS Fibonacci sorozat: a/ fibonacci(1,1). fibonacci(2,1). fibonacci(N,F) :- N > 1, N1 is N - 1, N2 is N - 2, fibonacci(N1, F1),
Horváth Bettina VZSRA6.  Célja: Az eljárás célja egy véges gráf összes csúcsának bejárása a kezdőcsúcstól való távolságuk szerinti növekvő sorrendben.
Algoritmusok és Adatszerkezetek Egy kifejezés lengyelformára hozása - bemutató.
A 2. géptermi beszámoló VBA anyagának összefoglalása
Gráf szélességi bejárása. Cél Az algoritmus célja az, hogy bejárjuk egy véges gráf összes csúcsát és kiírjuk őket a kezdőcsúcstól való távolságuk szerint.
Algoritmusok és adatszerkezetek
Összeállította: Gergely János
Szélességi bejárás. Véges gráf összes csúcsának bejárása a kezdőcsúcstól való távolságuk szerinti növekvő sorrendben Egy csúcsot egyszer járunk be Egyenlő.
Dijkstra algoritmus. Egy minimális költségű utat keres élsúlyozott gráfban A gráf lehet irányított vagy irányítás nélküli Feltétele, hogy pozitív élsúlyok.
Szélességi bejárás Pátyerkó Dorina (VTYX9O). Szélességi bejárás algoritmusa Kijelölünk egy kezdőcsúcsot. A csúcs szomszédjait megkeressük, majd betesszük.
A verem. A verem (stack) homogén adatelemek olyan sorozata, amelyen két művelet értelmezett: –Új elem elhelyezése a verem tetejére (push) –Elem kivétele.
A Dijkstra algoritmus.
Dinamikus adatszerkezetek
Cím elrendezés Alcím.
Algoritmusok és Adatszerkezetek I.
Dinamikus adatszerkezetek
Cím elrendezése képpel
Cím Alcím.
Cím elrendezés Alcím.
Előadás másolata:

A Helyes Zárójelezés Struktogramja Feladat A Helyes Zárójelezés Struktogramja

A Helyes Zárójelezés Az algoritmus egy garantáltan helyes zárójelezés minden összetartozó nyitó- és csukózárójelpárjának a sorszámait egymás mellé kiírja.

Egy példa (( )) ((( ))) ( ) ?? 12 34 567 8910 11 12 ??

A Struktogram HZ(s) Empty(V); I := 0 S!=EOF Read(S,X); I:=I+1 X=“(” Push(V,I) Pop(V,J) Write(J,I)

A példa megoldása Üres verem létrehozása, ‘I’ index 0-ra állítása. V verem: I:=0; (üres)

A példa megoldása (( )) ((( ))) ( ) “1” Az első elem - nyitózárójel. az ‘I’ indexet növeljük 1-el, és a “1” –est betesszük a verembe. (( )) ((( ))) ( ) “1”

A példa megoldása “2” (( )) ((( ))) ( ) “1” A 2. elem is nyitózárójel. Az ‘I’ indexet növeljük 1-el, és a “2” – est betesszük a verembe. “2” (( )) ((( ))) ( ) “1”

A példa megoldása (( )) ((( ))) ( ) “1” Az 3. elem - csukózárójel. az ‘I’ indexet növeljük 1-el, a 2-est kivesszük a veremből. A 2-est és a 3-ast kiírjuk : megvan az első zárójelpár! Output: (2,3), (( )) ((( ))) ( ) “1”

A példa megoldása (( )) ((( ))) ( ) Az 4. elem - csukózárójel. az ‘I’ indexet növeljük 1-el, a 1-est kivesszük a veremből. A 1-est és a 4-est kiírjuk. Megvan az második zárójelpár! Output: (2,3),(1,4), (( )) ((( ))) ( )

A példa megoldása (( )) ((( ))) ( ) “5” Az 5. elem nyitózárójel. Az ‘I’ indexet növeljük 1-el, és az “5” – öst betesszük a verembe. Output: (2,3),(1,4), (( )) ((( ))) ( ) “5”

A példa megoldása “6” (( )) ((( ))) ( ) “5” Az 6. elem nyitózárójel. Az ‘I’ indexet növeljük 1-el, és az “6” – ost betesszük a verembe. Output: (2,3),(1,4), “6” (( )) ((( ))) ( ) “5”

A példa megoldása “7” “6” (( )) ((( ))) ( ) “5” Az 7. elem nyitózárójel. Az ‘I’ indexet növeljük 1-el, és az “7” – est betesszük a verembe. Output: (2,3),(1,4), “7” “6” (( )) ((( ))) ( ) “5”

A példa megoldása “6” (( )) ((( ))) ( ) “5” Az 8. elem - csukózárójel. az ‘I’ indexet növeljük 1-el, a 7-est kivesszük a veremből. A 7-est és a 8-ast kiírjuk. Megvan a harmadik zárójelpár! Output: (2,3),(1,4),(7,8), “6” (( )) ((( ))) ( ) “5”

A példa megoldása (( )) ((( ))) ( ) “5” Az 9. elem - csukózárójel. az ‘I’ indexet növeljük 1-el, a 6-ost kivesszük a veremből. A 6-ost és a 9-est kiírjuk. Megvan a negyedik zárójelpár! Output: (2,3),(1,4),(7,8),(6,9), (( )) ((( ))) ( ) “5”

A példa megoldása (( )) ((( ))) ( ) Az 10. elem - csukózárójel. az ‘I’ indexet növeljük 1-el, a 5-öst kivesszük a veremből. A 5-öst és a 10-est kiírjuk. Megvan az ötödik zárójelpár! Output: (2,3),(1,4),(7,8),(6,9),(5,10), (( )) ((( ))) ( )

A példa megoldása (( )) ((( ))) ( ) “11” Az 11. elem nyitózárójel. Az ‘I’ indexet növeljük 1-el, és a “11” – est betesszük a verembe. Output: (2,3),(1,4),(7,8),(6,9),(5,10), (( )) ((( ))) ( ) “11”

A példa megoldása (( )) ((( ))) ( ) Az utolsó elem - csukózárójel. az ‘I’ indexet növeljük 1-el, a 11-est kivesszük a veremből.A 5-öst és a 10-est kiírjuk. Megvan az utolsó zárójelpár! Output: (2,3),(1,4),(7,8),(6,9),(5,10),(11,12) (( )) ((( ))) ( )

Egy egyszerű nem üres lista aktuális elemének a törlése. 2. Feladat Egy egyszerű nem üres lista aktuális elemének a törlése.

A Lista Az ‘l’ pointer a listánk első elmére mutat, és a lista nem üres : l . . . akt Az akt pointer értéke NIL lesz üres lista esetén, de akkor is, ha „lelépünk” a listáról.

A Törlés Struktogramja Töröl(l) akt = NIL H I B A p := l akt = l l:=l.mut akt:=l dispose(p) p.mut != akt p:=p.mut p.mut := akt.mut dispose(akt) akt := p.mut

Az Aktuális Elem Törlése Ha nem NIL az aktuális pointer, de tegyük fel, hogy a legelső : … l akt Ilyenkor az elem törlése az alábbi módon : …

Az Aktuális (Első) Elem Törlése l := l.mut : akt := l dispose(p) (p:=l volt a stuki elején), azaz: l akt akt l … akt

Az Aktuális (Nem Első) Elem Törlése p.mut != akt : (addig lépünk a pointerrel, míg meg nem találjuk az aktuális elemet). … … l akt akt p.mut := akt.mut …

Az Aktuális (Nem Első) Elem Törlése dispose(akt) : akt := p.mut … akt akt