CS
205 Introduction to Computer Science |
Prerequisites:
none |
Description:
A general
introduction to computer science, this course focuses on
- informal
and formal ways of specifying what a program or program fragment
accomplishes,
- techniques
for developing algorithms to meet a given specification,
- the
expression of an algorithm in a programming language (C++),
- the
use of abstraction to "encapsulate" an algorithm or
data structure, and
- the
use of recursion in specifications and algorithms.
The
approach used by this course is best suited for (a) those wishing
to continue in computer science, mathematics, or a related field,
and (b) those wishing a detailed, theoretical understanding of computer
science. If you want a less mathematical introduction that still
counts as a prerequisite to other computer science courses, you
should consider CS 110 at Bryn
Mawr. If you do not plan to continue with computer science, and
are interested in taking a course that surveys the basic concepts,
you should consider CMSC 100.
|
Course
Materials: Fall
2001
|
Computer
Science Courses
Courses
listed in Brown are
offered at Bryn Mawr College only, those in RED are
offered at Haverford College only, those in BLACK are
offered at both colleges. See current course catalog for offering schedules.
Introductory
Courses
CS100 The
World of Computing
CS110 Introduction
to Computer Science
CS130 Foundations
of Rigorous Thinking
CS205 Introduction
to Computer Science
CS206 Data
Structures
CS231 Discrete
Mathematics
Core
Courses
CS240 Principles
of Computer Organization
CS245 Principles of
Programming Languages
CS330 Algorithms:
Design & Practice
CS340 Analysis
of Algorithms
CS345 Theory of Computation
200-Level
Electives
CS212 Computer
Graphics
CS222 Introduction
to Scientific Computing
CS235 Information
and Coding Theory
CS246 Programming
Paradigms
CS250 Computational
Models in the Sciences
Systems
Courses
CS350 Compiler
Design
CS355 Operating
Systems
Upper-level
Electives
CS320
Numerical Analysis
CS361 Emergence
CS371 Cognitive
Science
CS372 Artificial
Intelligence
CS376 Androids:
Design & Practice
CS380 Recent Advances
in Computer Science
CS393 Advanced
Topics in Computer Systems
CS394 Advanced
Topics in Discrete Mathematics
CS450 Computing
Across the Sciences