Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 3. kurzus TARTALOM:

Hasonló dokumentumok
Erdélyi Magyar TudományEgyetem (EMTE

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

Adatszerkezetek 7a. Dr. IványiPéter

Algoritmusok bonyolultsága

Algoritmuselmélet 2. előadás

Algoritmusok Tervezése. 6. Előadás Algoritmusok 101 Dr. Bécsi Tamás

A számítástudomány alapjai. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem

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

Dr. Schuster György február / 32

A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai

Java programozási nyelv

Algoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y.

Specifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.

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

Specifikáció. B logikai formula, a bemeneti feltétel, K logikai formula, a kimeneti feltétel, A az algoritmus, amelyre az állítás vonatkozik.

Bonyolultságelmélet. Monday 26 th September, 2016, 18:50

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t

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

7 7, ,22 13,22 13, ,28

Elemi adatszerkezetek

Programok értelmezése

Hierarchikus adatszerkezetek

Felvételi vizsga mintatételsor Informatika írásbeli vizsga

Felvételi tematika INFORMATIKA

Algoritmuselmélet. Gráfok megadása, szélességi bejárás, összefüggőség, párosítás. Katona Gyula Y.

1: Bevezetés: Internet, rétegmodell Alapok: aszimptótika, gráfok. HálózatokII, 2007

Algoritmusok bonyolultsága

end function Az A vektorban elõforduló legnagyobb és legkisebb értékek indexeinek különbségét.. (1.5 pont) Ha üres a vektor, akkor 0-t..

BASH script programozás II. Vezérlési szerkezetek

Adatszerkezetek és algoritmusok

Algoritmuselmélet 7. előadás

Gráfok, definíciók. Gráfok ábrázolása. Az adott probléma megoldásához ténylegesen mely műveletek szükségesek. Ábrázolások. Példa:

Struktúra nélküli adatszerkezetek

1. ábra. Egy rekurzív preorder bejárás. Egy másik rekurzív preorder bejárás

Formális módszerek GM_IN003_1 Program verifikálás, formalizmusok

Diszkrét matematika 2.C szakirány

Adatszerkezetek 2. Dr. Iványi Péter

Gyakorló feladatok ZH-ra

Algoritmuselmélet. Bonyolultságelmélet. Katona Gyula Y.

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

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

Algoritmuselmélet 1. előadás

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

Dinamikus modellek szerkezete, SDG modellek

Vektorterek. Wettl Ferenc február 17. Wettl Ferenc Vektorterek február / 27

Algoritmusok helyességének bizonyítása. A Floyd-módszer

Adatszerkezetek 1. előadás

Egyirányban láncolt lista

Ugrólisták. RSL Insert Example. insert(22) with 3 flips. Runtime?

Edényrendezés. Futási idő: Tegyük fel, hogy m = n, ekkor: legjobb eset Θ(n), legrosszabb eset Θ(n 2 ), átlagos eset Θ(n).

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

2. Milyen értéket határoz meg az alábbi algoritmus, ha A egy vektor?. (2 pont)

Kupac adatszerkezet. 1. ábra.

Algoritmusok vektorokkal keresések 1

INFORMATIKA tétel 2019

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

7. BINÁRIS FÁK 7.1. A bináris fa absztrakt adattípus 7.2. A bináris fa absztrakt adatszerkezet

Elsőrendű logika szintaktikája és szemantikája. Logika (3. gyakorlat) 0-adrendű szemantika 2009/10 II. félév 1 / 1

Fák Témakörök. Fa definíciója. Rekurzív típusok, fa adatszerkezet Bináris keresőfa, bejárások Bináris keresőfa, módosítás B-fa

Minimális feszítőfák Legyen G = (V,E,c), c : E R + egy súlyozott irányítatlan gráf. Terjesszük ki a súlyfüggvényt a T E élhalmazokra:

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. Függvények. Függvények(2)

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8.

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

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

Kiterjesztések sek szemantikája

Gráfok 2. Legrövidebb utak, feszítőfák. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor

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

Számítógép hálózatok, osztott rendszerek 2009

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

22. GRÁFOK ÁBRÁZOLÁSA

Matematika alapjai; Feladatok

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

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

Tartalomjegyzék. Köszönetnyilvánítás. 1. Az alapok 1

INFORMATIKA javítókulcs 2016

Tartalom Keresés és rendezés. Vektoralgoritmusok. 1. fejezet. Keresés adatvektorban. A programozás alapjai I.

Fordítás Kódoptimalizálás

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

Példa Hajtsuk végre az 1 pontból a Dijkstra algoritmust az alábbi gráfra. (A mátrixban a c i j érték az (i, j) él hossza, ha nincs él.

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

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

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

Keresés és rendezés. A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán

Programozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Előfeldolgozó rendszer Tömbök. Dr. Bécsi Tamás 4. Előadás

26. MINIMÁLIS KÖLTSÉGŰ UTAK MINDEN CSÚCSPÁRRA

ELTE IK Esti képzés tavaszi félév. Tartalom

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

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

Komputeralgebra Rendszerek

Gráfalgoritmusok ismétlés ősz

Programozás I. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar szeptember 10.

Információs Technológia

Memóriagazdálkodás. Kódgenerálás. Kódoptimalizálás

A C# programozási nyelv alapjai

Programozási alapismeretek 3. előadás

9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum.

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

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

Átírás:

TARTALOM: Fa adatstruktúra Gráfok ábrázolási módja Általánosságok Algoritmusok ábrázolása: Matematikai-logikai nyelvezet Pszeudokód Függőleges logikai sémák Vízszintes logikai sémák Fastruktúrák Döntési táblák

Csíkszereda IRT- 2. kurzus Fa adatszerkezet. Az adatelemek között hierarchikus kapcsolat van. Hurok nélküli gráf (fa adatszerkezet). Személyi szám Vezetékné v név Keresztné v alkalmazo tt cí m Orszá g kor Országon belüli cím fizetés Város Utca házszá m Ezt rekordszerkezetnek nevezzük. A relációs modell előtt használták. ÁLTALÁNOS faszerkezet. 2

Csíkszereda IRT- 2. kurzus Algebrai kifejezések fastruktúrája (BINÁRIS fa) (2*x+y)*(a-7*b) 3 * + * y - 3 2 x a * 7 b 3

Csíkszereda IRT- 2. kurzus a) Bináris fák (mindenik csúcsnak legtöbb két ága van) b) Általános fák (mindenik csúcsnak legtöbb k ága van) Ábrázolás Zárójelekkel A(B,C) Standard gyökér, bal (I), jobb(i) Apa apa (,,2,3,2,..) 4

