Lista típuskonstrukció

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

Download "Lista típuskonstrukció"

Átírás

1 Lista típuskonstrukció Szlávi PéterP ELTE Informatika Szakmódszertani Csoport Copyright, 1999 Szlávi Péter Tartalomjegyzék 1 A lista algebrai specifikációja 1.1 Lista-mveletek 1.2 Lista-axiómák 2 A lista típuskonstrukció specifikációja 2.1 A lista exportmodulja 2.2 A lista megvalósítási moduljai 3 Alkalmazási példák 3.1 Kiválogatás tétel újrafogalmazása listára 3.2 Összefuttatás tétel újrafogalmazása listára 3.3 Beszúrásos rendezés Programozásmódszertan 2 Lista típuskonstrukció 1

2 1 A lista algebrai specifikáci ciója 1.1 Lista-mveletek Típus Lista(Elem): Asszociált mveletek: Üres: Lista Üres?(Lista): Logikai rték(lista): Elem U {NemDef} ElemMódos dosít(lista,elem): Lista U {NemDef} Els5re(Lista): Lista U {NemDef} Következ5re(Lista): Lista U {NemDef} BeszúrM rmögé(lista,elem): Lista U {NemDef} BeszúrElej relejére(lista,elem): re(lista,elem): Lista U {NemDef} Programozásmódszertan Lista-mveletek (folytatás) Kihagy(Lista): Lista U {NemDef} UtolsóE?(Lista): Logikai U {NemDef} Kiegész szít) mveletek: BeszúrEl relé(lista,elem): Lista U {NemDef} ElemSzám(Lista): m(lista): Egész A kétirk tirányú lista további mveletei: El5z5re(Lista): Lista U {NemDef} Utolsóra(Lista): Lista U {NemDef} BeszúrEl relé(lista,elem): Lista U {NemDef} Els5E?(Lista): E?(Lista): Logikai U {NemDef} Programozásmódszertan 4 Lista típuskonstrukció 2

3 1.1 Lista-mveletek (folytatás) A ciklikus lista: olyan egy- vagy kétirányú lista,, amelynek az utolsó elemét t az els5 követi, az els5t t pedig az utolsó el5zi meg. Így kevesebb mveletre van szüks kségg a megvalósításához. A gyr: olyan ciklikus lista,, amelynek nincs kitüntetett els5 eleme. Programozásmódszertan Lista-mveletek (folytatás) További lehetséges mveletek: Els5(Lista): (Lista Elem) U {NemDef} Következ5(Lista): (Lista Elem) U {NemDef} Utolsó(Lista): (Lista Elem) U {NemDef} El5z5(Lista): (Lista Elem) U {NemDef} Egymásut sután(lista,lista): Lista l,l,l,l :Lista(Elem) e,f:elem h,h :Eg :Egész Axiómák Programozásmódszertan 6 Lista típuskonstrukció 3

4 1.2 Lista-axi axiómák 1 o Az Üres lista üres. l=üres Üres?(l) 2 o Üres listának nincs eleme. Üres?(l) ElemSzám(l)=0 m(l)=0 3 o Az üres listának nincs aktuális, els5,,... utolsó eleme. rték( k(üres)=nemdef Els)E?( E?(Üres)=NemDef Els)(Üres)=NemDef Következ)(Üres)=NemDef El)z)(Üres)=NemDef Utolsó(Üres)=NemDef UtolsóE?( E?(Üres)=NemDef 4a o Nincs els5t t megel5z5 éss nincs utolsót t követk vet5 eleme a listának. El)z)(Els (Els)re(l))=NemDef Következ)(Utolsóra(l))=NemDef Programozásmódszertan Lista-axi axiómák (folytatás) 4b o A ciklikus listában az els5t t megel5z5 az utolsó,, az utolsót t követk vet5 pedig az els5. El)z)(Els (Els)re(l))=Utolsó(l) Következ)(Utolsóra(l))=Els)(l) 5 o A lista Utolsóra mvelettel m kiválasztott eleme az ElemSzám-adik, az 1. elemét t az Els5re mvelet m választja v ki. UtolsóE?(Utols E?(Utolsóra(l)) Els)E?(Els E?(Els)re(l)) h=elemszám(l) m(l)-1 Következ)re h (Els)re(l))=Utols re(l))=utolsóra(l) ra(l) 0h<ElemSzám(l) m(l)-1 nem UtolsóE?(K E?(Következ)re h (Els)re(l))) 0<hElemSzám(l) m(l)-1 nem Els)E?(K E?(Következ)re h (Els)re(l))) Programozásmódszertan 8 Lista típuskonstrukció 4

