Skip to Content

Prerequisites for CSE Undergraduate Classes

CSE Courses, Effective Spring 2013

CSE Course Title Prerequisite Notes
CSE 3 Fluency in Information Technology None
 
 
CSE 4GS Mathematical Beauty In Rome Lab Math 10A or Math 20A.Co-requisite with CSE 6GS  
CSE 5A

Introduction to Programming I

A familiarity with high-school level algebra is expected, but this course assumes no prior programming knowledge.  
CSE 6GS Mathematical Beauty in Rome Lab Math 10A or Math 20A. Co-requisite with CSE 4GS.  
CSE 7 Intro to Scientific Computation and Programming    
CSE 8A

Introduction to Computer
Science: Java

Co-requisite of CSE 8AL  
CSE 8AL Introduction to Computer Science: Java Lab High School Algebra  
CSE 8B Introduction to Computer Science: Java CSE8A (pending)  
CSE 11 Introduction to Computer Science and Object-Oriented Programming: Javva High school algebra and a course in programming in a compiled language  
CSE 12 Basic Data Structures and Object-Oriented Design CSE 8B or CSE 11, co-requisite of CSE 15L  
CSE 15L Software Tools and Techniques Laboratory CSE 8B or CSE 11, co-requisite of CSE 12  
CSE 20 Discrete Mathematics CSE 8A or 8B or CSE 11.  CSE 8B or
CSE 11 may be taken concurrently with CSE 20/Math 15A.
Equivalent to Math 15A
 
