SZÁMÍTÁSTUDOMÁNY MATEMATIKAI ALAPJAI I.

1. Számrendszerek 1.1. Bináris, hexadecimális számok 1.2. Műveletek 2. Halmazelméleti alapok 2.1. Halmaz, halmaz eleme 2.2. Részhalmaz, diszjunkt halmazok 2.3. Alapműveletek 3. Matematikai logika alapjai 3.1. Ítéletkalkulus, logikai műveletek, negáció, diszjunkció, konjunkció, implikáció, ekvivalencia 3.2. Teljes diszjunktív és konjunktív normálformák 3.3. Következményfogalom a kijelentéslogikában 4. Relációk 4.1. Bináris relációk, tulajdonságaik 4.2. Ekvivalenciareláció, teljes és parciális rendezési reláció 4.3. Függvények, injektív, szurjektív, bijektív függvények 5. A számfogalom bővítése 5.1. Természetes számok (Peano axiómák) 5.2. Egész számok, racionális számok 5.3. Valós számok halmaza 3. Matematikai indukció 2.1. Teljes indukciós bizonyítási módszer 4. Végtelen számosságok 4.1. Halmazok ekvivalenciája 4.2. Megszámlálhatóan végtelen és kontinuum számosság 5. Algebrai struktúrák 5.1. Félcsoport, csoport, gyűrű, ferdetest, test 5.2. Boole algebra 5.3. Kapcsolóáramkörök, kapuáramkörök 6. Gráfelméleti alapok 6.1. Gráf fogalma, irányított és irányítatlan gráfok 6.2. Teljes gráf, részgráf, feszített részgráf 6.3. Élsorozat, vonal, út, kör 6.4. Összefüggőség, fa, feszítőfa 6.5. Hamilton kör, Euler vonal 7. Kódoláselmélet 7.1. Információs csatorna, betű szerinti kódolás 7.2. Optimális kódok 7.3. Hibajavító kódolás 7.4. Lineáris kódok, Hamming kódok 8. Lineáris algebra (Matematikai Intézet)

GYAKORLAT Feladatmegoldások

SZÁMÍTÁSTUDOMÁNY MATEMATIKAI ALAPJAI II.

1. Adatszerkezetek 1.1. Verem, sor, halmaz 1.2. Adatszerkezetek absztrakt analízise 2. Rekurzív algoritmusok 2.1. Visszalépéses algoritmusok 2.2. Nyolc királynő probléma 2.3. Hanoi tornyai 3. Vermet használó egyéb algoritmusok 3.1. Kifejezések posztfix alakja 3.2. Kifejezések kiértékelése 4. Keresések, rendezések 4.1. Külső és belső rendezések 4.2. Rendezések hatékonyságának mérése 4.3. Buborékrendezés, beszúró rendezés, közvetlen kiválasztó rendezés (gyakorlat) 4.4. Halomrendezés, rendezőfa, 4.5. Gyorsrendezés, összefésüléses rendezés 4.6. Keresés és adatmódosítás

5. Adatszerkezetek megvalósítása (gyakorlat)
5.1. Lista adatmodell 5.2. Fa adatmodell 5.3. Gráf adatmodell 6. Gráfelméleti algoritmusok 6.1. Bináris fák bejárása 6.2. Gráfok bejárása 6.3. Útmátrix keresése 6.4. Legrövidebb út probléma 6.5. Gráfok topológiai rendezése 7. Formális nyelvek és automaták 7.1. Bevezetés, formális nyelvek kapcsolata a programozási nyelvekkel 7.2. Formális nyelvek definiálása 7.3. Generatív grammatikák, osztályozásuk 7.4. Reguláris nyelvek felismerői: véges determinisztikus és nemdeterminisztikus automaták 7.5. Reguláris nyelvek átalakítói: Mealy és Moore automaták 7.6. Környezetfüggetlen nyelvek 7.7. Veremautomaták 8. Turing gépek

8.1. A Turing gép fogalma 8.2. Az univerzális Turing gép

Gyakorlat tartalma:
1. A feladatmegoldás legfontosabb lépései Feladat megoldási módszerek, specifikáció, algoritmus, program nyelvek 2. Alapvető programozási tételek, algoritmusok. Egy sorozathoz egy érték hozzárendelése (Összegzés, Eldöntés, Kiválasztás, Megszámlálás, Keresés, Max-min kiválasztás) Egy sorozathoz egy másik sorozat hozzárendelése (Kiválogatás, Rendezés) Több sorozathoz egy sorozat hozzárendelése (Metszetképzés, Unióképzés, Összefuttatás) Példamegoldások (Mondatszerű leírás nyelven) 3. Adatszerkezetek Adat típusok rendszerezése Adatszerkezetek Algoritmus típus-specifikáció Sorozat típusok ábrázolása a memóriában Lista típus konstrukció Verem típus konstrukció Sor típus konstrukció Prioritási sor típus konstrukció 4. Rendezések Gyakorlások, összehasonlítások, hatékonysági mutatók. 5. Gráfok és fák. Megvalósítások és alkalmazások. Gráfok bejárása, fák bejárása, minimális feszítőfa, legrövidebb út keresés. Algoritmizálások.