5 1.2 Lista-axi axiómák (folytatás) 6 o A BeszúrM rmögé mvelet b5víti b a listát t az adott elemmel. Az új elem az aktuális mögé kerül. Üres listába els5ként kerül l be az új elem. Az újj válik v aktuáliss lissá.. Ha nincs aktuális elem, akkor a mvelet eredménye nem definiált. f= rték(l) l'=beszúrmögé(l,e): ElemSzám(l')=ElemSz m(l')=elemszám(l)+1 m(l)+1 rték(l')=e El)z)(l'). (l').elem=f Üres?(l) ElemSzám(Besz m(beszúrmögé(l,e))=1 rték(beszúrmögé(l,e))=e nem Üres?(l) rték(l)=nemdef BeszúrM rmögé(l,e)=nemdef A BeszúrEl relé mvelet ennek analógi giájára fogalmazható meg. Programozásmódszertan Lista-axi axiómák (folytatás) 7 o Kihagyni az aktuális elemet lehet, az aktuális a következk vetkez5 lesz. Ha nincs az aktuális elem kijelölve, lve, akkor nem lehet kihagyni sem. ék(l) l'=kihagy(l): ElemSzám(l')=ElemSz m(l')=elemszám(l) m(l)-1 (Üres?(l ) rték(l')=következ)(l).elem) rték(l)=nemdef Kihagy(l)=NemDef Állítás: : ha az utolsó az aktuális,, akkor a kihagyás s után n nem definiált lesz az aktuális. UtolsóE?(l) rték(kihagy(l))= k(kihagy(l))=nemdef Biz.: UtolsóE?(l) ék(l) 7 o l =Kihagy(l) Kihagy(l):(Üres?(l ) rték(l')=következ)(l).elem) (1) Üres?(l ) 3 o rték(kihagy(l))= k(kihagy(l))=nemdef (2) rték(l')=következ)(l).elem 9 o 4a o ék(l') k(l')=nemdef Programozásmódszertan 10 Lista típuskonstrukció 5

