Introduction to Computer Science with Applications
Overview of Computer Science
C for Programmers
Ada Overview
Discrete Structures
Fundamentals of Computer Science I
Fundamentals of Computer Science II
Logical Design and Digital Circuits
Numerical Methods
Introduction to Computer Architecture
Computer Architecture Laboratory
Assembly Language Programming
Computer Operating System
Algorithms and Data Structures
Programming Languages: Survey, Design and
Implementation
Compiler Construction
Computational Modeling
Projects in Computer Science (1)
Projects in Computer Science (2)
Special Studies
Unix and C++
Introduction to Artificial Intelligence
Introduction to Automata Theory
Computing, Ethics, and Society
Principles of Database Management
Introduction to Computer Graphics
Principles of Data Communication
Methods of Random Process
Design and Analysis Experiments
Linear Programming
Software Engineering: Theory and Practice
Computer Science Intership I
Computer Science Intership II
Themes of Computer Science
Mathematical Logic
Logic Application to Software
Computability
Algorithms I: Sorting and Searching
Algorithms II: combinatorial Algorithms
Analysis of Algorithms and Complexity Theory
Advanced Data Structures
Formal Languages, Grammars and Automata
Database Design II
Computer Modeling
Quantitative Approaches to Decision Making
Compiler Construction II
Survey of Programming Languages
Design of Programming Languages
Database Design
Database Laboratory
Advanced Operating Systems Design
Compiler Construction
Compiler Construction Laboratory
Conbinatorics and Graph Theory
Numerical Methods I: Analysis
Numerical Methods II: Linear Algebra
Computer Graphics
Artificial Intelligence I
Artificial Intelligence II
Natural Language Processing
Pattern Recognition
Robotics
Expert Systems
Computer Vision
Logic Design and Switching Theory
Real-Time Systems
Computer Communication Networks and Distributed
Processing
Computer Organization I
Computer Organization II
Seminar: Special Topics
Independent Projects
Thesis (1)
Thesis (2)