| Course Name | Concepts Covered | Year Covered | Prerequisites |
|---|---|---|---|
| Introduction to Programming | Programming fundamentals, variables, control structures, functions, basic problem solving, introduction to a programming language (Python/Java) | Year 1, Fall | None (entry-level course) |
| Object-Oriented Programming | Classes, objects, inheritance, polymorphism, encapsulation, abstract data types, basic data structures (arrays, lists) | Year 1, Spring | Introduction to Programming |
| Discrete Mathematics | Logic, sets, functions, relations, graph theory, combinatorics, mathematical induction, proof techniques | Year 1-2 | Calculus I (may be concurrent) |
| Data Structures & Algorithms | Big O notation, time/space complexity, linked lists, stacks, queues, trees, hash tables, sorting algorithms, searching algorithms | Year 2, Spring | Object-Oriented Programming, Discrete Mathematics |
| Computer Architecture | Assembly language, CPU design, memory hierarchy, instruction sets, hardware-software interface, performance analysis | Year 2, Fall | Data Structures, Calculus II |
| Algorithm Analysis | Advanced complexity theory, divide-and-conquer algorithms, dynamic programming, greedy algorithms, graph algorithms, NP-completeness | Year 3, Fall | Data Structures & Algorithms, Linear Algebra |
| Operating Systems | Process management, memory management, file systems, concurrency, synchronization, system calls, performance optimization | Year 3, Spring | Computer Architecture, Algorithm Analysis |
| Database Systems | Relational model, SQL, query optimization, indexing, transaction processing, concurrency control, database design | Year 3, Fall/Spring | Data Structures & Algorithms |
| Computer Networks | Network protocols, TCP/IP, routing algorithms, network security, distributed systems, performance analysis | Year 3-4 | Operating Systems, Probability/Statistics |
| Software Engineering | Software development lifecycle, design patterns, testing methodologies, version control, project management, code quality metrics | Year 3-4 | Data Structures & Algorithms, database experience |
| Machine Learning | Supervised/unsupervised learning, neural networks, optimization algorithms, statistical learning theory, complexity analysis of ML algorithms | Year 3-4 | Linear Algebra, Probability/Statistics, Algorithm Analysis |
| Compiler Design | Lexical analysis, parsing, semantic analysis, code generation, optimization techniques, complexity of compilation phases | Year 4 | Algorithm Analysis, Programming Languages Theory |
| Senior Capstone | Independent project, research methodology, advanced algorithm implementation, performance evaluation, technical writing | Year 4, Fall/Spring | Major coursework completion, advisor approval |
Created
September 23, 2025 18:01
-
-
Save stevebrownlee/a14dfb94583a65f1dd9885a5e8db74ab to your computer and use it in GitHub Desktop.
overview of CS degrees
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment