Go to Main Content

Ramapo College Information System



Catalog Entries


Fall 2013
Nov 28,2022
Transparent Image
Information Select the Course Number to get further detail on the course. Select the desired Schedule Type to find available classes for the course.

This course provides a comprehensive introduction to computer algorithms. The emphasis is on the design of efficient algorithms and data structures, proofs of their correctness, and analysis of their complexity. A number of algorithmic concepts and techniques are covered, including recursion, incremental design, divide-and-conquer, greedy algorithms, amortized analysis, and dynamic programming. The algorithms studied include sorting, searching, breadth-first search, depth-first search, minimum spanning trees, shortest paths, network flow, and string matching. Data structures studied include hash tables, heaps, binary search trees, and red-black trees. This course is meant as a follow-up to a course in data structures. Knowledge of elementary data structures such as stacks, queues, and linked lists are assumed. In addition, a module will be given on algorithms relevant to bioinformatics, which studies molecular sequence data (DNA, RNA, and protein). Much of the material learned in this course, such as graphs, trees, dynamic programming, and search algorithms apply to this new discipline.
0.000 TO 4.000 Credit hours
0.000 TO 4.000 Lecture hours

Levels: Undergraduate
Schedule Types: Lecture

Computer Science Department

Return to Previous New Search XML Extract
Transparent Image
Skip to top of page