Bináris fa ábrázolása gyökér 5

Gyökeres általános fák ábrázolása, bal-gyerek és jobb testvér módszerrel 6

Csíkszereda IRT- 2. kurzus Átfutás: Preorder (A,B,C) Inorder (B,A,C) Postorder (B,C,A) B A C Átfutási algoritmus: Procedure Preorder (gyökér) I gyökér; k folytatás = igen 7

Csíkszereda IRT- 2. kurzus While folytatas = igen if i<> then feldog (i); k k+; v(k) i; i bal(i) else if k = then folytatas = nem else i v (k); k k-; i jobb(i) end if end if end while Return 8

Csíkszereda IRT- 2. kurzus 5 3 7 2 9 8 Preorder (5,3,2,9,7,8) Inorder (2,3,9,5,7,8) Postorder (2,9,3,8,7,5) 9

Csíkszereda IRT- 2. kurzus 2 3 7 9 8 Preorder Inorder Postorder 5

Gráfok ábrázolási módja Szomszédsági lista csúcsmátrix 2 3 5 4 3 2 5 4 3 2 4 3 2 2 2 2 3 4 3 4 5 4 5 5 4 2 4 5 3 6 5 5 6 4 3 2 6 4 3 2 5 6 5 4 3 2 5 2 5 6 4 2 4

Csíkszereda IRT- 2. kurzus Gráfalgoritmusok: Szélességi keresés Mélységi keresés Minimális feszítőfák (Kruskal és Prim algoritmusai) Adott csúcsból induló legrövidebb utak Bellman-Ford algoritmus Dijkstra algoritmusa Hálózati folyamok Ford és Fulkerson algoritmus Edmonds-Karp algoritmus 2

Általánosságok. Algoritmizálunk a következő esetekben: számítás volumene nagy az aktivitás sokszor ismétlődik az eredmények rövid időn belül szükségesek 2. A hangsúly azon van hogy ábrázoljuk és hogy építjük fel az algoritmust egy valós és nehéz probléma megoldásának érdekében 3. A legjobb algoritmus? 4. A komplexitás időben csökkenő? 3

Algoritmusok elemzése Előre megadjuk, hogy milyen erőforrásokra lesz szüksége az algoritmusnak. A RAM (Random Access Memory)-közvetlen hozzáférésű memóriát vesszük alapul. A Processzorral együtt alkotja a közvetlen hozzáférésű gépet. Az utasítások egymás után hajtódnak végre, egyidejű műveletek nélkül. Meg kell fogalmazzuk a modell műveleteit és azok költségeit. Bemenet mérete: feladatfüggő a tömb n elemszáma (rendezésnél) Bitek száma (pl. számok szorzása esetén) Gráf éleinek és csúcsainak száma Futási idő: egy bizonyos bemenetre a végrehajtott alapműveletek (lépések száma) 4

