CS 141 - Intermediate Data Structures and Algorithms
Time: Section 001: M W F - 1:00 PM to 1:50 PM
Section 002: M W F - 5:00 PM to 5:50 PM
Location:
Section 001: Winston Chung Hall - Room 143
Section 002: Winston Chung Hall - Room 143
Instructor: Amr Magdy - - Office Hours: 159B Tomas Rivera Library - Monday & Wednesday 2:00 PM - 4:00 PM
TA: Mayur Patil - Office Hours: WCH 110 WCH - Tuesday 9:00 - 11:00 AM
Tanmay Shah - Office Hours: 110 WCH - Tuesday 2:00 - 3:00 PM
Textbook: Introduction to Algorithms - Third Edition by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein - ISBN 9780262033848 Amazon- UCR Bookstore - MIT Press
Click HERE for Teaching Feedback form
Syllabus
CS 141 provides the basic background for a computer scientist in the area of algorithms analysis, design, and advanced data structures. During this course, students will learn problem solving skills, how to analyze and compare different solutions, and how to apply them in computational problems. The topics that will be covered include:
- Algorithms analysis (asymptotic notation & recurrence relations)
- Divide-and-conquer algorithms
- Greedy algorithms
- Dynamic programming
- Graph data structures and algorithms
- Advanced topics in algorithms analysis and design: NP-Completeness
Grading and Policies
- Class participation (3%)
- Four homework assignments (30%)
- Two mid-term exams (33%)
- Final inclusive exam (34%)
- Unless mentioned otherwise, late submission allowed for 20% penalty for a calendar day.
- Assignments should be computer-typed.
- Cheating is not allowed and will be reported
- If you are using any external source, you must cite it and clarify what exactly got out of it.
- You are expected to understand any source you use and solve problems in your own.
Course work
Delivery policies
Schedule