Virginia Tech® home

Course Overlap

This table lists courses with significant overlap. Thus, you may only count one of the listed courses toward any given degree. A typical situation is a 4000-level and a 5000-level course on the same topic. If you took the 4000-level course toward an undergraduate degree (here or elsewhere), you may take and count the 5000-level course toward your graduate degree here. But you may not take both courses and count them toward the same degree. There are also 5000-level and 6000-level courses that overlap, especially with older courses that are being phased out.

There are two special cases. If you took and passed CS3114 at Virginia Tech, then you may not count CS5040 toward any graduate degree. Likewise, if you took and passed CS3304, then you may not count CS5314.


Course name Course name
CS3114: Data Structures & Algorithms   CS5040: Intermediate Data Structures  
CS4104: Data and Algorithm Analysis   CS5114: Theory of Algorithms  
CS4234: Parallel Computation   CS5234: Advanced Parallel Computation  
CS4304: Compiler Design and Implementation   5304: Translator Design and Construction  
CS3304: Comparative Languages  CS5314: Programming Languages 
CS4254: Computer Network Architecture and Programming CS5565: Network Architecture and Protocols (ECE)  
CS4264: Principles of Computer Security    CS5584: Network Security (ECE)  
CS4604: Introduction to Data Base Management Systems CS5614: Database Management Systems  
CS4804: Introduction to Artificial Intelligence    CS5804:    Introduction to Artificial Intelligence  
CS6524: Deep Learning CS5814: Introduction to Deep Learning  
CS4824: Machine Learning CS5824: Advanced Machine Learning  
CS4824: Machine Learning CS5805: Machine Learning I  
CS5525: Data Analytics I CS5805: Machine Learning I  
CS5824: Advanced Machine Learning CS5806: Machine Learning II