CSE 21  Mathematics for Algorithm and Systems  CSE 20 or Math 15A. Credit not offered for both Math 15B and CSE 21. Equivalent to Math 15B  
CSE 30 Computer Organization and Systems Programming CSE 12, CSE 15L  
CSE 80 UNIX Lab CSE 8B or CSE 11  
CSE 86 C++ for Java Programmers CSE 12  
CSE 87 Freshman Seminars None  
CSE 90 Undergraduate Seminar Instructor permission is required  
CSE 91 Perspective in Computer Science and Engineering None  
CSE 92 Fundamental Ideas in CSE CSE 12  
CSE 99 Independent Study in Computer Science and Engineering Lower division standing.  Completion of 30 units at UCSD with a UCSD GPA of 3.0.  Special Studies Form required.  Department stamp required.  Consent of the instructor and approval of the department.  
CSE 100 Advanced Data Structures CSE 12, and 21 or Math 15B  
CSE 101 Design and Analysis of Algorithms CSE 12, CSE 21or Math 15B or Math 100A or Math 103A and CSE 100 or Math 176  
CSE 102 File and Storage Structures CSE 100 or Math 176, CSE 120, CSE 123A  
CSE 103 A Practical Introduction to Probablilty and Statistics Math 20A, Math 20B  
CSE 104 Computational Linear Algebra Math 20C  
CSE 105 Theory of Computability CSE 12 and CSE 21 or Math 15B or Math 100A or Math 103A  
CSE 107 Introduction to Modern Cryptography CSE 21 or Math 15B, CSE 101 or Math 188, CSE 105 or Math 166.  
CSE 110 Software Engineering CSE 12, CSE 21 or Math 15B  
CSE 111 Object Oriented Software Design CSE 70 or CSE 110  
CSE 112 Advanced Software Engineering CSE 111  
CSE 118 Ubiquitous Computing Successful completion of a major project course, including: CSE 131B, CSE 132B, Cog Sci 102C, Cog Sci 121, Cog Sci 184, ECE 111, ECE 118, ECE 191, ECE 192, COMT 111B, COMT 115, or ICAM 160B.   Other project courses, experience, or accomplishments may be petitioned.   
CSE 120 Principles of Computer Operating Systems  CSE 30, CSE 101 or Math 188, and CSE 70 or CSE 110  
CSE 121 Operating Systems: Architecture and Implementation CSE 120  
CSE 123 Computer Networks CSE 120  
CSE 124 Networked Services CSE 120  
CSE 125 Software System Design and Implementation Senior standing with substantial programming experience, and consent of instructor  
CSE 127 Introduction to Computer Security CSE 21 or Math 15B, and CSE 120  
CSE 128 Concurrency CSE 120  
CSE 130 Programming Languages: Principles and Paradigms CSE 12, CSE 21 or Math 15B, CSE 100 or Math 176, CSE 105 or Math 166  
CSE 131 Compiler Construction CSE 100 or Math 176, CSE 105 or Math 166, CSE 130, and CSE 70 or 110.  
CSE 132A Database System Principles CSE 100 or Math 176  
CSE 132B Database System Applications CSE 132 or CSE 132A  
CSE 134A Web Server Languages CSE 100 or Math 176  
CSE 134B Web Client languages CSE 100 or Math 176  
CSE 135 Server-side Web Applications CSE 100 or Math 176  
CSE 136 Enterprise-Class Web Applications CSE 135  
CSE 140 Components and Design Techniques for Digital Systems CSE 20 or Math 15A, and co-requisite with CSE 140L  
CSE 140L Digital Systems Laboratory CSE 20, and CSE 140 is a co-requisite  
CSE 141 Introduction to Computer Architecture CSE 140, CSE 140L. CSE 141L should be taken concurrently  
CSE 141L Project in Computer Architecture CSE 140, CSE 140L and CSE 110.CSE 141 should be taken concurrently  
CSE 142 Advanced Digital Logic Design CSE 140, CSE 140L   
CSE 143 Microelectronic System Design CSE 140, CSE 141  
CSE 144 Computer-Aided Design of VLSI Circuits  CSE 140, CSE 140L  
CSE 145 Embedded System Design Project    
CSE 146 Introduction to Reliable Hardware CSE 140 and CSE 140L  
CSE 148 Advanced Processor Architecture Design Project CSE 141 and CSE 141L  
CSE 150 Introduction to Artificial Intelligence: Search and Reasoning CSE 100 or Math 176  
CSE 151 Introduction to Artificial Intelligence CSE 100 or Math 176  
CSE 152 Introduction to Computer Vision  Math 20F, CSE 100 or Math 176, CSE 101 or Math 188. Knowledge of C, C++ or Matlab programming  
CSE 153 Cognitive Modeling CSE 100 or Math. 176  
CSE 155 Computer Vision and Machine Learning Consent of instructor  
CSE 160 Introduction to Parallel Programming CSE 100 or Math 176  
CSE 166 Image Processing Math 20F, and CSE 100 or Math 176  
CSE 167 Computer Graphics CSE 100, or Math 176  
CSE 168 Computer Graphics II: Rendering CSE 167  
CSE 169 Computer Animation CSE 167  
CSE 181 Molecular Sequence Analysis CSE 100 or Math 176, CSE 101 or Math 188, BIMM 100 or Chem 114D  
CSE 182 Biological Databases CSE 100 or Math 176  
CSE 184 Computational Molecular Biology BIOINF 181 and BIOINF 182  
CSE 190 Topics in Computer Science and Engineering Prerequisites vary per course per instructor. Department stamp required  
CSE 191 Seminar in Computer Science and Engineering Consent of Instructor  
CSE 192 Senior Seminar Upper division standing; department stamp and/or consent of instructor   
CSE 195 Teaching Department stamp required  
CSE 197 Field Study in Computer Science and Engineering Consent of the instructor and approval of the department. Department stamp required. An application for Special Studies must be filed with the Registrar's office after approval from the instructor and the department chair.  
CSE 198 Directed Study Group Consent of instructor. Department stamp required. An application for Special Studies must be filed with the Registrar's Office after approval from the instructor and the department chair.  
CSE 199 Independent Study for Undergraduates Consent of instructor. Department stamp required. An application for Special Studies must be filed with the Registrar's Office after approval from the instructor and the department chair.  
CSE 199H CSE Honors Thesis Research for Undergraduates Admission to the CSE Department Honors program