|
Languages: recursive definitions, regular expressions, context-free grammars; Automata: finite automata (deterministic and non-deterministic), conversion from grammars to automata, transition graphs, push-down automata; Problem solving: understanding and developing algorithms; Implementing algorithms to apply language definitions and to simulate automaton: Array and string processing, iteration (for loops) and recursion, scope of variables, static methods, defining classes, creating objects, defining and calling methods (including constructors), recursion.
|