Introduction to Computer Science


No class information available.


Intensive introduction to computer science. Problem solving through decomposition. Writing, debugging, and analyzing programs in Java. Algorithms for sorting and searching. Introduction to data structures, recursion.

Credits: 4

Prerequisite: 01:640:115 or placement in CALC1. Credit not given for this course and 14:330:252.

Please note that courses for which a student has received a grade of D cannot be used to satisfy prerequisite requirements.

Semesters Offered:

Spring, summer and fall

SAS Core Curriculum Met by this Course:

QQ, QR and ITR


Programming process: problem analysis, program design, algorithm construction, coding, testing/debugging.
Object-oriented programming using the Java language.
Test case construction, driver development.
Introduction to data structures (arrays, linked lists).
Efficiency analysis (algorithm complexity).
Exception handling.
Inheritance and polymorphism.

Expected Work:

12 weekly programming assignments.
Weekly lab exercises in recitation.


4 programming exams (given on weekends), 1 written final exam

Department Learning Goals:

Computer Science majors ...
  • will be prepared to contribute to a rapidly changing field by acquiring a thorough grounding in the core principles and foundations of computer science (e.g., techniques of program design, creation, and testing; key aspects of computer hardware; algorithmic principles).
  • will acquire a deeper understanding on (elective) topics of more specialized interest, and be able to critically review, assess, and communicate current developments in the field.
  • will be prepared for the next step in their careers, for example, by having done a research project (for those headed to graduate school), a programming project (for those going into the software industry), or some sort of business plan (for those going into startups).

How to request an SP number if this course is full:

Select A Course