Algoritmusok és adatszerkezetek I. 2. előadás

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Algoritmusok és adatszerkezetek I. 2. előadás"

Átírás

1 Algoritmusok és adatszerkezetek I. 2. előadás

2 Verem Verem= speciális sorozattípus Műveletei: Üres, üres?, Verembe, Veremből, tető Üres: Verem üres?(verem): Logikai tető(verem): Elem {NemDef} Verembe(Verem,Elem): Verem {NemDef} Veremből(Verem,Elem): (Verem Elem) {NemDef} 2/42

3 Verem A műveletek specifikációja Üres(V): ef:, uf: V=() üres?(v): ef:, uf: üres?=v=() Verembe(V,e): ef: V=W, uf: V=(W,e) Veremből(V,e): ef: V=(W,f), uf: V=W és e=f Megjegyzés: ef nem üres?(v) tető(v): ef: V=(W,f), uf: tető=f Megjegyzés: ef nem üres?(v) 3/42

4 Verem A műveletek tulajdonságai Üres veremre a verembe rakás és az üresség vizsgálat kivételével minden művelet értelmetlen. A veremből kivétel a verembe utoljára tett elemet veszi ki, azaz a verem alkalmas egy sorozat megfordítására. A tetőn mindig a verembe utoljára betett (legfelül levő) elem látszik. 4/42

5 Verem Megvalósítás folytonos, szekvenciális ábrázolással Verem(Típus TElem): Konstans MaxMélység: Egész(???) Típus VeremElem=TElem Változó t: Tömb(1..MaxMélység: VeremElem) teteje: 0..MaxMélység Probléma: MaxMélység=???? 5/42

6 Verem Eljárás Üres(V): V.teteje:=0 Függvény üres?(v): üres?:=v.teteje=0 Függvény vége. Függvény tető(v): tető:=v.t(v.teteje) Függvény vége. 6/42

7 Verem Eljárás Verembe(V,e): V.teteje:=V.teteje+1 V.t(V.teteje):=e Eljárás Veremből(V,e): e:=v.t(v.teteje) V.teteje:=V.teteje-1 Meggondolandó: hibakezelés hol és mikor kell? 7/42

