Suggested Sequence Documents
CS Major Requirements and Prerequisites Structure (College Core Version) (For students who entered the CS major at TCNJ in Fall 2023 or later semesters)
CS Major Requirements and Prerequisites Structure (Liberal Learning Version) (For students who entered the CS major at TCNJ prior to Fall 2023).
Program Planners and other resources can be found on the Advising Resources webpage.
Required Core Courses (two course units)
Required Advanced Core Courses (seven course units)
- CSC 315: Database Systems or CSC 360: Computer Networking (for students entering the major in Fall 2019 or later)
- CSC 325: Computer Architecture
- CSC 335: Analysis of Algorithms
- CSC 345: Operating Systems
- CSC 415: Software Engineering
- CSC 435: Programming Languages or CSC 445: Theory of Computation
- CSC 399: Internship or CSC 498: Mentored Research I in Computer Science
Computer Science Options (three course units)
Select three courses from the following list. Students may take additional options courses for free elective credit.
- CSC 307: Data Mining and Predictive Modeling
- CSC 315: Database Systems (if not taken as part of advanced core by students entering the major in Fall 2019 or later)
- CSC 320: Information Retrieval (cross listed as IMM 320)
- CSC 350: Computer Graphics
- CSC 355: Human Computer Interaction
- CSC 360: Computer Networking (if not taken as part of advanced core by students entering the major in Fall 2019 or later)
- CSC 380: Artificial Intelligence
- CSC 425: Compilers and Interpreters
- CSC 426: Machine Learning
- CSC 427: Natural Language Processing
- CSC 435: Programming Languages (if not taken as part of advanced core)
- CSC 445: Theory of Computation (if not taken as part of advanced core)
- CSC 448: Algorithms in Computational Biology
- CSC 450: Computer and Network Security
- CSC 470: Topics in Computer Science
- CSC 471: Genomics and Bioinformatics (same as BIO 470 when the topic is Genomics and Bioinfomatics)
One additional capstone course or independent study from the following list may be chosen, with advisement and departmental approval, and applied towards the CS Options. Also see the Suggested Sequence.
Capstone Courses
- CSC 399: Internship in Computer Science
- CSC 498: Mentored Research I in Computer Science
- CSC 499: Mentored Research II in Computer Science
- CSC 391: Independent Study in Computer Science with departmental approval.
Students may take additional Computer Science Options courses, including capstone courses and independent study, for free elective credit.
Required Mathematics Courses (four course units)
Computer Science Natural Science and Mathematics Options
Students who entered the major prior to Fall 2019 must take three major-level laboratory sciences and one additional math or science course (with advisement).
Students who enter the major in Fall 2019 must take two major-level laboratory sciences.
See Math and Science Correlate Requirements for more information on courses that meet the math and science requirements. Consult the department for additional details.
World Language Requirements (two or three course units)
Two courses in sequence in any of the modern languages are required if students opt for a language not previously studied in high school or another institution.
Alternatively, students continuing a foreign language previously taken in high school or at another institution must take three courses of that language in sequence. This requirement may be reduced by taking a placement test in that language. Based on the student’s performance on that test, 0, 1, 2, or 3 courses may be required.
Consult the department for details.
Note: Arabic 151 and 152: Chinese 151 and 152; Japanese 151 and 152; Persian 151 and 152; and Russian 151 and 152 are intensive courses and carry two course units of credit each. Students should take this into account when planning a normal four-course semester.
Additional Requirements/Information
- Liberal Learning/College Core Requirements are as per College requirements
- Process for Switching Into or Adding the CS Major – “Transfer Into / Add Computer Science” for requirements and process for adding the Computer Science major.