Courses numbered 399 and below may be taken for undergraduate credit only. Courses numbered 400 through 699 may be taken by either undergraduate or graduate students. Courses numbered 700 or above are intended only for graduate students, but may be taken for course credit with the approval of the instructor and may be used as an Elective for the Computer Sciences major.
Have a look at current class home pages for more detailed information about CS courses, such as syllabi.
CS 302 is the first course for students intending to major in Computer Sciences. It is presently taught in Java. Unless a student has a good understanding of Java, it is strongly recommended that a student take CS 302 before taking CS 367.
CS 252 is a pre-requisite for CS 354 and CS 352, both of which are required for the Computer Sciences major. Students planning to major in Computer Sciences are advised to take CS 252 as early as possible, since CS 354 is a pre-requisite for many of the upper-level CS courses.
CS 310 and CS 412 cover similar topics, with CS 412 being at a more advanced level. Engineering students who plan to do a double major in Computer Sciences should take CS 412 rather than CS 310, since CS 310 does not count towards the Computer Sciences major.
New material is offered regularly in sections of CS 638; before selecting what to take during any semester, Computer Sciences majors should always check into what is currently being offered in these special topics courses.
Most, but not all, CS courses carry Natural Sciences credit.