Want to learn more about a particular course? Click here!
Instructions: First select all the courses you have taken, then hit "Submit" to show all CS courses you can take!
To make selecting courses easier, you can search for courses, and you can choose to automatically select course prerequisites.
Tip! Hoping to take a specific course? Search for it to see what prerequisites you'll have to take first!
Courses in italics are part of the Computer Science Core and are required for all Computer Science majors.
Different major options have additional required courses, which you can view in the catalog.
This site is not official, and courses are subject to change at any time. For official course listings, view the catalog.
Credits | Course Code | Title | Prerequisites | |
---|---|---|---|---|
4 | BIOL241 | Basics of Life | ||
3 | CMST191 | Introduction to Public Speaking | ||
3 | CMST192 | Introduction to Speech Communication | ||
4 | ENG111 | College Reading and Writing | ||
4 | MATH120 | Precalculus | ||
3 | MATH140 | Applied Calculus | ||
4 | MATH212 | Calculus I | MATH120 | |
4 | MATH213 | Calculus II | MATH212 | |
3 | STAT210 | Statistics | MATH140 or MATH212 | |
3 | CS101 | Exploring Creative Computing | ||
4 | CS234 | Algorithms and Problem Solving I | ||
4 | CS250 | Algorithms and Problem Solving II | CS234, MATH120 | |
4 | CS275 | Mathematical Foundations of Algorithms | CS234, MATH120 | |
4 | CS313 | Networking and Telecommunications | CS250, CMST191 | |
4 | CS341 | Data Structures | CS250, CS275 | |
3 | CS344 | Introduction to Web Programming | CS250 | |
3 | CS345 | Mobile Application Development | CS250 | |
1-3 | CS366 | Topics in Emerging Computing Technologies | CS250 | |
4 | CS368 | Introduction to Bioinformatics | CS250, BIOL241 | |
4 | CS375 | Computer Systems | CS250 | |
4 | CS385 | Applied Database Management Systems | CS250, ENG111 | |
3 | CS405 | Operating Systems | CS341, CS375 | |
4 | CS410 | Software Engineering | CS341, CS313, CS385, ENG111 | |
3 | CS413 | Advanced Networking and Telecommunications | CS313, CS375 | |
3 | CS415 | Principles of Programming Languages | CS341 | |
3 | CS420 | Computer Architecture | CS375 | |
3 | CS423 | Computer and Network Security | CS313 or CS375 | |
3 | CS430 | Computer Graphics | CS341 | |
3 | CS433 | Digital Image Processing | CS341, MATH213 | |
3 | CS435 | Theory of Computation | CS341 | |
3 | CS440 | Theory of Algorithms | CS341 | |
3 | CS444 | Human Computer Interaction | CS341, CS344 or CS345 | |
3 | CS445 | Artificial Intelligence | CS341 | |
3 | CS447 | Machine Learning | CMST191, CS341, MATH212 or MATH140 | |
3 | CS465 | Topics: Deep Learning | CS341 | |
3 | CS466 | Topics: General Computing Applications: Cyber Security | CS341 | |
3 | CS476 | Distributed Systems: Concepts and Design | CS405 | |
3 | CS485 | Database Systems Design | CS341, CS385 | |
3 | CS495 | Computer Science Research Seminar | ENG111, CS341 | |
3 | PHYS332 | Digital Circuts | CS250 | |
3 | PHYS333 | Microprocessor Electronics | PHYS332 |