6 1.2 Lista-axi axiómák (folytatás) 8 o Kétt egymásut sutánn illesztett lista listát t alkot. Elemei az eredeti kett5 elemei lesznek, az eredeti sorrendben. h=elemszám(l) m(l) h'=elemszám(l') m(l') l"=egymásut sután(l,l') k [0,h): rték(következ)re k (Els)re(l")))= = rték(következ)re k (Els)re(l))) k [0,h'): rték(következ)re k+h (Els)re(l")))= = rték(következ)re k (Els)re(l'))) Programozásmódszertan Lista-axi axiómák (folytatás) 9 o A következk vetkez5 elem az, amelyet a következk vetkez5re lépésl s után n aktuá- lisként érzékelünk, az el5z5 az, amelyet az el5z5re lépésl s után aktuálisk lisként érzékelünk,... rték(l) k(l)nemdef Következ)(l) (l).elem=ék(következ)re(l)) El)z)(l) (l).elem = rték(el)z)re(l)) Els)(l) (l).elem = rték(els)re(l)) Utolsó(l) (l).elem = rték(utolsóra(l)) Programozásmódszertan 12 Lista típuskonstrukció 6

7 2 A lista típuskonstrukcit puskonstrukció specifikáci ciója 2.1 A lista exportmodulja ExportModul Lista(Típus TElem): Eljárás Üres( res(változó l:lista) Üres?( res?(konstans l:lista): Logikai rték( k(változó l:lista): TElem Eljárás ElemMódos dosít( t(változó l:lista, Konstans e:telem) Eljárás Els5re( re(változó l:lista) Eljárás Következ5re( re(változó l:lista) Meg kell gondolni az operátorok ef/uf-ét az axiómák k alapján! n! Programozásmódszertan A lista exportmodulja (folytatás) Eljárás BeszúrM rmögé(változó l:lista, Konstans e:telem) Eljárás BeszúrElej relejére( re(változó l:lista, Konstans e:telem) Eljárás Kihagy(Változ ltozó l:lista) UtolsóE?( E?(Változó l:lista): Logikai ElemSzám( m(konstans l:lista): Egész Eljárás BeszúrEl relé(változó l:lista, Konstans e:telem) Hibás?( s?(változó l:lista): Logikai Programozásmódszertan 14 Lista típuskonstrukció 7

8 2.1 A lista exportmodulja (folytatás) Infix Operátor Azonos?(Konstans l1,l2:lista):logikai Logikai l1=l2 Infix Operátor LegyenEgyenl5(Változ ltozó l1:lista, Konstans l2:lista) l1:=l2 Operátor Ki(Konstans Konstans l:lista) Ki: l Operáto tor Be(Változ ltozó l:lista) Be: l Modul vége. v Programozásmódszertan A lista exportmodulja (folytatás) A kétirk tirányú lista további mveletei: m Eljárás Utolsóra( ra(változó l:lista) Eljárás El5z5re( re(változó l:lista) Els5E?( E?(Változó l:lista): Logikai Programozásmódszertan 16 Lista típuskonstrukció 8

9 2 A lista típuskonstrukcit puskonstrukció specifikáci ciója 2.2. A lista megvalósítási si moduljai Láncolt L ncolt ábrázolás Modul Lista(Típus TElem): Reprezentáci ció Típus ListaElem=Rekord Rekord(érték: TElem köv: ListaElem'Mutat 'Mutató) Változó fej,akt: ListaElem'Mutat 'Mutató hossz: : Egész hiba: Logikai Programozásmódszertan Láncolt L ncolt ábrázolás (folytatás) Implementáci ció Eljárás Üres( res(változó l:lista): fej:=sehova; akt:=sehova; hossz:=0 hiba:=hamis Eljárás vége. Üres?( res?(konstans l:lista): Logikai Üres?:=hossz=0 vége. ElemSzám( m(konstans l: Lista): Egész ElemSzám:=hossz m:=hossz vége. Programozásmódszertan 18 Lista típuskonstrukció 9

10 2.2.1 Láncolt L ábrázolás (folytatás) rték( k(változó l:lista): TElem Ha aktsehova akkor rték:=listaelem(akt). k:=listaelem(akt).érték A függvf vége. értéke Eljárás Els5re( re(változó l:lista): Ha Üres(l) akkor akt:=fej Eljárás vége. Eljárás Következ5re(Változó l:lista): Ha aktsehova akkor akt:=listaelem(akt).köv Eljárás vége. A függvény értéke NemDef! Programozásmódszertan Láncolt L ncolt ábrázolás (folytatás) Eljárás BeszúrM rmögé(változó l:lista, Konstans e:telem): Változó új j : ListaElem'Mutat 'Mutató gazás fej=sehova esetén BeszúrElej relejére(l,e) re(l,e) aktsehova esetén Lefoglal(új, ListaElem(e, ListaElem(akt).köv)) hiba:=új=sehova Ha nem hiba akkor ListaElem(akt).köv:= v:=új akt:=új; hossz:+1 gazáss végev egyéb b esetben gazáss végev Eljárás vége. Programozásmódszertan 20 Lista típuskonstrukció 10

11 2.2.1 Láncolt L ábrázolás (folytatás) Eljárás BeszúrElej relejére( re(változó l:lista, Konstans e:telem): Változó új: ListaElem'Mutat 'Mutató új:=fej; Lefoglal(fej,ListaElem(e,új)) j)) hiba:=fej=sehova Ha nem hiba akkor akt:=fej; hossz:+1 fej:=új Eljárás vége. Eljárás Kihagy(Változ ltozó l:lista): Változó el: ListaElem'Mutat 'Mutató Ha aktsehova akkor Ha akt=fej akkor [els5 elem] fej:=listaelem(akt).köv Felszabadít(akt); akt:=fej Programozásmódszertan Láncolt L ncolt ábrázolás (folytatás) [nem aza els5 elem] [el5z5 elem megkeresése:] se:] el:=fej Ciklus amíg ListaElem(el).kövakt akt el:=listaelem(el).köv Ciklus végev ListaElem(el).köv:=ListaElem(akt).k v:=listaelem(akt).köv Felszabadít(akt); akt:=listaelem(el).köv gazáss végev hossz:-1 [nincs aktuális elem] gazáss végev Eljárás vége. Programozásmódszertan 22 Lista típuskonstrukció 11

12 2.2.1 Láncolt L ábrázolás (folytatás) UtolsóE?( E?(Változó l:lista): Logikai Ha aktsehova akkor UtolsóE?:=ListaElem(akt).k E?:=ListaElem(akt).köv=sehova vége. Hibás?( s?(változó l:lista): Logikai Hibás?:=hiba; hiba:=hamis vége. Infix Operátor Azonos?(Konstans l1,l2:lista):logikai Logikai l1=l2 Operátor vége. v Programozásmódszertan Láncolt L ncolt ábrázolás (folytatás) Infix Operátor LegyenEgyenl5(Változ ltozó l1:lista, Konstans l2:lista): l1:=l2 Operátor vége. v Operátor Ki(Konstans Konstans l:lista): Ki: l Operátor vége. v Operáto tor Be(Változ ltozó l:lista): Be: l Operátor vége. v Inicializálás [minden lista-deklar deklarációkor végrehajtandv grehajtandó] fej:=sehova; akt:=sehova; hossz:=0; hiba:=hamis Modul vége. v Programozásmódszertan 24 Lista típuskonstrukció 12

13 2 A lista típuskonstrukcit puskonstrukció specifikáci ciója 2.2. A lista meglósítási si moduljai Folytonos ábrázolás Modul Lista(Típus TElem): Reprezentáci ció Típus ListaElemek=Tömb mb(1..maxszám: TElem) Változó le: ListaElemek akt,hossz: 0..MaxSzám+1 hiba: Logikai Programozásmódszertan 25 Kényelmességb$l; l; l. l. KKövetkez$re, El$z$re Folytonos ábrázolás (folytatás) Implementáci ció Eljárás Üres( res(változó l:lista): akt:=0; hossz:=0; hiba:=hamis Eljárás vége. Üres?( res?(konstans l:lista): Logikai Üres?:=hossz=0 vége. ElemSzám( m(konstans l: Lista): Egész ElemSzám:=hossz m:=hossz vége. v rték( k(változó l:lista): TElem Ha akt [1..hossz] akkor rték:=le(akt) vége. v A f Programozásmódszertan 26 A függvény értéke NemDef! Lista típuskonstrukció 13

14 2.2.2 Folytonos ábrázolás (folytatás) Eljárás Els5re( re(változó l:lista): Ha hossz=0 akkor akt:=1 Eljárás s vége. v Eljárás Következ5re( re(változó l:lista): Ha akt [1..hossz] akkor akt:+1 Eljárás s vége. v Eljárás El5z5re( re(változó l:lista): Ha akt [1..hossz] akkor akt:-1 Eljárás s vége. v Programozásmódszertan Folytonos ábrázolás (folytatás) Eljárás Utolsóra( ra(változó l:lista): Ha hossz=0 akkor akt:=hossz Eljárás s vége. v Eljárás BeszúrM rmögé(változó l:lista, Konstans e:telem): Változó i:1..maxszám gazás hossz=0 esetén le(1):=e; akt:=1; hossz:=1 akt=hossz és hossz<maxszám esetén akt:+1; le(akt):=e; hossz:+1 Programozásmódszertan 28 Lista típuskonstrukció 14

15 2.2.2 Folytonos ábrázolás (folytatás)... akt [1..hossz-1] 1] és hossz<maxszám esetén akt:+1 Ciklus i=hossz-tól akt-ig -1-esével le(i+1):=le(i) Ciklus végev le(akt):=e; hossz:+1 egyéb esetben gazáss végev Eljárás s vége. v Programozásmódszertan Folytonos ábrázolás (folytatás) Eljárás Kihagy(Változ ltozó l:lista): Változó i :1..MaxSzám Ha akt [1..hossz] akkor Ciklus i=akt-tól hossz-1-ig le(i):=le(i+1) Ciklus végev hossz:-1 gazáss végev Eljárás s vége. v UtolsóE?( E?(Változó l:lista): Logikai Ha akt [1..hossz] akkor UtolsóE?:=akt=hossz vége. v Programozásmódszertan 30 Lista típuskonstrukció 15

16 2.2.2 Folytonos ábrázolás (folytatás) Els5E?( E?(Változó l:lista): Logikai Ha akt [1..hossz] akkor Els5E?:=akt=1 E?:=akt=1 A függvf vége. v értéke Hibás?( s?(változó l:lista): Logikai Hibás?:=hiba; hiba:=hamis vége. v Infix Operátor Azonos?(Konstans l1,l2:lista):logikai Logikai l1=l2 Operátor vége. A függvény értéke NemDef! Programozásmódszertan Folytonos ábrázolás (folytatás) Infix Operátor LegyenEgyenl5(Változ ltozó l1:lista, Konstans l2:lista): l1:=l2 Operátor vége. v Operátor Ki(Konstans Konstans l:lista): Ki: l Operátor vége. v Operáto tor Be(Változ ltozó l:lista): Be: l Operátor vége. v Inicializálás akt:=0; hossz:=0; hiba:=hamis Modul vége. v Programozásmódszertan 32 Lista típuskonstrukció 16

17 3 Alkalmazási példp ldák 3.1 Kiválogatás tétel újrafogalmazása listára 3.2 Összefuttatás tétel újrafogalmazása listára 3.3 Beszúrásos rendezés Programozásmódszertan Kiválogat logatás Típus TLista=Lista( =Lista(TElem) ) [a rövidsr vidségg kedvéé éért] Ttul(Konstans e:telem): Logikai egy TElem típust pusú e adatra vonatkozó predikátum tum vége. v Eljárás Kiválogat logatás( s(konstans l:tl TLista, Változó t1:tl TLista) ista): Üres(tl); Els5re(l) [a tl-lel lel szinkron száml mláló nem kell!] Ciklus amíg g nem UtolsóE?(l) Ha Ttul( rték(l)) akkor BeszúrM rmögé(tl,ék(l)) gazáss végev Következ5re(l) Elemfeldolgozás Ciklus végev az utolsóig. Ha Ttul( rték(l)) akkor Az utolsó elem BeszúrM rmögé(tl,ék(l)) feldolgozása Eljárás s vége. v Programozásmódszertan 34 Lista típuskonstrukció 17

18 3.2 Összefuttatás Részben megvalósítási si szinten (láncoltan) fogalmazzuk meg; x éss y a végénv n törlt rl)dik! Eljárás Összefuttatás( s(változó x,y,z:tlista): Üres(z); Elejére(x); Elejére(y) Ha rték(x) k(x)ék(y) akkor z.fej:=x.fej; z.akt:=z.fej; KövetkezK vetkez5re(x) z.fej:=y.fej; z.akt:=z.fej; KövetkezK vetkez5re(y) gazáss végev Ciklus amíg x.aktsehova és y.aktsehova gazás rték(x)<ék(y) esetén ListaElem(z.akt).köv:=x.akt; z.akt:=x.akt Következ5re(x) Programozásmódszertan Összefuttatás (folytatás)... rték(x)=ék(y) esetén ListaElem(z.akt).köv:=x.akt; z.akt:=x.akt Következ5re(x); KövetkezK vetkez5re(y) rték(x)>ék(y) esetén ListaElem(z.akt).köv:=y.akt; z.akt:=y.akt Következ5re(y) gazáss végev Ciklus végev Ha x.aktsehova akkor ListaElem(z.akt).köv:=x.akt Ha y.aktsehova akkor ListaElem(z.akt).köv:=y.akt Üres(x); Üres(y) Eljárás s vége. v Programozásmódszertan 36 Lista típuskonstrukció 18

19 3.3 Beszúrásos sos rendezés Típus TRendezend5=Tömb(1..Max: (1..Max:TElem) TRendezett= Rendezett=Lista(TElem) [növekv vekv5en] en] Eljárás Rendezés(Konstans t:trendezend Rendezend5, Változó l:trendezett) Rendezett): Változó i:egész Üres(l) Ciklus i=1-t4l N-ig Els5re(l); e:=t(i) Ciklus amíg nem UtolsóE?(l) és e> rték(l) Következ5re(l) Ciklus végev Ha e> rték(l) akkor BeszúrM rmögé(l,e) BeszúrEl relé(l,e) Ciklus végev Eljárás s vége. v Programozásmódszertan 37 Megjegyzés -- Változó A Változó -ság oka: valamilyen hiba lehet5sége fönnf nnáll (üres( a lista, vagy nincs kijelölt lt aktuális elem), s ennek visszajelzésére a hiba mez5 változhat. Programozásmódszertan 38 Lista típuskonstrukció 19

20 Megjegyzés -- Lista x Lista a függvf ggvény értékkészletében: mivel a m<velet m elvégz gzése során, bal kézr5l olyan --a a lista állapotátt meg- határoz rozó-- jellemz5 (is) megváltozhat (pl. az akt- vagy a hiba-mez mez5,, amely els5 látásra nem várhatv rható. Programozásmódszertan 39 Megjegyzés --.Lista/.Elem Az algebrai leírásban a nem aktuális elem értékétt visszaadó függvények (El5z5, Következ5,, Els5,, Utolsó) összetett értékének elemrész szére a '.Elem'.Elem' mez5szelektorral hivatkozunk, a listarész szére '.Lista'-val. Programozásmódszertan 40 Lista típuskonstrukció 20

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

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

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 TANTÁRGY, 1. FÉLÉV 2. ELŐADÁS 2009 (VÁZLAT)

ADATSZERKEZETEK TANTÁRGY, 1. FÉLÉV 2. ELŐADÁS 2009 (VÁZLAT) ADATSZERKEZETEK TANTÁRGY, 1. FÉLÉV 2. ELŐADÁS 2009 (VÁZLAT) 1. MODULTESZT Azt vizsgáljuk, miként lehetne meggyőződni egy típus megvalósításának helyességéről. Erre ugyan van mód formális, matematikai eszközökkel,

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

PROGRAMOZÁSMÓDSZERTAN 2. ELADÁS 2005 (VÁZLAT)

PROGRAMOZÁSMÓDSZERTAN 2. ELADÁS 2005 (VÁZLAT) PROGRAMOZÁSMÓDSZERTAN 2. ELADÁS 2005 (VÁZLAT) 1. A MODUL MINT A TÍPUSMEGVALÓSÍTÁS KERETE 1.1 Mi a típus? Amit már tudunk statikus kellékek Értékhalmaz Mveletgarnitúra Miket kell megadni ahhoz, hogy mondhassuk:

Részletesebben

Programozási tételek általánosítása 2. Szlávi Péter 2015

Programozási tételek általánosítása 2. Szlávi Péter 2015 Programozási tételek általánosítása 2. Szlávi Péter szlavip@elte.hu 2015 Tartalom 1. Az általánosítás lehetőségei a) Sorozatok A Tömb-típuskonstrukcó b) Sorozatok A tömb indexmentesítése c) A Tulajdonság-függvények

Részletesebben

Egyirányban láncolt lista

Egyirányban láncolt lista Egyirányban láncolt lista A tárhely (listaelem) az adatelem értékén kívül egy mutatót tartalmaz, amely a következő listaelem címét tartalmazza. A láncolt lista első elemének címét egy, a láncszerkezeten

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

Láncolt lista. az itt adott nevet csak a struct deklaráción belül használjuk

Láncolt lista. az itt adott nevet csak a struct deklaráción belül használjuk Láncolt lista int szam char szoveg[10] következő elemre mutató pointer int szam char szoveg[10] következő elemre mutató pointer elem elem elem int szam char szoveg[10] következő elemre mutató pointer A

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

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

Programozás I. - 11. gyakorlat

Programozás I. - 11. gyakorlat Programozás I. - 11. gyakorlat Struktúrák, gyakorlás Tar Péter 1 Pannon Egyetem M szaki Informatikai Kar Rendszer- és Számítástudományi Tanszék Utolsó frissítés: November 16, 2009 1 tar@dcs.vein.hu Tar

Részletesebben

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

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

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

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

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

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

INFORMATIKA javítókulcs 2016

INFORMATIKA javítókulcs 2016 INFORMATIKA javítókulcs 2016 ELMÉLETI TÉTEL: Járd körbe a tömb fogalmát (Pascal vagy C/C++): definíció, egy-, két-, több-dimenziós tömbök, kezdőértékadás definíciókor, tömb típusú paraméterek átadása alprogramoknak.

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

Láncolt listák. PPT 2007/2008 tavasz.

Láncolt listák. PPT 2007/2008 tavasz. Láncolt listák szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Láncolt listák elvi felépítése Egyirányú egyszerű láncolt lista Egyirányú rendezett láncolt lista Láncolt

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

Kiterjesztések sek szemantikája

Kiterjesztések sek szemantikája Kiterjesztések sek szemantikája Példa D Integer = {..., -1,0,1,... }; D Boolean = { true, false } D T1... T n T = D T 1... D Tn D T Az összes függvf ggvény halmaza, amelyek a D T1,..., D Tn halmazokból

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

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. február 18. Minimum és maximumkeresés u s i n g n a m e s p a c e s t d ; i n t main ( ) { c o u t

Részletesebben

Adatszerkezetek és algoritmusok

Adatszerkezetek és algoritmusok 2010. január 8. Bevezet El z órák anyagainak áttekintése Ismétlés Adatszerkezetek osztályozása Sor, Verem, Lengyelforma Statikus, tömbös reprezentáció Dinamikus, láncolt reprezentáció Láncolt lista Lassú

Részletesebben

C++ programozási nyelv Konstruktorok-destruktorok

C++ programozási nyelv Konstruktorok-destruktorok C++ programozási nyelv Konstruktorok-destruktorok Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. szeptember A C++ programozási nyelv Soós Sándor 1/20 Tartalomjegyzék

Részletesebben

A lista eleme. mutató rész. adat rész. Listaelem létrehozása. Node Deklarálás. Létrehozás. Az elemet nekünk kell bef zni a listába

A lista eleme. mutató rész. adat rész. Listaelem létrehozása. Node Deklarálás. Létrehozás. Az elemet nekünk kell bef zni a listába A lista eleme 0 adat rész mutató rész Listaelem létrehozása p: Node 0 0 3 0 Az elemet nekünk kell bef zni a listába Deklarálás struct Node { int int value; Node* next; next; adattagok Létrehozás Node*

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

A C programozási nyelv I. Bevezetés

A C programozási nyelv I. Bevezetés A C programozási nyelv I. Bevezetés Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv I. (bevezetés) CBEV1 / 1 A C nyelv története Dennis M. Ritchie AT&T Lab., 1972 rendszerprogramozás,

Részletesebben

az Excel for Windows programban

az Excel for Windows programban az Excel for Windows táblázatkezelőblázatkezel programban Mit nevezünk nk képletnek? A táblt blázatkezelő programok nagy előnye, hogy meggyorsítj tják és könnyebbé teszik a felhasználó számára a számítási

Részletesebben

A C programozási nyelv I. Bevezetés

A C programozási nyelv I. Bevezetés A C programozási nyelv I. Bevezetés Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv I. (bevezetés) CBEV1 / 1 A C nyelv története Dennis M. Ritchie AT&T Lab., 1972 rendszerprogramozás,

Részletesebben

A C# programozási nyelv alapjai

A C# programozási nyelv alapjai A C# programozási nyelv alapjai Tisztán objektum-orientált Kis- és nagybetűket megkülönbözteti Ötvözi a C++, Delphi, Java programozási nyelvek pozitívumait.net futtatókörnyezet Visual Studio fejlesztőkörnyezet

Részletesebben

ERLANG PROGRAMOK TRANSZFORMÁCI CIÓJA ERLANG

ERLANG PROGRAMOK TRANSZFORMÁCI CIÓJA ERLANG KLIENS-SZERVER SZERVER ALAPÚ ERLANG PROGRAMOK TRANSZFORMÁCI CIÓJA ERLANG OTP SÉMÁRAS Király Roland kiralyroland@inf.elte.hu Támogatók: - GVOP-3.2.2 3.2.2-2004-07-0005/3.00005/3.0 ELTE IKKK - Ericsson Hungary

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

Diszkrét matematika 1. középszint

Diszkrét matematika 1. középszint Diszkrét matematika 1. középszint 2017. sz 1. Diszkrét matematika 1. középszint 3. el adás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Mérai László diái alapján Komputeralgebra

Részletesebben

Komputeralgebra Rendszerek

Komputeralgebra Rendszerek Komputeralgebra Rendszerek Programozás Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék 2014. február 23. TARTALOMJEGYZÉK 1 of 28 TARTALOMJEGYZÉK I 1 TARTALOMJEGYZÉK 2 Értékadás MAPLE -ben SAGE -ben 3

Részletesebben

Nagy Gábor compalg.inf.elte.hu/ nagy

Nagy Gábor  compalg.inf.elte.hu/ nagy Diszkrét matematika 3. estis képzés 2018. ősz 1. Diszkrét matematika 3. estis képzés 2. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék

Részletesebben

Buborékrendezés: Hanoi Tornyai: Asszimptótikus fv.ek: Láncolt ábrázolás: For ciklussal:

Buborékrendezés: Hanoi Tornyai: Asszimptótikus fv.ek: Láncolt ábrázolás: For ciklussal: Buborékrendezés: For ciklussal: Hanoi Tornyai: Asszimptótikus fv.ek: Láncolt ábr.: ha p egy mutató típusú változó akkor p^ az általa mutatott adatelem, p^.adat;p^.mut. A semmibe mutató ponter a NIL.Szabad

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

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

4. Használati útmutatás

4. Használati útmutatás megbízható(másnéven: robusztus): mert a programozási hibák egy részét megakadályozza,a másik részét pedig futás közben kisz ri és támogatja a fejleszt t azok professzionális kezelésében. biztonságos: megakadályozza

Részletesebben

FUNKCIONÁLIS PROGRAMOZÁS

FUNKCIONÁLIS PROGRAMOZÁS FUNKCIONÁLIS PROGRAMOZÁS A funkcionális programozás néhány jellemzője Funkcionális programozás 1-2 Funkcionális, más néven applikatív programozás Funkcionális = függvényalapú, függvényközpontú Applikatív

Részletesebben

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé.

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. HA 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) HA 2 Halmazok HA 3 Megjegyzések A halmaz, az elem és az eleme fogalmakat nem definiáljuk, hanem alapfogalmaknak

Részletesebben

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3)

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3) Programozás alapjai C nyelv 4. gyakorlat Szeberényi Imre BME IIT Mit tudunk már? Típus fogalma char, int, float, double változók deklarációja operátorok (aritmetikai, relációs, logikai,

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

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

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double Programozás alapjai C nyelv 4. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.10.. -1- Mit tudunk már? Típus fogalma char, int, float,

Részletesebben

Halmazelméleti alapfogalmak

Halmazelméleti alapfogalmak Halmazelméleti alapfogalmak halmaz (sokaság) jól meghatározott, megkülönböztetett dolgok (tárgyak, fogalmak, stb.) összessége. - halmaz alapfogalom. z azt jelenti, hogy csak példákon keresztül magyarázzuk,

Részletesebben

Tömbök kezelése. Példa: Vonalkód ellenőrzőjegyének kiszámítása

Tömbök kezelése. Példa: Vonalkód ellenőrzőjegyének kiszámítása Tömbök kezelése Példa: Vonalkód ellenőrzőjegyének kiszámítása A számokkal jellemzett adatok, pl. személyi szám, adószám, taj-szám, vonalkód, bankszámlaszám esetében az elírásból származó hibát ún. ellenőrző

Részletesebben

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

Algoritmizálás és adatmodellezés tanítása 1. előadás Algoritmizálás és adatmodellezés tanítása 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

Részletesebben

Felvételi tematika INFORMATIKA

Felvételi tematika INFORMATIKA Felvételi tematika INFORMATIKA 2016 FEJEZETEK 1. Természetes számok feldolgozása számjegyenként. 2. Számsorozatok feldolgozása elemenként. Egydimenziós tömbök. 3. Mátrixok feldolgozása elemenként/soronként/oszloponként.

Részletesebben

Excel 2010 függvények

Excel 2010 függvények Molnár Mátyás Excel 2010 függvények Csak a lényeg érthetően! Tartalomjegyzék FÜGGVÉNYHASZNÁLAT ALAPJAI 1 FÜGGVÉNYEK BEVITELE 1 HIBAÉRTÉKEK KEZELÉSE 4 A VARÁZSLATOS AUTOSZUM GOMB 6 SZÁMÍTÁSOK A REJTETT

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

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

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

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1 Halmazok 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 2 A fejezet legfontosabb elemei Halmaz megadási módjai Halmazok közti műveletek (metszet,

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

Algoritmuselmélet 2. előadás

Algoritmuselmélet 2. előadás Algoritmuselmélet 2. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu 2002 Február 12. ALGORITMUSELMÉLET 2. ELŐADÁS 1 Buborék-rendezés

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

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3)

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3) Programozás alapjai C nyelv 7. gyakorlat Szeberényi Imre BME IIT Függvények C program egymás mellé rendelt függvényekből áll. A függvény (alprogram) jó absztrakciós eszköz a programok

Részletesebben

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2)

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2) Programozás alapjai C nyelv 7. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.11.05. -1- Függvények C program egymás mellé rendelt függvényekből

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 é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

A lista adatszerkezet A lista elemek egymásutániságát jelenti. Fajtái: statikus, dinamikus lista.

A lista adatszerkezet A lista elemek egymásutániságát jelenti. Fajtái: statikus, dinamikus lista. Lista adatszerkezet A lista adatszerkezet jellemzői 1 Különböző problémák számítógépes megoldása során gyakran van szükség olyan adatszerkezetre, amely nagyszámú, azonos típusú elem tárolására alkalmas,

Részletesebben

2019, Funkcionális programozás. 5. el adás. MÁRTON Gyöngyvér

2019, Funkcionális programozás. 5. el adás. MÁRTON Gyöngyvér Funkcionális programozás 5. el adás Sapientia Egyetem, Matematika-Informatika Tanszék Marosvásárhely, Románia mgyongyi@ms.sapientia.ro 2019, tavaszi félév Mir l volt szó? a Haskell kiértékelési stratégiája

Részletesebben

Bevezetés az informatikába

Bevezetés az informatikába Bevezetés az informatikába 6. előadás Dr. Istenes Zoltán Eötvös Loránd Tudományegyetem Informatikai Kar Programozáselmélet és Szoftvertechnológiai Tanszék Matematikus BSc - I. félév / 2008 / Budapest Dr.

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

C programozási nyelv

C programozási nyelv C programozási nyelv Előfeldolgozó utasítások Dr Schuster György 2011 május 3 Dr Schuster György () C programozási nyelv Előfeldolgozó utasítások 2011 május 3 1 / 15 A fordítás menete Dr Schuster György

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

Rekord adattípus. Egymásba ágyazott rekordok. With utasítás. Változó rekord. Rekord konstans

Rekord adattípus. Egymásba ágyazott rekordok. With utasítás. Változó rekord. Rekord konstans Témakörök: k: Rekord adattípus Egymásba ágyazott rekordok With utasítás Változó rekord Rekord konstans 1. A rekord adattípus Sokszor találkozunk lkozunk olyan feladattal, melyben összetartozó adatokat,

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

Ö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

Kriptográfiai algoritmus implementációk időalapú támadása Endrődi Csilla, Csorba Kristóf BME MIT

Kriptográfiai algoritmus implementációk időalapú támadása Endrődi Csilla, Csorba Kristóf BME MIT NetworkShop 2004 2004.. április 7. Kriptográfiai algoritmus implementációk időalapú támadása Endrődi Csilla, Csorba Kristóf BME MIT Bevezetés Ma használt algoritmusok matematikailag alaposan teszteltek

Részletesebben

STATISZTIKA. ( x) 2. Eloszlásf. 9. gyakorlat. Konfidencia intervallumok. átlag. 45% 40% 35% 30% 25% 20% 15% 10% 5% 0% (cm)

STATISZTIKA. ( x) 2. Eloszlásf. 9. gyakorlat. Konfidencia intervallumok. átlag. 45% 40% 35% 30% 25% 20% 15% 10% 5% 0% (cm) Normális eloszlás sűrűségfüggvénye STATISZTIKA 9. gyakorlat Konfidencia intervallumok f σ π ( µ ) σ ( ) = e /56 p 45% 4% 35% 3% 5% % 5% % 5% Normális eloszlás sűrűségfüggvénye % 46 47 48 49 5 5 5 53 54

Részletesebben

Halmaz típus Értékhalmaz:

Halmaz típus Értékhalmaz: Halmaz, multihalmaz Halmaz féleségek 1. Halmaz Gyümölcsök: {alma,körte,szilva,barack} 2. Multihalmaz Állatok: {(macska,4),(rigó,2),(galamb,3)} 3. Intervallumhalmaz diszjunkt Óráim: {[8-10],[13-14],[16-20)}

Részletesebben

Adatszerkezetek. Készítette: Csatlós István 2005-ben

Adatszerkezetek. Készítette: Csatlós István 2005-ben Adatszerkezetek Készítette: Csatlós István 2005-ben Alapfogalmak Elmélet Rendszer Közös s ismérv alapján összetartozó,, egymással meghatározott kapcsolatban lévől elemek jól j körülhatárolt együttese.

Részletesebben

A C programozási nyelv IV. Deklaráció és definíció

A C programozási nyelv IV. Deklaráció és definíció A C programozási nyelv IV. Deklaráció és definíció Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv IV. (Deklaráció és definíció) CBEV4 / 1 Definíció és deklaráció Definíció: meghatározza

Részletesebben

Matematika A1a Analízis

Matematika A1a Analízis B U D A P E S T I M Ű S Z A K I M A T E M A T I K A É S G A Z D A S Á G T U D O M Á N Y I I N T É Z E T E G Y E T E M Matematika Aa Analízis BMETE90AX00 Az exp és ln függvények H607, EIC 209-04-24 Wettl

Részletesebben

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós szeptember 27. Széchenyi István Egyetem, Gy r

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós szeptember 27. Széchenyi István Egyetem, Gy r Programozás alapjai (GKxB_INTM023) Széchenyi István Egyetem, Gy r 2018. szeptember 27. Háromszög szerkeszthet ségének ellen rzése ANSI C (C89) megvalósítás #i n c l u d e i n t main ( v

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. 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

7. fejezet: Mutatók és tömbök

7. fejezet: Mutatók és tömbök 7. fejezet: Mutatók és tömbök Minden komolyabb programozási nyelvben vannak tömbök, amelyek gondos kezekben komoly fegyvert jelenthetnek. Először is tanuljunk meg tömböt deklarálni! //Tömbök használata

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

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Nagy Gábor  compalg.inf.elte.hu/ nagy ősz Diszkrét matematika 1. középszint 017. ősz 1. Diszkrét matematika 1. középszint. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Mérai László diái alapján Komputeralgebra

Részletesebben

Programozás alapjai. 5. előadás

Programozás alapjai. 5. előadás 5. előadás Wagner György Általános Informatikai Tanszék Cserélve kiválasztásos rendezés (1) A minimum-maximum keresés elvére épül. Ismétlés: minimum keresés A halmazból egy tetszőleges elemet kinevezünk

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

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

Informatika terméktervezőknek

Informatika terméktervezőknek Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások

Részletesebben

Klasszikus algebra előadás. Waldhauser Tamás április 14.

Klasszikus algebra előadás. Waldhauser Tamás április 14. Klasszikus algebra előadás Waldhauser Tamás 2014. április 14. Többhatározatlanú polinomok 4.3. Definíció. Adott T test feletti n-határozatlanú monomnak nevezzük az ax k 1 1 xk n n alakú formális kifejezéseket,

Részletesebben

6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok

6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok 6. gyakorlat Egydimenziós numerikus tömbök kezelése, tömbi algoritmusok 1. feladat: Az EURO árfolyamát egy negyedéven keresztül hetente nyilvántartjuk (HUF / EUR). Írjon C programokat az alábbi kérdések

Részletesebben

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós október 15. Széchenyi István Egyetem, Gy r

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós október 15. Széchenyi István Egyetem, Gy r Programozás alapjai (GKxB_INTM023) Széchenyi István Egyetem, Gy r 2018. október 15. Leghosszabb 3D vektorok kikeresése 1 #i n c l u d e 2 #i n c l u d e 3 #d e f i n e MAX 1000

Részletesebben

Adattípusok, vezérlési szerkezetek. Informatika Szabó Adrienn szeptember 14.

Adattípusok, vezérlési szerkezetek. Informatika Szabó Adrienn szeptember 14. Informatika 1 2011 Második előadás, vezérlési szerkezetek Szabó Adrienn 2011. szeptember 14. Tartalom Algoritmusok, vezérlési szerkezetek If - else: elágazás While ciklus For ciklus Egyszerű típusok Összetett

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

Diszkrét matematika 2. estis képzés

Diszkrét matematika 2. estis képzés Diszkrét matematika 2. estis képzés 2018. tavasz 1. Diszkrét matematika 2. estis képzés 4-6. előadás Nagy Gábor nagygabr@gmail.com nagy@compalg.inf.elte.hu compalg.inf.elte.hu/ nagy Komputeralgebra Tanszék

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

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

FUNKCIONÁLIS PROGRAMOZÁS GYAKORLAT JEGYZET

FUNKCIONÁLIS PROGRAMOZÁS GYAKORLAT JEGYZET FUNKCIONÁLIS PROGRAMOZÁS GYAKORLAT JEGYZET Szerkesztette: Balogh Tamás 2013. május 17. Ha hibát találsz, kérlek jelezd a info@baloghtamas.hu e-mail címen! Ez a Mű a Creative Commons Nevezd meg! - Ne add

Részletesebben

NAGYPONTOSSÁGÚ EGÉSZ-ARITMETIKA TARTALOM

NAGYPONTOSSÁGÚ EGÉSZ-ARITMETIKA TARTALOM NAGYPONTOSSÁGÚ EGÉSZ-ARITMETIKA TARTALOM 0. A feladat... 2 1. Az Egész számok ábrázolásai... 2 2. A műveletek szignatúrája... 3 3. A keretprogram... 4 4. Technikai tanácsok... 7 5. Elegancianövelő lehetőségek

Részletesebben