COMP 1003: Foundation of Computing

COMP 1003

Skills Developed

  • Python programming and data structures
  • Algorithm design and analysis
  • Abstract data type implementation
  • Theory of computing concepts
  • Machine architecture understanding
  • Digital circuit design basics


Course Contents

  • Algorithms and Data Structures:
  • Python data structures and algorithms
  • Abstract data types (using and creating)
  • Sorting and searching algorithms
  • Fundamental data structures and their performance


  • Theory of Computing:
  • Formal languages and their descriptions
  • Abstract machines (finite state automata, Turing machines)
  • Computability and intractability concepts


  • Machine Architecture:
  • Information representation (characters, integers, floating-point numbers)
  • Machine language programming
  • Boolean logic and circuit models
  • Combinational and sequential circuits


  • Programming Concepts:
  • Python data model
  • Recursion techniques
  • Stacks and queues implementation


  • Number Systems and Representation:
  • Binary, octal, and hexadecimal number systems
  • Floating-point representation