Basics: Introduction, Information and data, Data encoding. Logic: Boolean logic, Applications of propositional logic.
Problem Solving and Algorithmic Thinking: Problem definition, Logical reasoning, Problem decomposition, Abstraction. Flowcharting, Name binding, Selection, Repetition, Modularization. Data organization: List and Arrays. Simple algorithms, comparison of performance of algorithms.
Problem Solving Techniques: Factoring and Recursion Techniques, Search and Sort techniques, Text processing and Pattern matching.