8 Verem Megvalósítás dinamikus láncolással Verem(Típus TElem): Típus VeremElem=Rekord(érték: TElem alatta: Mutató(VeremElem) Változó teteje: Mutató(VeremElem) Magyarázat: a láncolásnak nincs szerepe a hatékonyság szempontjából (nincs beszúrás vagy törlés középen), csak a memória lefoglalási lehetőséget használjuk ki. 8/42

9 Verem Eljárás Üres(V): V.teteje:=Sehova Függvény üres?(v): üres?:=v.teteje=sehova Függvény vége. Függvény tető(v): tető:=tartalom(v.teteje).érték Függvény vége. Emlékeztető: Eljárás Üres(V): V.teteje:=0 Függvény üres?(v): üres?:=v.teteje=0 Függvény vége. Függvény tető(v): tető:=v.t(v.teteje).érték Függvény vége. 9/42

10 Verem Eljárás Verembe(V,e): Lefoglal(w,(e,V.teteje)) V.teteje:=w Eljárás Veremből(V,e): Eljárás Verembe(V,e): V.teteje:=V.teteje+1 V.t(V.teteje):=e Eljárás Veremből(V,e): e:=v.t(v.teteje) V.teteje:=V.teteje-1 e:=tartalom(v.teteje).érték; w:=v.teteje V.teteje:=tartalom(V.teteje).alatta Felszabadít(w) A lefoglalás másképpen: Lefoglal(w) tartalom(w).érték:=e tartalom(w).alatta:=v.teteje 10/42

11 Verem Megvalósítás dinamikus láncolással (hibakezeléssel) Verem(Típus TElem): Típus VeremElem=Rekord(érték: TElem alatta: Mutató(VeremElem)) Változó teteje: Mutató(VeremElem) hiba: Logikai 11/42

12 Verem Eljárás Üres(V): V.teteje:=Sehova; V.hiba:=hamis Eljárás Verembe(V,e): Lefoglal(w,(e,V.teteje)) V.teteje:=w 12/42

13 Verem Függvény tető(v): Ha v.teteje=sehova akkor V.hiba:=igaz különben tető:=tartalom(v.teteje).érték Függvény vége. Eljárás Veremből(V,e): Ha v.teteje=sehova akkor V.hiba:=igaz különben e:=tartalom(v.teteje).érték w:=v.teteje V.teteje:=tartalom(V.teteje).alatta Felszabadít(w) 13/42

14 Verem Speciális verem műveletek a FORTH nyelvből swap(v): a két felső elem cseréje ef: V=(W,e,f), uf: V=(W,f,e) dup(v): a felső elem duplikálása ef: V=(W,e), uf: V=(W,e,e) over(v): a felső alatti elem duplikálása a verem tetején ef: V=(W,e,f), uf: V=(W,e,f,e) rot(v): a felső három elem ciklikus léptetése ef: V=(W,e,f,g), uf: V=(W,f,g,e) 14/42

15 Verem Eljárás swap(v): e:=tartalom(v.teteje).érték w:=tartalom(v.teteje).alatta tartalom(v.teteje).érték:=tartalom(w).érték tartalom(w).érték:=e 15/42

16 Verem Eljárás dup(v): e:=tartalom(v.teteje).érték Lefoglal(w,(e,V.teteje)) V.teteje:=w 16/42

17 Verem Eljárás over(v): w:=tartalom(v.teteje).alatta e:=tartalom(w).érték Lefoglal(w,(e,V.teteje)) V.teteje:=w 17/42

18 Verem Eljárás rot(v): w:=tartalom(v.teteje).alatta x:=tartalom(w).alatta e:=tartalom(x).érték tartalom(x).érték:=tartalom(w).érték tartalom(w).érték:=tartalom(v.teteje).érték tartalom(v.teteje).érték:=e 18/42

19 Verem alkalmazás Egy kifejezés (,) és [,] zárójelpárokat tartalmaz. Ellenőrizzük a helyességét! Hibás esetek: x([y)] hibás párosítás x(a - nyitó zárójelnek nincs csukó párja x)a( - csukó zárójelnek nincs nyitó párja 19/42

20 Verem alkalmazás Függvény helyes(k): i:=1; h:=igaz; V:=üres Ciklus amíg i hossz(k) és h Ha K(i)= ( vagy K(i)= [ akkor Verembe(V,K(i)) különben ha K(i)= ) vagy K(i)= ] akkor Veremből(V,s) h:= K(i)= ) és s= ( vagy K(i)= ] és s= [ i:=i+1 Ciklus vége helyes:=h és nem V.hiba és üres?(v) 20/42

21 Sor Sor= speciális sorozattípus Műveletei: Üres, üres?, Sorba, Sorból, első Üres: Sor üres?(sor): Logikai első(sor): Elem {NemDef} Sorba(Sor,Elem): Sor {NemDef} Sorból(Sor,Elem): (Sor Elem) {NemDef} 21/42

22 Sor A műveletek specifikációja Üres(S): ef:, uf: S=() üres?(s): ef:, uf: üres?=s=() Sorba(S,e): ef: S=W, uf: S=(W,e) Sorból(S,e): ef: S=(f,W), uf: S=W és e=f Megjegyzés: ef nem üres?(s) első(s): ef: S=(f,W), uf: első=f Megjegyzés: ef nem üres?(s) 22/42

23 Sor A műveletek tulajdonságai Üres sorra a sorba rakás és az üresség vizsgálat kivételével minden művelet értelmetlen. A sorból kivétel a sorba legrégebben tett elemet veszi ki, azaz a sor alkalmas egy sorozat feldolgozására, ha a keletkezés és a feldolgozás üteme eltér egymástól. A sor elején mindig a sorba legrégebben betett (legelöl levő) elem látszik. 23/42

24 Sor Megvalósítás folytonos, szekvenciális ábrázolással Sor(Típus TElem): Konstans MaxHossz: Egész(???) Típus SorElem=TElem Változó t: Tömb(1..MaxHossz: SorElem) első,utolsó,db: 0..MaxHossz A tömböt ciklikusan kezeljük: ha a végére értünk és az elején már szabadult fel hely, ott folytatjuk a kitöltést. Probléma: MaxHossz=???? 24/42

25 Sor Eljárás Üres(S): S.első:=1; S.utolsó:=0; S.db:=0 Függvény üres?(s): Üres?:=S.db=0 Függvény vége. Függvény első(s): első:=s.t(s.első) Függvény vége. 25/42

26 Sor Eljárás Sorba(S,e): Ha S.utolsó=Maxhossz akkor S.utolsó:=1 különben S.utolsó:=S.utolsó+1 S.db:=S.db+1; S.t(S.utolsó):=e Eljárás Sorból(S,e): e:=s.t(s.első); S.db:=S.db-1 Ha S.első=Maxhossz akkor S.első:=1 különben S.első:=S.első+1 S.utolsó S.első 26/42

27 Sor Megvalósítás dinamikus láncolással Sor(Típus TElem): Típus SorElem=Rekord(érték: TElem köv: Mutató(SorElem)) Változó eleje,vége: Mutató(SorElem) Megjegyzés: Itt sem használunk középre beszúrást, középről törlést, azaz a láncolást csak a tömbméret korlát elhagyása miatt használjuk. 27/42

28 Sor Eljárás Üres(S): S.eleje:=sehova; S.vége:=sehova Függvény üres?(s): Üres?:=S.eleje=sehova Függvény vége. Függvény első(s): első:=tartalom(eleje).érték Függvény vége. Emlékeztető: Eljárás Üres(S): S.első:=1; S.utolsó:=0 S.db:=0 Függvény üres?(s): Üres?:=S.db=0 Függvény vége. Függvény első(s): első:=s.t(s.első) Függvény vége. 28/42

29 Sor Eljárás Sorba(S,e): Lefoglal(újvége,(e,sehova)) Ha S.vége=sehova akkor S.eleje:=újvége különben tartalom(s.vége).köv:=újvége S.vége:=újvége 29/42

30 Sor Eljárás Sorból(S,e): e:=tartalom(s.eleje).érték újeleje:=tartalom(s.eleje).köv Felszabadít(S.eleje) S.eleje:=újeleje Ha S.eleje=sehova akkor S.vége:=sehova 30/42

31 Sor Megvalósítás dinamikus láncolással (hibakezeléssel) Sor(Típus TElem): Típus SorElem=Rekord(érték: TElem köv: Mutató(SorElem)) Változó eleje,vége: Mutató(SorElem) hiba: Logikai 31/42

32 Sor Eljárás Üres(S): S.eleje:=sehova; S.vége:=sehova; S.hiba:=hamis Függvény első(s): Ha S.eleje=sehova akkor S.hiba:=igaz különben első:=tartalom(s.eleje).érték Függvény vége. 32/42

33 Sor Eljárás Sorba(S,e): Lefoglal(új,(e,sehova)) Ha S.vége=sehova akkor S.eleje:=új különben tartalom(s.vége).köv:=új S.vége:=új 33/42

34 Sor Eljárás Sorból(S,e): Ha S.eleje=sehova akkor S.hiba:=igaz különben e:=tartalom(s.eleje).érték újeleje:=tartalom(s.eleje).köv Felszabadít(S.eleje) S.eleje:=újeleje Ha S.eleje=sehova akkor S.vége:=sehova 34/42

35 Sor alkalmazás Példa: Egy vasútvonal két állomásán egy nap feljegyeztük, az összes egyik irányba áthaladó vonat indulási, illetve érkezési idejét (idő szerinti sorrendben). Adjuk meg az áthaladt vonatok menetidőit a két állomás között! (Nincs előzés.) Ötlet: A korábban érkező adatot egy sorban várakoztatjuk addig, amíg a párja meg nem érkezik. 35/42

36 Sor alkalmazás Forgalom: Nyit(f); Nyit(g); Üres(S) Ciklus amíg nem vége?(f) Olvas(f,adat) Ha adat.állomás=1 akkor Sorba(S,adat.idő) különben Sorból(S,előző) Ír(g,adat.idő-előző) Ciklus vége Zár(f); Zár(g) 36/42

37 Sor alkalmazás Példa: Egy egyirányú utcában két jelzőlámpánál figyelik az áthaladó autókat: mikor haladt át a lámpánál. Az adatok megfigyelési idő szerinti sorrendben érkeznek. N db autót figyeltek meg. Csoportosítsuk az adatokat, hogy az első lámpánál történt megfigyelések időbeli sorrendjüket megtartva előzzék meg a második lámpánál megfigyelt adatokat! (Az utcában előzés nincs.) Ötlet: Az 1-es lámpa adatai azonnal írhatók az eredménybe, a 2-es lámpa adatait egy átmeneti sorban tároljuk, s a végén írjuk az eredménybe. A sor ha a mérete indokolja persze lehet háttértáron is. 37/42

38 Sor alkalmazás Ötlet: Az 1-es lámpa adatai azonnal írhatók az eredménybe, a 2- es lámpa adatait egy átmeneti sorban tároljuk, s a végén írjuk az eredménybe. A sor ha a mérete indokolja persze lehet háttértáron is. A bemenet és a kimenet is forgalom típusú adatok fájlja, és a sorban is ilyeneket tárolunk: Forgalom=Rekord(lámpa: {1,2}, idő: Egész) Változó S: Sor(Forgalom) 38/42

39 Sor alkalmazás Forgalom: Nyit(f); Nyit(g); Üres(S) Ciklus amíg nem vége?(f) Olvas(f,adat) Ha adat.lámpa=1 akkor Ír(g,adat) különben Sorba(S,adat) Ciklus vége Ciklus amíg nem üres?(s) Sorból(S,adat); Ír(g,adat) Ciklus vége Zár(f); Zár(g) 39/42

40 Kétvégű sor Kétvégű sor= speciális sorozattípus Műveletei: Üres, üres?, Sorelejére, Sorvégére, első, Sorelejéről, Sorvégéről Üres: Sor Sorelejére(Sor,Elem): Sor {NemDef} Sorvégére(Sor,Elem): Sor {NemDef} Sorelejéről(Sor,Elem): (Sor Elem) {NemDef} Sorvégéről(Sor,Elem): (Sor Elem) {NemDef} üres?(sor): Logikai első(sor): Elem {NemDef} 40/42

41 Kétvégű sor A műveletek specifikációja Üres(S): ef:, uf: S=() üres?(s): ef:, uf: üres?=s=() Sorelejére(S,e): ef: S=W, uf: S=(e,W) Sorvégére(S,e): ef: S=W, uf: S=(W,e) Sorelejéről(S,e): ef: S=(f,W), uf: S=W és e=f Sorvégéről(S,e): ef: S=(W,f), uf: S=W és e=f első(s): ef: S=(f,W), uf: első=f 41/42

42 Algoritmusok és adatszerkezetek I. 2. előadás vége

Algoritmusok és adatszerkezetek I. 2. előadás

Algoritmusok és adatszerkezetek I. 2. előadás Algoritmusok és adatszerkezetek I. 2. előadás Verem Verem= speciális sorozattípus Műveletei: Üres, üres?, Verembe, Veremből, tető Üres: Verem üres?(verem): Logikai tető(verem): Elem {NemDef} Verembe(Verem,Elem):

Részletesebben

Algoritmusok és adatszerkezetek I. 4. előadás

Algoritmusok és adatszerkezetek I. 4. előadás Algoritmusok és adatszerkezetek I. 4. előadás A lista olyan sorozat, amelyben műveleteket egy kiválasztott, az ún. aktuális elemmel lehet végezni. A lista rendelkezik az alábbi műveletekkel: Üres: Lista

Részletesebben

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája

Adatszerkezetek Adatszerkezet fogalma. Az értékhalmaz struktúrája Adatszerkezetek Összetett adattípus Meghatározói: A felvehető értékek halmaza Az értékhalmaz struktúrája Az ábrázolás módja Műveletei Adatszerkezet fogalma Direkt szorzat Minden eleme a T i halmazokból

Részletesebben

Algoritmizálás és adatmodellezés 2. előadás

Algoritmizálás és adatmodellezés 2. előadás Algoritmizálás és adatmodellezés 2 előadás Összetett típusok 1 Rekord 2 Halmaz (+multialmaz, intervallumalmaz) 3 Tömb (vektor, mátrix) 4 Szekvenciális fájl (input, output) Pap Gáborné, Zsakó László: Algoritmizálás,

Részletesebben

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával)

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával) Adatszerkezetek I. 7. előadás (Horváth Gyula anyagai felhasználásával) Bináris fa A fa (bináris fa) rekurzív adatszerkezet: BinFa:= Fa := ÜresFa Rekord(Elem,BinFa,BinFa) ÜresFa Rekord(Elem,Fák) 2/37 Bináris

