Escolar Documentos
Profissional Documentos
Cultura Documentos
FIRST YEAR (Second Semester) GE (AH, Comm in English) GE (MST) GE (SSP) Math 53 CS 12 P.E. Lec Lab Units 3 3 3 5 2 3 3 (2) 17
GE (AH, Comm in English) GE (MST) Math 55 Physics 71 CS 140 CS 150 P.E NSTP
THIRD YEAR (First Semester) Lec Lab Units 3 4 3 3 2 3 3 3 19 SUMMER Lec Lab Units 3 3
CS 195
CS 11 Computer Programming I. Introduction to Computer Science. Problem-solving strategies. Algorithm development. Coding conventions. Debugging. Fundamental programming constructs: types, control structures, functions, I/O. Basic data structures. Corequisite: Math 17 or equivalent Credit: 3u (2lec, 3 lab)
CS 12 Computer Programming II. Advanced programming techniques. Recursion. Abstract data types: stacks, queues, linked structures. Programming interfaces. Introduction to object-oriented programming: classes, inheritance, polymorphism. Event-handling. Exception handling. API programming. Prerequisite: CS 11 Credit: 3u (2lec, 3 lab)
CS 32 Data Structures. Concepts, algorithms and applications of complex data structures: tables, trees, graphs, heaps, generalized lists, multilinked structures. Basic algorithmic techniques and analysis: sorting algorithms, hash tables, binary search trees, and balanced trees. Prerequisite: CS 12 or ES 26 or equivalent Credit: 3u
CS 30 Discrete Math for CS (formerly Math 157) Fundamentals of set theory; algebraic relations; combinatorial algorithms; algebraic structures and their applications in computer science. Prerequisite: Math 17 or equivalent Credit: 3u
CS 21 Computer Organization and Assembly Language Programming. Machine level representation of data. Assembly level machine organization. Assembly/machine language programming. Memory system organization and architecture. Interfacing and communication. Functional organization. Multiprocessing and alternative architectures. Prerequisite: CS 12 or ES 26 or equivalent Credit: 4u (3lec, 3 lab)
Survey of operating systems. Memory management: virtual memory, segmentation, paging, fetch and replacement policies. Processor and process management: scheduling, concurrency, synchronization and mutual exclusion, deadlock. Device management. Security. File systems: sequential, direct access, and indexed sequential files. Implementation of File Organization. Prerequisite: CS 21 Credit: 3u
CS 150 Programming Languages. History and overview of programming languages. Programming paradigms: imperative, functional, object-oriented, logical. Type systems. Data and execution control. Declaration and modularity. Introduction to syntax and semantics. Introduction to language translation. Prerequisite: CS 32 Credit: 3u
CS 135 Algorithm Design and Analysis. Algorithm analysis: asymptotic analysis, time and space tradeoffs, recurrence relations. Greedy, divide-and-conquer, heuristics, and other algorithm design strategies. Fundamental computing algorithms for sorting, selection, trees and graphs. Intractability and approximation. Prerequisite: CS 32 and CS 30 Credit: 3u
CS 165 Database Systems. Database concepts: data independence, architecture, models, administration, relational algebra and calculus, normalization, query optimization, concurrency, recovery. Survey of database management systems. Prerequisite: CS 135 Credit: 3u
CS 191 Software Engineering. Software engineering concepts; implementation of a software project using techniques of requirements analysis, design, testing and maintenance. Prerequisite: CS 150 and Junior Standing Credit: 3u (2 lec, 3 lab)
Vector Spaces. Linear transformations. Matrices and determinants. Ordinary differential equations and systems of ordinary differential equations; Fourier series; Laplace transforms. Prerequisite: Math 55 Credit: 3u
CS 145 Computer Networks. Network Models and layers; terminal and file transfer protocols; message handling protocols; concurrency; network interconnection; distributed computation; overview of networking and communication software. Prerequisite: CS 140 Credit: 3u (2 lec, 3 lab)
CS 180 Artificial Intelligence. Fundamental principles of artificial intelligence. Search methods. Knowledge representation and reasoning. Agents. Machine learning and neural networks. Current research applications. Prerequisite: CS 32 and Consent of Instructor Credit: 3u
CS 192 Software Engineering. Software engineering concepts; implementation of a software project using techniques of requirements analysis, design, testing and maintenance. Prerequisite: CS 191 Credit: 3u (2 lec, 3 lab)
CS 153 Introduction to Computer Security. Cryptography, network security, application security, and web security, buffer overflows, intrusion detection, packet analysis, and malware; how to design and analyze security critical systems. Corequisite: CS 145 and CS 192 Credit: 3u
CS 133 Automata Theory and Computability. Finite automata and regular expressions. Context free grammars and pushdown automata. Turing machines, Churchs thesis, complexity classes and undecidability. Prerequisite: CS 30 Credit: 3u
CS 131 Numerical Methods. Interpolation, numerical differentiation and integration, numerical solution of algebraic and transcendental equations, systems of linear equations, and ordinary and partial differential equations. Prerequisite: CS 12 and CS 130 Credit: 3u
CS 196 Seminar on Ethical and Professional Issues in Computing. Prerequisite: Senior Standing Credit: 1u