CS 312 Design and Analysis of Algorithms
Fall 2021
Nazar Khan

Algorithms lie at the heart of Computer Science. The journey from a problem to its algorithmic solution can be messy. It involves two stages:

  1. extracting the mathematically clean core of the problem, and
  2. identifying the appropriate algorithm design technique based on problem structue

This course introduces algorithms as a process of crisply understanding problems and designing efficient solutions.

CS 312 is an undergraduate course worth 3 credit hours.

Lectures:
Morning Section: Tuesday and Thursday, 8:15 a.m. - 9:45 a.m.
Afternoon Section: Tuesday and Thursday, 1:00 p.m. - 2:30 p.m.
Office Hours: Thursday, 10:00 a.m. - 11:00 a.m.
TA: Adeela Islam (phdcsf20m004@pucit.edu.pk)

Grading:

Assignments

15%

Quizzes

10%

Mid-Term

35%

Final

40%

Prerequisites

  1. Data Structures

Text

  1. Algorithm Design by Jon Kleinberg and Éva Tardos