Részletesebben

Algoritmusok és adatszerkezetek I. 1. előadás

Algoritmusok és adatszerkezetek I. 1. előadás Algoritmusok és adatszerkezetek I 1 előadás Típusok osztályozása Összetettség (strukturáltság) szempontjából: elemi (vagy skalár, vagy strukturálatlan) összetett (más szóval strukturált) Strukturálási

Részletesebben

ADATSZERKEZETEK (VEREM, SOR)

ADATSZERKEZETEK (VEREM, SOR) ADATSZERKEZETEK (VEREM, SOR) 1. ADATSZERKEZET FOGALMA Az adatszerkezet egymással kapcsolatban álló adatok összessége, amelyen meghatározott, az adatszerkezetre jellemző műveletek végezhetők el. Az adatok

Részletesebben

Algoritmusok és adatszerkezetek I. 3. előadás

Algoritmusok és adatszerkezetek I. 3. előadás Algoritmusok és adatszerkezetek I. 3. előadás Kupac A kupac olyan véges elemsokaság, amely rendelkezik az alábbi tulajdonságokkal: 1. Minden elemnek legfeljebb két rákövetkezője (leszármazottja) lehet.

Részletesebben

Algoritmizálás és adatmodellezés tanítása 3. előadás

Algoritmizálás és adatmodellezés tanítása 3. előadás Algoritmizálás és adatmodellezés tanítása 3. előadás Szövegfájl Fájl típus A szövegfájl karakterek sorozata: input fájl Műveletei: nyit, zár, olvas, vége? output fájl Műveletei: nyit, zár, ír Pap Gáborné,

Részletesebben

Aritmetikai kifejezések lengyelformára hozása

Aritmetikai kifejezések lengyelformára hozása Aritmetikai kifejezések lengyelformára hozása Készítették: Santák Csaba és Kovács Péter, 2005 ELTE IK programtervező matematikus szak Aritmetikai kifejezések kiértékelése - Gyakran felmerülő programozási

Részletesebben

Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek

Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek Algoritmusok és adatszerkezetek gyakorlat 06 Adatszerkezetek Tömb Ugyanolyan típusú elemeket tárol A mérete előre definiált kell legyen és nem lehet megváltoztatni futás során Legyen n a tömb mérete. Ekkor:

Részletesebben

Adatszerkezetek II. 2. előadás