Beszúrásos rendezés algoritmusa 2 3 4 5 6 5 2 4 6 3 2 3 4 5 6 2 5 4 6 3 2 3 4 5 6 2 4 5 6 3 2 3 4 5 6 2 4 5 6 3 2 3 4 5 6 2 4 5 6 3 2 3 4 5 6 2 3 4 5 6 for j 2 to hossz[a] 2 do S A[j] 3 ((A[j] beszúrása az A[..j-] rendezett sorba)) 4 i j- 5 while i> and A[i]>S 6 do A[i+] A[i] 7 i i- 8 A[i+] S t j ahányszor 5-ös végrehajtódik a j-re n j= 2 t j Költség C n C2 n- C4 n- C5 C6 C7 C8 n- végrehajtási szám n j= 2 ( t ) j 5

Legjobb eset 2 3 4 5 6 2 3 4 5 6 A 6-os és 7-es utasítás NEM hajtódik végre, az 5-ös feltétel nem teljesülése miatt, viszont az 5- ös feltételt ellenőrzi minden ciklusban a program T(n)=c n+c 2 (n-)+c 4 (n-)+c 5 (n-)+c 8 (n-)=an+b lineáris függvény for j 2 to hossz[a] 2 do S A[j] 3 ((A[j] beszúrása az A[..j-] rendezett sorba)) 4 i j- 5 while i> és A[i]>S 6 do A[i+] A[i] 7 i i- 8 A[i+] S Költség C n C2 n- C4 n- C5 n- C6 C7 C8 n- végrehajtási szám 6

Legroszabb eset 2 3 4 5 6 6 5 4 3 2 T(n)=an 2 +bn+c négyzetes függvény for j 2 to hossz[a] 2 do S A[j] 3 ((A[j] beszúrása az A[..j-] rendezett sorba)) 4 i j- 5 while i> and A[i]>S 6 do A[i+] A[i] 7 i i- 8 A[i+] S Költség C n C2 n- végrehajtási szám C4 n- C5 n- C6 (n-)*(n-) C7 (n-)*(n-) C8 n- T(n)=c n+(c 2 +c 4 +c 5 +c 8 )(n-)+(c 6 +c 7 )(n 2-2n+) 7

. Definíció: Azt mondjuk, hogy T(n)=O(f(n)) az algoritmus komplexitásának a mértéke ha léteznek c és c 2 számok valamint n úgy, hogy: c f(n) T(n) c 2 f(n), ( )n n. 2. Definíció: Azt mondjuk, hogy T(n)=O(f(n)) egy algoritmus komplexitásának nagyságrendje, ha létezik két pozitív konstans c, n, úgy, hogy T(n) cf(n), ( )n n. 8

c 2 f(n) c f(n) T(n) T(n)=Θ(f(n)) A komplexitás mértéke n n cf(n) T(n) T(n)=O(f(n)) A komplexitás nagyságrendje n n 9

Az algoritmusok jellemzői ( (általánosság, végesség, egyediség, automatizmus ) Szubalgoritmusok. (egymásratevődéses képzés, fokozatos képzés ) Algoritmusosztályok (Numerikus, nemnumerikus, feldolgozási) 2

. Definíció: Egy algoritmust polinomiálisnak nevezünk, ha olyan temporális komplexitással rendelkezik, amelyik O(f(n)) alakú, ahol f(n) egy polinomiális függvény n hosszúságú bemenetekre. f(n)=a n+a f(n)=a 2 n 2 +a n+a f(n)=a 6 n 6 +a n +a 5 n 5 +a 2 n 2 +a n+a f(n)=a 6783 n 6783 +a 532 n 532 +a 5 n 5 +a 2 n 2 +a n+a 2

2. Definíció: Ha egy algoritmus nem polinomiális komplexitású, akkor exponenciális; minden olyan algoritmus exponenciálisként van kezelve, amely komplexitása n log n, habár sem nem polinomiálisak sem nem exponenciálisak matematikai értelemben. Utazóügynök probléma: Egy utazóügynök n várost kell meglátogasson bizonyos időn belül. Hogyan járja be a városokat, hogy a költsége minél kisebb legyen (legyen a költség=út hossza). Az utak bejárásának összes esete: n! n!=.2.3.4.n>=2 n- NEM polinomiális (exponenciális) 22

Algoritmusok ábrázolása matematikai-logikai nyelvezet, pszeudokód, függőleges logikai sémák, vízszintes logikai sémák (Chapin), fastrúktúrák (Tabourier vagy Mills), döntési táblák. 23

Pszeudokód típusú nyelvek Természetes nyelv, strukturált és egyszerűsített, Egy alternatívája a logikai sémának, Nem programozási nyelv, Sok változata van, Az algoritusok egymásutáni mondatokból épülnek fel, Mondatok lehetnek: egyszerűek (pl.: nyiss meg egy állományt, olvass egy bejegyzést fájlból); Komplex mondatok, logikai operátorokkal összekötve A # szimbólum az elkövetkezőkben kiterjesztett mondatra utal A mondat egy igével kezdődik (pl. Read változó,..) Megközelítés módja "top-down" tipúsú (fentről lefele) 24

Függőleges logikai séma Az algoritmus grafikai ábrázolása, Három fajta egységből áll (blokkból): ) Funkcionális egység : Y=f(X) X Y 2) Döntési egység: Y Z = c(x) 3) Kötések (összeköttetések) 25

