Programozási paradigmák és adatszerkezetek

Oktatási cél:

A tantárgy célja az alapvető adatszerkezetek felépítésének, azok implementációjának és alapvető használati eseteinek a bemutatása. Ezek mellett a hallgatók megismerkednek az általános feladatmegoldás és az optimalizálás témakörében használható alapvető megoldási stratégiákkal és programozási paradigmákkal.

Tematika:

A tárgy bemutatja az adatszerkezetek (lista, sor, verem, halmaz, szótár) alapvető műveleteit és azok használati eseteit. Ezt követően kitér az általánosan használt lehetséges implementációs megoldásokra (tömbök, rendezett tömbök, láncolt listák, bináris keresőfák, hasító táblázatok). Majd bemutatja a speciális célú adatszerkezeteket (gráfok, B-fák, kupacok), illetve a gráfokon értelmezhető további műveleteket (legrövidebb utak keresése, feszítőfák keresése, topológiai rendezés). A hallgatók megismerhetik az általános és optimalizálási problémák megoldására használható alapvető stratégiákat (nyers erő módszere, oszd meg és uralkodj, feljegyzéses módszer, dinamikus programozás, mohó algoritmusok, visszalépéses keresés, korlátozás és szétválasztás). Végül betekintést nyernek a funkcionális és a logikai programozás világába.

Programozási paradigmák és adatszerkezetek