Adatszerkezetek II. 2. előadás Adatszerkezetek II. 2. előadás Gráfok bejárása A gráf bejárása = minden elem feldolgozása Probléma: Lineáris elrendezésű sokaság (sorozat) bejárása könnyű, egyetlen ciklussal elvégezhető. Hálós struktúra

Részletesebben

Adatszerkezetek I. 1. előadás

Adatszerkezetek I. 1. előadás Adatszerkezetek I. 1. előadás Adatok jellemzői ismétlés 1. Azonosító Az a jelsorozat, amellyel hivatkozhatunk a tartalmára, amely által módosíthatjuk tartalmát. 2. Hozzáférési jog Adatokat módosítani,

Részletesebben

Verem Verem mutató 01

Verem Verem mutató 01 A számítástechnikában a verem (stack) egy speciális adatszerkezet, amiben csak kétféle művelet van. A berak (push) egy elemet a verembe rak, a kivesz (pop) egy elemet elvesz a verem tetejéről. Mindig az

Részletesebben

Gráfok bejárása. Szlávi Péter, Zsakó László: Gráfok II :17

Gráfok bejárása. Szlávi Péter, Zsakó László: Gráfok II :17 Gráfok 2. előadás Gráfok bejárása A gráf bejárása = minden elem feldolgozása Probléma: Lineáris elrendezésű sokaság (sorozat) bejárása könnyű, egyetlen ciklussal elvégezhető. Hálós struktúra bejárása nem

Részletesebben

Adatszerkezetek II. 1. előadás

Adatszerkezetek II. 1. előadás Adatszerkezetek II. 1. előadás Gráfok A gráf fogalma: Gráf(P,E): P pontok (csúcsok) és E P P élek halmaza Fogalmak: Irányított gráf : (p 1,p 2 ) E-ből nem következik, hogy (p 2,p 1 ) E Irányítatlan gráf

Részletesebben

Hatékonyság 1. előadás

Hatékonyság 1. előadás Hatékonyság 1. előadás Mi a hatékonyság Bevezetés A hatékonyság helye a programkészítés folyamatában: csak HELYES programra Erőforrásigény: a felhasználó és a fejlesztő szempontjából A hatékonyság mérése

Részletesebben

5. SOR. Üres: S Sorba: S E S Sorból: S S E Első: S E

5. SOR. Üres: S Sorba: S E S Sorból: S S E Első: S E 5. SOR A sor adatszerkezet is ismerős a mindennapokból, például a várakozási sornak számos előfordulásával van dolgunk, akár emberekről akár tárgyakról (pl. munkadarabokról) legyen szó. A sor adattípus

Részletesebben

Hatékonyság 2. előadás

Hatékonyság 2. előadás Hatékonyság 2. előadás Alapelv: a tárolt elemek száma vagy egy elemének mérete kevesebb legyen! Helyfoglalás=memória (kód+adat) + háttértár (kód+adat) 2.1 Sorozatok hosszcsökkentése 2.1.1 Sorozat kiküszöbölése

Részletesebben

A verem (stack) A verem egy olyan struktúra, aminek a tetejéről kivehetünk egy (vagy sorban több) elemet. A verem felhasználása

A verem (stack) A verem egy olyan struktúra, aminek a tetejéről kivehetünk egy (vagy sorban több) elemet. A verem felhasználása A verem (stack) A verem egy olyan struktúra, aminek a tetejére betehetünk egy új (vagy sorban több) elemet a tetejéről kivehetünk egy (vagy sorban több) elemet A verem felhasználása Függvény visszatérési

Részletesebben

Adatszerkezetek I. 4. előadás

Adatszerkezetek I. 4. előadás Adatszerkezetek I. 4. előadás Kupac A kupac olyan véges elemsokaság, amely rendelkezik az alábbi tulajdonságokkal: 1. Minden elemnek legfeljebb két rákövetkezője (leszármazottja) lehet. Azaz bináris fának

Részletesebben

4. VEREM. Üres: V Verembe: V E V Veremből: V V E Felső: V E

4. VEREM. Üres: V Verembe: V E V Veremből: V V E Felső: V E 4. VEREM A mindennapokban is találkozunk verem alapú tároló struktúrákkal. Legismertebb példa a névadó, a mezőgazdaságban használt verem. Az informatikában legismertebb veremalkalmazások az eljáráshívások

Részletesebben

Adatszerkezetek 1. Dr. Iványi Péter

Adatszerkezetek 1. Dr. Iványi Péter Adatszerkezetek 1. Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot kódoltan tároljuk

Részletesebben

Egyszerű programozási tételek

Egyszerű programozási tételek Egyszerű programozási tételek 2. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. szeptember 15. Sergyán (OE NIK) AAO 02 2011. szeptember 15.

Részletesebben

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter Adatszerkezetek Tömb, sor, verem Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot

Részletesebben

A félév során előkerülő témakörök

A félév során előkerülő témakörök A félév során előkerülő témakörök rekurzív algoritmusok rendező algoritmusok alapvető adattípusok, adatszerkezetek, és kapcsolódó algoritmusok dinamikus programozás mohó algoritmusok gráf algoritmusok

Részletesebben

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása

Információk. Ismétlés II. Ismétlés. Ismétlés III. A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin. Algoritmus. Algoritmus ábrázolása 1 Információk 2 A PROGRAMOZÁS ALAPJAI 2. Készítette: Vénné Meskó Katalin Elérhetőség mesko.katalin@tfk.kefo.hu Fogadóóra: szerda 9:50-10:35 Számonkérés időpontok Április 25. 9 00 Május 17. 9 00 Június

Részletesebben

Algoritmizálás, adatmodellezés 1. előadás

Algoritmizálás, adatmodellezés 1. előadás Algoritmizálás, adatmodellezés 1. előadás Algoritmus-leíró eszközök Folyamatábra Irányított gráf, amely csomópontokból és őket összekötő élekből áll, egyetlen induló és befejező éle van, az induló élből

Részletesebben

Adatszerkezetek I. 9. előadás

Adatszerkezetek I. 9. előadás Adatszerkezetek I. 9. előadás Nem bináris fák A fa rekurzív adatszerkezet jellemzői: sokaság: azonos típusú elemekből áll; akár 0 db elemet tartalmazhat; Üres: rekurzív nullelem, kitüntetett konstans;

Részletesebben

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Algoritmizálás. Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar Algoritmizálás Horváth Gyula Szegedi Tudományegyetem Természettudományi és Informatikai Kar horvath@inf.u-szeged.hu 0.1. Az algoritmikus tudás szintjei Ismeri (a megoldó algoritmust) Érti Le tudja pontosan