Alap kontroll struktúrák- a) Lineáris struktúra jelölése Π (s,s 2,...,s n ) s s2 s3 s4 b) Alternatív struktúra jelölése (c,s,s 2 ), C s s2 c) Előfeltételes repetitív struktúra jelölése Ω (c,s) d) /\ Struktúra (Üres blokk) C s 26

Alap kontroll struktúrák-2 Utófeltételes repetitív struktúra jelölése Ω '(c,s) s Pszeudo-alternatív struktúra jelölése '(c,s) C C s2 Általánosított alternatív struktúra jelölése ' '(c,s,s 2,...s n ) s s2 sn 27

Összefüggések Π(s,s 2 ) = (BLOCK,s,s 2 ); Δ (c,s,s 2 ) = (IF-THEN-ELSE, c,s,s 2 ); Ω (c,s) = (DO-WHILE,c,s) Ω ' (c,s) = (DO-UNTIL,c,s) Δ'(c,s) = (IF-THEN,c,s) Δ' '(i,s,s 2,...s n ) = (CASE-OF,i,s,s 2,...,s n ). 28

Beszúrásos rendezés algoritmusa 2 3 4 5 6 5 2 4 6 3 for j 2 to hossz[a] 2 do S A[j] 3 i j- 4 while i> and A[i]>S 5 do A[i+] A[i] 6 i i- 7 A[i+] S Start j=2 Rendez s s 2 j=j+ s 3 П(s,Ω (c 2,П(s 2,s 3 ))) j<6 c 2 Vége 29

j=2 S=A[j] i=j- i> and A[i]>S s s 4 s 5 i=i- A[i+]=A[i] s 2 =П(s 4,П(s 5,X)) s 2 =П(s 4,П(s 5,П(Y,s 8 ))) s6 s 7 Y=Ω(c 3,П(s 7,s 6 )) c 3 s 2 =П(s 4,П(s 5,П(Ω(c 3,П(s 7,s 6 )),s 8 ))) A[i+]=S s 8 j=j+ s 3 j<hossz A c 2 F= П(s,Ω (c 2,П(П(s 4,П(s 5,П(Ω(c 3,П(s 7,s 6 )),s 8 ))),s 3 ))) 3

Alapstruktúrák tulajdonságai. ) Π struktúra általában nem kommutatív: Π (s,s2) Π (s2,s). 2) Π struktúra asszociatív: Π (s, Π (s2,s3)= Π (Π (s,s2),s3). 3) Az üres /\ elem semleges a szekvenciális struktúra szempontjából : Π (s,/\)= Π (/\,s). 4) Π struktúra jobb oldalról disztributív az alternatív strukturára nézve: Π (Δ (c,s,s2),s3)= Δ (c, Π (s,s3), Π (s2,s3)). 3

Alapstruktúrák tulajdonságai. 5) Π struktúra disztributív balról az alternatív struktúrára nézve : Π (s, Δ (c,s2,s3))= Δ (c, Π (s,s2), Π (s,s3)). 6) Ω struktúra átalakítható az alternatív bennfoglalási struktúrákra: Ω (c,s)= (c, Π (s, Ω (c,s)),/\)= Δ (c, Π (s, Δ (c, Π (s, Ω (c,s) )),/\)),/\)=... 7) Δ ', Δ ", Ω' struktúrák átalakíthatóak a Π, Δ, Ω struktúrákra : Ω '(c,s)= Π (s, Ω (c,s));, Δ '(c,s)= Δ (c,s,/\); Δ '(c,s)= Δ (c,s, Ω (c,s)); Δ '(c,s,s2,...sn)= Δ (c,s, Δ (c2,s2,...)), 32

