UCSD Main WebsiteUCSD Jacobs SchoolDepartment of Computer Science and Engineering
About CSECSE PeopleFacultyGraduate EducationUndergraduate EducationDepartment AdministrationContact CSE
spacer gif
spacer gif
CSE People
spacer gifspacer gif
spacer gif
plus signspacer gifDegree Programs
spacer gif
plus signspacer gifAdmissions
spacer gif
minus signspacer gifCourses
spacer gifspacer gifThis Year Schedule
spacer gifspacer gifNext Year Schedule
spacer gifspacer gifCourse Descriptions
spacer gifspacer gifClass Home Pages
spacer gifspacer gifEnrollment Status
spacer gifspacer gifEnrollment Restrictions
spacer gif
plus signspacer gifAdvising
spacer gif
plus signspacer gifFinancial Opportunities
spacer gif
spacer gifspacer gifResources
spacer gif
spacer gifspacer gifUndergraduate Program FAQ
spacer gif
spacer gif
spacer gif
Search
spacer gifspacer gifspacer gif
 
 
Google
spacer gifspacer gif
spacer gif
spacer gif
spacer gif

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 ^
spacer gif
spacer gif
spacer gif
9500 Gilman Drive, La Jolla, CA 92093-0404
spacer gif
About CSE | CSE People | Faculty & Research | Graduate Education | Undergraduate Education
Department Administration | Contact CSE | Help | Search | Site map | Home
webmaster@cs.ucsd.edu
Official web page of the University of California, San Diego
Copyright © 2003 Regents of the University of California. All rights reserved.
spacer gif