 | |  |  |  |  Home»Undergraduate Education»Courses»Undergraduate Course Descriptions»CSE101
|  | |  |  | Undergraduate Course Descriptions
CSE101 - Design and Analysis of Algorithms
Units: 4
Course Objectives: Algorithmic problems arise in almost every area of computer science. This
course exposes students to a variety of algorithms for problems from various domains.
Particular emphasis is on the most basic problems, those that arise in many different
applications, such as sorting, graph search, or finding the minimum spanning tree.
Students should learn how the speed of algorithms greatly impact their utility. They
should learn elementary mathematical techniques to analyze algorithms for correctness,
time complexity, and memory use. They should become familiar with the most efficient
algorithms for the basic problems. They should learn the most useful methods for
designing efficient algorithms, and know how to apply them to new problems.
NOTE: Repeat credit process for cross-reference courses: Students may receive
credit for CSE 101 or Math 188. These courses have been cross-referenced, therefore,
a petition is not required for using either course when completing major requirements.
However, if you fail one of the courses listed about you should take the SAME COURSE
for REPEAT CREDIT. If you use another course that is equivalent, the repeat credit is
not automatic and you will need to petition for repeat credit.
Course Description: Design and analysis of efficient algorithms with emphasis of non-numerical
algorithms such as sorting, searching, pattern matching, and graph and network algorithms.
Measuring complexity of algorithms, time and storage. NP-complete problems.
Format: 3 hours of lecture per week, 1 hour of discussion section, and 8 hours of outside
preparation.
Prerequisites: CSE 12, CSE 21or Math 15B or Math 100A or Math 103A and CSE 100 or Math 176
Other restrictions: Majors only. Credit not offered for both Math 188 and CSE 101. Equivalent to Math 188
Example Textbook(s): Introduction to Algorithms, by Cormen, Leiserson, and Rivest.
Laboratory work: Most of the course will be mathematical. However, depending on the instructor,
there may additionally be laboratory projects, requiring the students to implement
algorithms and compare their actual performance to their mathematical analysis.
Offered: Every quarter: Fall, Winter, and Spring.
 |  |  | back to top ^ |
 |
|  |