Strukturált Program Definíció: Strukturált programnak nevezünk bármely olyan programot amelynek kontroll struktúrája megvalósítása esetén kizárólag szekvenciálisan strukturált blokkokat használunk, két ágú alternatív struktúrát és előfeltételes alternatív struktúrát. Boehm és Jacopini struktúra tétele Adott három új funkcionális blokk T,F,K T F T x--->(t,x) ; x--->(f,x) ; x--->(t,(t,x)). K K (v,x)--->x ; (t,(f,(t,x)))--->(f,(t,x)). W[(v,x)]=t <=> v=t 33

A struktúra tétele A struktúra tétel (Boehm és Jacopini) Ha egy x-->x' alkalmazás logikai úton ábrázolható úgy, hogy az s,s 2,... akciókat tartalmazza és a c,c 2,... predikátumokat ugyanúgy reprezentálható egy logikai séma által amelyik felbomlik Π, Δ şi Ω -ra és amelyik tartalmazza ugyanazokat a blokkokat mint az eredeti séma, és még T, F, K és W tipúsú blokkokat. Bizonyítás: indukcióval n- blokkok száma 34

Top-down folyomány Top-down folyomány ( fentről lefele"). Egy strukturált program ekvivalens egy olyan programmal amelyik a következő formákat veheti fel: P = Π (s,s 2 ), P = Δ (c,s,s 2 ) P = Ω (c,s), P = Ω '(c,s) ahol c állítmány, és s, s, s 2 strukturált procedúrák vagy a program funkciói. 35

Fastruktúra diagramm a) Tabourier variáns a 3.4 ábra reprezentációit használja a következő struktúrákra: szekvenciális Π(s,s 2 )=(BLOCK, s,s 2 ) alternatív Δ (c,s,s 2 ) (IFTHENELSE,c,s,s 2 ) előfeltételes repetitív jelölése (WHILEDO,c,s) pszeudoalternatív jelölése (IFTHEN, c,s) többszörösen alternatív jelölése (CASEOF, c,s,s 2,...,s n ) utófeltételes repetitív jelölése (DOUNTIL,s,c), 36

Tabourier variáns BLOCK IFTHENELSE IFTHEN S S 2 c c S S S 2 WHILEDO CASEOF DOUNTIL c S c S S 2 S n S c 37

BLOCK j=2 DOUNTIL BLOCK S=A[j] BLOCK J>hosszA for j 2 to hossz[a] 2 do S A[j] 3 i j- 4 while i> and A[i]>S 5 do A[i+] A[i] 6 i i- 7 A[i+] S i=j- BLOCK WHILEDO BLOCK i> and A[i]>S BLOCK A[i+]=S j=j+ A[i+]=A[i] i=i- 38

Mills variáns WHILE DO C IF THEN ELSE C S BLOCK S 2 S 3 39

Az első r sorra Döntési táblák (IGEN, NEM tipús; <, =, > tipús;,,2,... tipús) Az m eset száma m=n*n2* nr s c c 2 2 c 2 2 s 2 s 3 s 4 s 5 2 2 3.8.b. ábra Az esetek meghatározása s 6 4

Döntési táblák Hatásvonal környéke * az Sj feltételek esetében az Ai akció végrehajtásra kerül t ij = üres ha az Ai akció nem hajtódik végre az Sj esetben A döntési táblák három tipúsúak lehetnek : a) korlátozott bemenettel (minden feltétel az L 2 ={,} halmaz elemeiből vesz értéket); b) kiterjesztett bemenettel (vagyis a feltételek értelmezési tartománya L n, n>2 halmaz); c) vegyes bemenettel (egyes feltételek az L 2 n vannak értelmezve mások az L n, n>2. 4

Döntési táblák A feladatok szekvenciája: - döntési tábla feltételeinek megállapítása - szabályok megállapítása - lehetséges akciók meghatározása - döntési tábla elkészítése - az ellentmondások és a redundancia kiküszöbölése - a kapott tábla egyszerűsítése 42

Ismétlő kérdések Milyen esetekben algoritmizáluk A komplexitás definíciója Algoritmusok tulajdonságai és osztályai Mi egy polinomiális és egy nempolinomiális algoritmus Pszeudokód tipúsú nyelvek Függőleges logikai sémák Alapstruktúrák tulajdonságai Strukturált program, Boehm-Jacopini tétele Fastruktúrák (Tabourie, Mills) Döntési táblák. Felépítés és egyszerűsítés 43