COMPUTER SCIENCE 261
COMPUTER SCIENCE II

I. Introduction

A. Catalog Description

This course is a continuation of the topics introduced in CSci161. It provides an introduction to the study of fundamental data structures and their associated algorithms. One of the goals of this course is to teach students how to choose the appropriate data structures and algorithms for a paticular problem. Topics include lists, stacks, queues, trees, sorting, searching, abstract data types, and object- oriented programming using C++. Prerequisites: CSCI 161 together with MATH 121 or 258; or permission of the instructor. Satisfies the Mathematical Reasoning core requirement.

B. Objectives

C. Prerequisites

II. Required Topics

A. Program Design

B. Simple Data Structures

C. Arrays, Searching and Sorting

D. Linked Lists

E. Queues and Stacks

F. Trees

H. Programming Tools

I. Analysis of Algorithms

J. Program Verification

K. Recursion

III. Optional Topics

A. Strings

B. Graphs

C. Hash Tables

IV. Bibliography

COMPUTER SCIENCE 261 COMPUTER SCIENCE II Page