Részletesebben

Programozás I. Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu

Programozás I. Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Programozás I. 3. előadás Egyszerű programozási tételek Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Alkalmazott Informatikai Intézet 2015. szeptember

Részletesebben

Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)

Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések) Adatszerkezetek Nevezetes algoritmusok (Keresések, rendezések) Keresések A probléma általános megfogalmazása: Adott egy N elemű sorozat, keressük meg azt az elemet (határozzuk meg a helyét a sorozatban),

Részletesebben

Absztrakt adatstruktúrák A bináris fák

Absztrakt adatstruktúrák A bináris fák ciós lámpa a legnagyobb élettartamú és a legjobb hatásfokú fényforrásnak tekinthető, nyugodtan mondhatjuk, hogy a jövő fényforrása. Ezt bizonyítja az a tény, hogy ezen a területen a kutatások és a bejelentett

Részletesebben

Programozás I. Egyszerű programozási tételek. Sergyán Szabolcs

Programozás I. Egyszerű programozási tételek. Sergyán Szabolcs Programozás I. 3. előadás Egyszerű programozási tételek Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Alkalmazott Informatikai Intézet 2015. szeptember

Részletesebben

Fák 3. előadás. (Horváth Gyula anyagai felhasználásával)

Fák 3. előadás. (Horváth Gyula anyagai felhasználásával) Fák 3. előadás (Horváth Gyula anyagai felhasználásával) Fák Bináris fa "fordított" ábrázolása, a levelektől vissza: Ha a bináris fa elemei címezhetőek is (pl. sorszámuk van), akkor elképzelhető egy olyan

Részletesebben

Adatszerkezetek és algoritmusok

Adatszerkezetek és algoritmusok 2009. november 13. Ismétlés El z órai anyagok áttekintése Ismétlés Specikáció Típusok, kifejezések, m veletek, adatok ábrázolása, típusabsztakció Vezérlési szerkezetek Függvények, paraméterátadás, rekurziók

Részletesebben

Szövegfeldolgozás II.

Szövegfeldolgozás II. Szövegfeldolgozás II. Szövegfeldolgozási alapfeladatok Tömörítés: egy szöveget vagy szövegfájlt alakítsunk át úgy, hogy kevesebb helyet foglaljon (valamint alakítsuk vissza)! Keresés: egy szövegben vagy

Részletesebben

Rekurzió. Dr. Iványi Péter

