
A tárgy célja az Algoritmuselmélet című tárgy során tanult, fejlettebb algoritmusok programozásán keresztül a hallgatók programozási képességeit a megbízható rutinszintre emelni, és otthonosságot biztosítani számukra közepes vagy nagyobb program[rendszer]ekben való gondolkodásra,
fejlesztésre.
C++ nyelv fejlettebb szintaktikai elemei: referenciatípusok, operátor-túlterhelés, allokációs sémák. Adatszerkezetek programozása. A template típuskonstrukció, programozás template-ek használatával, template osztályok írása. A standard template library használata.
Nagyméretű programok írásához szükséges eszközök: függvénykönyvtárak használata és írása. Interfészek definiálása. Gráfok reprezentálása, fejlett gráfalgoritmusok programozása.
Algoritmustervezési módszerek a gyakorlatban: mohó algoritmusok, dinamikus programozás. Programozási versenyek és versenyfeladatok típusai
Kitekintés a Java programozási nyelv és szoftverfejlesztési környezetre. Grafikus felhasználói felületek programozása.