Rekurzió. Dr. Iványi Péter Rekurzió Dr. Iványi Péter 1 Függvényhívás void f3(int a3) { printf( %d,a3); } void f2(int a2) { f3(a2); a2 = (a2+1); } void f1() { int a1 = 1; int b1; b1 = f2(a1); } 2 Függvényhívás void f3(int a3) { printf(

Részletesebben

Adatszerkezetek 1. előadás

Adatszerkezetek 1. előadás Adatszerkezetek 1. előadás Irodalom: Lipschutz: Adatszerkezetek Morvay, Sebők: Számítógépes adatkezelés Cormen, Leiserson, Rives, Stein: Új algoritmusok http://it.inf.unideb.hu/~halasz http://it.inf.unideb.hu/adatszerk

Részletesebben

15. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30.

15. tétel. Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30. 15. tétel Adatszerkezetek és algoritmusok vizsga Frissült: 2013. január 30. Edényrendezés Tegyük fel, hogy tudjuk, hogy a bemenő elemek (A[1..n] elemei) egy m elemű U halmazból kerülnek ki, pl. " A[i]-re

Részletesebben

HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport

HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport 10-es Keressünk egy egész számokat tartalmazó négyzetes mátrixban olyan oszlopot, ahol a főátló alatti elemek mind nullák! Megolda si terv: Specifika cio : A = (mat: Z n m,ind: N, l: L) Ef =(mat = mat`)

Részletesebben

Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism)

Programozás alapjai C nyelv 8. gyakorlat. Mutatók és címek (ism.) Indirekció (ism) Programozás alapjai C nyelv 8. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.07. -1- Mutatók és címek (ism.) Minden változó és függvény

Részletesebben

Mutatók és címek (ism.) Programozás alapjai C nyelv 8. gyakorlat. Indirekció (ism) Néhány dolog érthetőbb (ism.) Változók a memóriában

Mutatók és címek (ism.) Programozás alapjai C nyelv 8. gyakorlat. Indirekció (ism) Néhány dolog érthetőbb (ism.) Változók a memóriában Programozás alapjai C nyelv 8. gyakorlat Szeberényi mre BME T Programozás alapjai. (C nyelv, gyakorlat) BME-T Sz.. 2005.11.07. -1- Mutatók és címek (ism.) Minden változó és függvény

Részletesebben

Algoritmizálás és adatmodellezés tanítása 9. előadás

Algoritmizálás és adatmodellezés tanítása 9. előadás Algoritmizálás és adatmodellezés tanítása 9. előadás Szöveges típusok (ismétlés) karakter típus szöveg típus szövegfájl típus (input, illetve output szövegfájl) 2018. 01. 2/30 Karakterábrázolás fix kódhossz

Részletesebben

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Készítette: Gipsz Jakab Neptun-azonosító: ABC123 E-mail: gipszjakab@seholse.hu Kurzuskód: IT-13AAT1EG 1 A fenti

Részletesebben

Kupac adatszerkezet. A[i] bal fia A[2i] A[i] jobb fia A[2i + 1]

Kupac adatszerkezet. A[i] bal fia A[2i] A[i] jobb fia A[2i + 1] Kupac adatszerkezet A bináris kupac egy majdnem teljes bináris fa, amely minden szintjén teljesen kitöltött kivéve a legalacsonyabb szintet, ahol balról jobbra haladva egy adott csúcsig vannak elemek.

Részletesebben

Adatszerkezetek 2. Dr. Iványi Péter

Adatszerkezetek 2. Dr. Iványi Péter Adatszerkezetek 2. Dr. Iványi Péter 1 Hash tábla A bináris fáknál O(log n) a legjobb eset a keresésre. Ha valamilyen közvetlen címzést használunk, akkor akár O(1) is elérhető. A hash tábla a tömb általánosításaként

Részletesebben

Adatszerkezetek I. 8. előadás. (Horváth Gyula anyagai felhasználásával)

Adatszerkezetek I. 8. előadás. (Horváth Gyula anyagai felhasználásával) Adatszerkezetek I. 8. előadás (Horváth Gyula anyagai felhasználásával) Kereső- és rendezőfák Közös tulajdonságok: A gyökérelem (vagy kulcsértéke) nagyobb vagy egyenlő minden tőle balra levő elemnél. A

Részletesebben

Algoritmizálás és adatmodellezés tanítása 2. előadás

Algoritmizálás és adatmodellezés tanítása 2. előadás Algoritmizálás és adatmodellezés tanítása 2. előadás Tartalom Összegzés vektorra, mátrixra Megszámolás vektorra, mátrixra Maximum-kiválasztás vektorra, mátrixra Eldöntés vektorra, mátrixra Kiválasztás

Részletesebben

1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje

1. Alapfogalmak Algoritmus Számítási probléma Specifikáció Algoritmusok futási ideje 1. Alapfogalmak 1.1. Algoritmus Az algoritmus olyan elemi műveletekből kompozíciós szabályok szerint felépített összetett művelet, amelyet megadott feltételt teljesítő bemeneti adatra végrehajtva, a megkívánt

Részletesebben

Struktúra nélküli adatszerkezetek

Struktúra nélküli adatszerkezetek Struktúra nélküli adatszerkezetek Homogén adatszerkezetek (minden adatelem azonos típusú) osztályozása Struktúra nélküli (Nincs kapcsolat az adatelemek között.) Halmaz Multihalmaz Asszociatív 20:24 1 A

Részletesebben

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez

Pásztor Attila. Algoritmizálás és programozás tankönyv az emeltszintű érettségihez Pásztor Attila Algoritmizálás és programozás tankönyv az emeltszintű érettségihez 3. ADATTÍPUSOK...26 3.1. AZ ADATOK LEGFONTOSABB JELLEMZŐI:...26 3.2. ELEMI ADATTÍPUSOK...27 3.3. ÖSSZETETT ADATTÍPUSOK...28

Részletesebben

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 4. gyakorlat PLanG: 2011.10.04. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Fájlok

Részletesebben

Algoritmusok és adatszerkezetek I. 5. előadás

Algoritmusok és adatszerkezetek I. 5. előadás Algoritmusok és adatszerkezetek I. 5. előadás Táblázat A táblázat olyan halmazféleség, amelyben az elemeket kulcsértékkel azonosítjuk. A szokásos halmazműveletekből azonban csak néhányat definiálunk rá:

Részletesebben

Véges állapotú gépek (FSM) tervezése

Véges állapotú gépek (FSM) tervezése Véges állapotú gépek (FSM) tervezése F1. A 2. gyakorlaton foglalkoztunk a 3-mal vagy 5-tel osztható 4 bites számok felismerésével. Abban a feladatban a bemenet bitpárhuzamosan, azaz egy időben minden adatbit

Részletesebben

Pénzügyi algoritmusok

Pénzügyi algoritmusok Pénzügyi algoritmusok A C++ programozás alapjai Tömbök (3. rész) Konstansok Kivételkezelés Tömbök 3. Többdimenziós tömbök Többdimenziós tömbök int a; Többdimenziós tömbök int a[5]; Többdimenziós tömbök

Részletesebben

... fi. ... fk. 6. Fabejáró algoritmusok Rekurzív preorder bejárás (elsőfiú-testvér ábrázolásra)

... fi. ... fk. 6. Fabejáró algoritmusok Rekurzív preorder bejárás (elsőfiú-testvér ábrázolásra) 6. Fabejáró algoritmusok Fa bejárásán olyan algoritmust értünk, amelynek bemenete egy F fa és egy M művelet, és az algoritmus adott sorrendben pontosan egyszer végrehajtja az M műveletet a fa pontjaiban

Részletesebben

Gyakorló feladatok: Formális modellek, temporális logikák, modellellenőrzés. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Gyakorló feladatok: Formális modellek, temporális logikák, modellellenőrzés. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Gyakorló feladatok: Formális modellek, temporális logikák, modellellenőrzés Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Formális modellek használata és értelmezése Formális modellek

Részletesebben

A 2017/2018 tanévi Országos Középiskolai Tanulmányi Verseny döntő fordulójának feladatai. INFORMATIKA II. (programozás) kategória

A 2017/2018 tanévi Országos Középiskolai Tanulmányi Verseny döntő fordulójának feladatai. INFORMATIKA II. (programozás) kategória Oktatási Hivatal A 217/218 tanévi Országos Középiskolai Tanulmányi Verseny döntő fordulójának feladatai 1. feladat: Csatornák (24 pont) INFORMATIKA II. (programozás) kategória Egy város csomópontjait csatornahálózat

Részletesebben

PROGRAMOZÁS tantárgy. Gregorics Tibor egyetemi docens ELTE Informatikai Kar

PROGRAMOZÁS tantárgy. Gregorics Tibor egyetemi docens ELTE Informatikai Kar PROGRAMOZÁS tantárgy Gregorics Tibor egyetemi docens ELTE Informatikai Kar Követelmények A,C,E szakirány B szakirány Előfeltétel Prog. alapismeret Prog. alapismeret Diszkrét matematika I. Óraszám 2 ea

Részletesebben

Programozási segédlet

Programozási segédlet Programozási segédlet Programozási tételek Az alábbiakban leírtam néhány alap algoritmust, amit ismernie kell annak, aki programozásra adja a fejét. A lista korántsem teljes, ám ennyi elég kell legyen

Részletesebben

Táblázatok fontosabb műveletei 1

Táblázatok fontosabb műveletei 1 Táblázatok fontosabb műveletei 1 - - Soros táblázat procedure BESZÚR1(TÁBLA, újelem) - - beszúrás soros táblázatba - - a táblázatot egy rekordokat tartalmazó dinamikus vektorral reprezentáljuk - - a rekordok

Részletesebben

Matlab alapok. Baran Ágnes. Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15

Matlab alapok. Baran Ágnes. Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15 Matlab alapok Baran Ágnes Elágazások, függvények Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15 Logikai kifejezések =, ==, = (két mátrixra is alkalmazhatóak, ilyenkor elemenként történik

Részletesebben

6. LISTÁK ábra. A lista absztrakt adatszerkezet (ADS)

6. LISTÁK ábra. A lista absztrakt adatszerkezet (ADS) 6. LISTÁK Az előző fejezetekben megismerkedtünk a láncolt ábrázolással. Láttuk a verem és a sor, valamint előre tekintve a keresőfa pointeres megvalósításának a lehetőségét és előnyeit. A láncolt ábrázolással

Részletesebben

Zárthelyi mintapéldák. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Zárthelyi mintapéldák. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Zárthelyi mintapéldák Majzik István BME Méréstechnika és Információs Rendszerek Tanszék Elméleti kérdések Indokolja meg, hogy az A (X Stop F Start) kifejezés szintaktikailag helyes kifejezés-e CTL illetve

Részletesebben

Programozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs

Programozás I. 1. előadás: Algoritmusok alapjai. Sergyán Szabolcs Programozás I. 1. előadás: Algoritmusok alapjai Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Alkalmazott Informatikai Intézet 2015. szeptember 7. Sergyán

Részletesebben

Programozás I. Metódusok C#-ban Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu

Programozás I. Metódusok C#-ban Egyszerű programozási tételek. Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Programozás I. 3. előadás Tömbök a C#-ban Metódusok C#-ban Egyszerű programozási tételek Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar Szoftvertechnológia

Részletesebben

Láncolt Listák. Adat1 Adat2 Adat3 ø. Adat1 Adat2 ø Adat3

Láncolt Listák. Adat1 Adat2 Adat3 ø. Adat1 Adat2 ø Adat3 Láncolt Listák Adatszerkezetek Adatszerkezet: Az adatelemek egy olyan véges halmaza, amelyben az adatelemek között szerkezeti összefüggések vannak Megvalósítások: - Tömb, Láncolt lista, Fa, Kupac, Gráf,

Részletesebben

Bevezetés a programozásba. 5. Előadás: Tömbök

Bevezetés a programozásba. 5. Előadás: Tömbök Bevezetés a programozásba 5. Előadás: Tömbök ISMÉTLÉS Specifikáció Előfeltétel: milyen körülmények között követelünk helyes működést Utófeltétel: mit várunk a kimenettől, mi az összefüggés a kimenet és

Részletesebben

Rendezések. Összehasonlító rendezések

Rendezések. Összehasonlító rendezések Rendezések Összehasonlító rendezések Remdezés - Alapfeladat: Egy A nevű N elemű sorozat elemeinek nagyság szerinti sorrendbe rendezése - Feltételezzük: o A sorozat elemei olyanok, amelyekre a >, relációk

Részletesebben

Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése

Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése Dr. Kallós Gábor 2014 2015 1 Az Ordó jelölés Azt mondjuk, hogy az f(n) függvény eleme az Ordó(g(n)) halmaznak, ha van olyan c konstans (c

Részletesebben

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés. Szekvenciális fájlkezelés Fájlok használata

Bevezetés a programozásba I 4. gyakorlat. PLanG: Szekvenciális fájlkezelés. Szekvenciális fájlkezelés Fájlok használata Pázmány Péter Katolikus Egyetem Információs Technológiai Kar Bevezetés a programozásba I 4. gyakorlat PLanG: 2011.10.04. Giachetta Roberto groberto@inf.elte.hu http://people.inf.elte.hu/groberto Fájlok

Részletesebben

Programozási alapismeretek 1. előadás

Programozási alapismeretek 1. előadás Programozási alapismeretek 1. előadás Tartalom A problémamegoldás lépései programkészítés folyamata A specifikáció Az algoritmus Algoritmikus nyelvek struktogram A kódolás a fejlesztői környezet 2/33 A

Részletesebben

Programozási nyelvek Python

Programozási nyelvek Python Programozási nyelvek Python A nyelv története és jellemzői 2 A nyelv története Tervező Guido van Rossum (1956, Hollandia) Befolyásoló nyelvek ABC (pl. blokkok jelölése behúzással); Modula-3; C; C++; Unix

Részletesebben

Láncolt listák. Egyszerű, rendezett és speciális láncolt listák. Programozás II. előadás. Szénási Sándor

Láncolt listák. Egyszerű, rendezett és speciális láncolt listák. Programozás II. előadás.  Szénási Sándor Láncolt listák Egyszerű, rendezett és speciális láncolt listák előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Láncolt

Részletesebben

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás. Szénási Sándor.

B-fa. Felépítés, alapvető műveletek. Programozás II. előadás.  Szénási Sándor. B-fa Felépítés, alapvető műveletek előadás http://nik.uni-obuda.hu/prog2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar B-fa Felépítése Beszúrás művelete Törlés

Részletesebben

Összetett programozási tételek

Összetett programozási tételek Összetett programozási tételek 3. előadás Sergyán Szabolcs sergyan.szabolcs@nik.uni-obuda.hu Óbudai Egyetem Neumann János Informatikai Kar 2011. szeptember 19. Sergyán (OE NIK) AAO 03 2011. szeptember

Részletesebben

Rendezések. A rendezési probléma: Bemenet: Kimenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat

Rendezések. A rendezési probléma: Bemenet: Kimenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat 9. Előadás Rendezések A rendezési probléma: Bemenet: n számot tartalmazó (a 1,a 2,,a n ) sorozat Kimenet: a bemenő sorozat olyan (a 1, a 2,,a n ) permutációja, hogy a 1 a 2 a n 2 Rendezések Általánosabban:

Részletesebben

Programozás I gyakorlat

Programozás I gyakorlat Programozás I. - 2. gyakorlat Változók, kiiratás, bekérés Tar Péter 1 Pannon Egyetem M szaki Informatikai Kar Számítástudomány Alkalmazása Tanszék Utolsó frissítés: September 24, 2007 1 tar@dcs.vein.hu

Részletesebben

ELEMI PROGRAMOZÁSI TÉTELEK

ELEMI PROGRAMOZÁSI TÉTELEK ELEMI PROGRAMOZÁSI TÉTELEK 1. FELADATMEGOLDÁS PROGRAMOZÁSI TÉTELEKKEL 1.1 A programozási tétel fogalma A programozási tételek típusalgoritmusok, amelyek alkalmazásával garantáltan helyes megoldást adhatunk

Részletesebben

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1

Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Algoritmizálás és adatmodellezés tanítása beadandó feladat: Algtan1 tanári beadandó /99 1 Készítette: Gipsz Jakab Neptun-azonosító: ABC123 E-mail: gipszjakab@seholse.hu Kurzuskód: IT-13AAT1EG Gyakorlatvezető

Részletesebben

Web-programozó Web-programozó

Web-programozó Web-programozó Az Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről szóló 133/2010. (IV. 22.) Korm. rendelet alapján. Szakképesítés, szakképesítés-elágazás, rész-szakképesítés,

Részletesebben

A 2008/2009 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása. INFORMATIKÁBÓL II. (programozás) kategóriában

A 2008/2009 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása. INFORMATIKÁBÓL II. (programozás) kategóriában Oktatási Hivatal A 2008/2009 tanévi Országos Középiskolai Tanulmányi Verseny első forduló feladatainak megoldása INFORMATIKÁBÓL II. (programozás) kategóriában Kérjük a tisztelt tanár kollégákat, hogy a

Részletesebben

Haladó rendezések. PPT 2007/2008 tavasz.

Haladó rendezések. PPT 2007/2008 tavasz. Haladó rendezések szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Alapvető összehasonlító rendezések Shell rendezés Kupacrendezés Leszámláló rendezés Radix rendezés Edényrendezés

Részletesebben

Rekurzió. (Horváth Gyula és Szlávi Péter előadásai felhasználásával)

Rekurzió. (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Rekurzió (Horváth Gyula és Szlávi Péter előadásai felhasználásával) Rekurzió és iteráció Balrekurzió Ha az eljárás első utasításaként szerepel a rekurzív hívás, akkor a rekurzió lényegében az első nem

Részletesebben

Algoritmizálás és adatmodellezés tanítása 6. előadás

Algoritmizálás és adatmodellezés tanítása 6. előadás Algoritmizálás és adatmodellezés tanítása 6. előadás Összetett típusok 1. Rekord 2. Halmaz (+multihalmaz, intervallumhalmaz) 3. Tömb (vektor, mátrix) 4. Szekvenciális file (input, output) Pap Gáborné,

Részletesebben

Előfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból

Előfeltétel: legalább elégséges jegy Diszkrét matematika II. (GEMAK122B) tárgyból ÜTEMTERV Programozás-elmélet c. tárgyhoz (GEMAK233B, GEMAK233-B) BSc gazdaságinformatikus, programtervező informatikus alapszakok számára Óraszám: heti 2+0, (aláírás+kollokvium, 3 kredit) 2019/20-es tanév

Részletesebben

Szekvenciális hálózatok és automaták

Szekvenciális hálózatok és automaták Szekvenciális hálózatok a kombinációs hálózatokból jöhetnek létre tárolási tulajdonságok hozzáadásával. A tárolás megvalósítása történhet a kapcsolás logikáját képező kombinációs hálózat kimeneteinek visszacsatolásával

Részletesebben

Véges állapotú gépek (FSM) tervezése

Véges állapotú gépek (FSM) tervezése Véges állapotú gépek (FSM) tervezése F1. Tervezzünk egy soros mintafelismerőt, ami a bemenetére ciklikusan, sorosan érkező 4 bites számok közül felismeri azokat, amelyek 3-mal vagy 5-tel oszthatók. A fenti

Részletesebben

Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19.

Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19. Készítette: Nagy Tibor István Felhasznált irodalom: Kotsis Domokos: OOP diasor Zsakó L., Szlávi P.: Mikrológia 19. Programkészítés Megrendelői igények begyűjtése Megoldás megtervezése (algoritmuskészítés)

Részletesebben

Tuesday, March 6, 12. Hasító táblázatok

Tuesday, March 6, 12. Hasító táblázatok Hasító táblázatok Halmaz adattípus U (kulcsuniverzum) K (aktuális kulcsok) Függvény adattípus U (univerzum) ÉT (értelmezési tartomány) ÉK (érték készlet) Milyen az univerzum? Közvetlen címzésű táblázatok

Részletesebben

Amortizációs költségelemzés

Amortizációs költségelemzés Amortizációs költségelemzés Amennyiben műveleteknek egy M 1,...,M m sorozatának a futási idejét akarjuk meghatározni, akkor egy lehetőség, hogy külön-külön minden egyes művelet futási idejét kifejezzük

Részletesebben

Algoritmusok és adatszerkezetek 2.

Algoritmusok és adatszerkezetek 2. Algoritmusok és adatszerkezetek 2. Varga Balázs gyakorlata alapján Készítette: Nagy Krisztián 1. gyakorlat Nyílt címzéses hash-elés A nyílt címzésű hash táblákban a láncolással ellentétben egy indexen

Részletesebben

Java II. I A Java programozási nyelv alapelemei

Java II. I A Java programozási nyelv alapelemei Java2 / 1 Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2009. 02. 09. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve

Részletesebben

Adatszerkezetek I. 6. előadás

Adatszerkezetek I. 6. előadás Adatszerkezetek I. 6. előadás Táblázat A táblázat olyan halmazféleség, amelyben az elemeket kulcsértékkel azonosítjuk. A szokásos halmazműveletekből azonban csak néhányat definiálunk rá: Üres: Táblázat

Részletesebben

Java II. I A Java programozási nyelv alapelemei

Java II. I A Java programozási nyelv alapelemei Java II. I A Java programozási nyelv alapelemei Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 02. 19. Java II.: Alapelemek JAVA2 / 1 A Java formalizmusa A C, illetve az annak

Részletesebben

1. Jelölje meg az összes igaz állítást a következők közül!

1. Jelölje meg az összes igaz állítást a következők közül! 1. Jelölje meg az összes igaz állítást a következők közül! a) A while ciklusban a feltétel teljesülése esetén végrehajtódik a ciklusmag. b) A do while ciklusban a ciklusmag után egy kilépési feltétel van.

Részletesebben

Láncolt listák Témakörök. Lista alapfogalmak

Láncolt listák Témakörök. Lista alapfogalmak Láncolt listák szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Lista alapfogalmai Egyirányú egyszerű láncolt lista Egyirányú rendezett láncolt lista Speciális láncolt listák Témakörök

Részletesebben

Algoritmizálás, adatmodellezés tanítása 1. előadás

Algoritmizálás, adatmodellezés tanítása 1. előadás Algoritmizálás, adatmodellezés 1. előadás Az algoritmus fogalma végrehajtható (van hozzá végre-hajtó) lépésenként hajtható végre a lépések maguk is algoritmusok pontosan definiált, adott végre-hajtási

Részletesebben

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

Bánsághi Anna 2014 Bánsághi Anna 1 of 68 IMPERATÍV PROGRAMOZÁS Bánsághi Anna anna.bansaghi@mamikon.net 3. ELŐADÁS - PROGRAMOZÁSI TÉTELEK 2014 Bánsághi Anna 1 of 68 TEMATIKA I. ALAPFOGALMAK, TUDOMÁNYTÖRTÉNET II. IMPERATÍV PROGRAMOZÁS Imperatív

Részletesebben