CS 374

CS 374 - Intro to Algs & Models of Comp

Spring 2021

TitleRubricSectionCRNTypeHoursTimesDaysLocationInstructor
Intro to Algs & Models of CompCS374AL165088OLC41100 - 1215 T R    Chandra Chekuri
Patrick Lin
Intro to Algs & Models of CompCS374AYA65089OD01300 - 1350 T R    Muhammad Samir Khan
Intro to Algs & Models of CompCS374AYB65090OD01400 - 1450 T R    Calvin James Beideman
Intro to Algs & Models of CompCS374AYC65091OD00900 - 0950 W F    Zhoushi Zhu
Intro to Algs & Models of CompCS374AYD65092OD01500 - 1550 T R    Iris Sun
Intro to Algs & Models of CompCS374AYE65093OD01600 - 1650 T R    Vasilis Livanos
Intro to Algs & Models of CompCS374AYF65094OD01700 - 1750 T R    Calvin James Beideman
Intro to Algs & Models of CompCS374AYG65095OD01200 - 1250 W F    Jinghan Huang
Intro to Algs & Models of CompCS374AYH65096OD01300 - 1350 W F    Timothy Zhou
Intro to Algs & Models of CompCS374AYJ65097OD01000 - 1050 W F    Shubhang M Kulkarni
Intro to Algs & Models of CompCS374AYK65098OD01100 - 1150 W F    Jinghan Huang
Intro to Algs & Models of CompCS374BL167005OLC41400 - 1515 T R    Nickvash Kani
Yi Lu
Intro to Algs & Models of CompCS374BYA67949OD00900 - 0950 W F    Junyeob Lim
Intro to Algs & Models of CompCS374BYB67951OD01200 - 1250 W F    Zhoushi Zhu
Intro to Algs & Models of CompCS374BYC67953OD01300 - 1350 W F    Emerson Sie
Intro to Algs & Models of CompCS374BYD67955OD01000 - 1050 W F    Junyeob Lim
Intro to Algs & Models of CompCS374BYE67957OD01400 - 1450 W F    Eliot Robson
Intro to Algs & Models of CompCS374BYF67959OD01700 - 1750 W F    Timothy Zhou
Intro to Algs & Models of CompECE374AL165099OLC41100 - 1215 T R    Chandra Chekuri
Patrick Lin
Intro to Algs & Models of CompECE374AYA65100OD01300 - 1350 T R    Muhammad Samir Khan
Intro to Algs & Models of CompECE374AYB65101OD01400 - 1450 T R    Calvin James Beideman
Intro to Algs & Models of CompECE374AYC65102OD00900 - 0950 W F    Zhoushi Zhu
Intro to Algs & Models of CompECE374AYD65103OD01500 - 1550 T R    Iris Sun
Intro to Algs & Models of CompECE374AYE65104OD01600 - 1650 T R    Vasilis Livanos
Intro to Algs & Models of CompECE374AYF65105OD01700 - 1750 T R    Calvin James Beideman
Intro to Algs & Models of CompECE374AYG65106OD01200 - 1250 W F    Jinghan Huang
Intro to Algs & Models of CompECE374AYH65107OD01300 - 1350 W F    Timothy Zhou
Intro to Algs & Models of CompECE374AYJ65108OD01000 - 1050 W F    Shubhang M Kulkarni
Intro to Algs & Models of CompECE374AYK65109OD01100 - 1150 W F    Jinghan Huang
Intro to Algs & Models of CompECE374BL167006OLC41400 - 1515 T R    Nickvash Kani
Yi Lu
Intro to Algs & Models of CompECE374BYA67950OD00900 - 0950 W F    Junyeob Lim
Intro to Algs & Models of CompECE374BYB67952OD01200 - 1250 W F    Zhoushi Zhu
Intro to Algs & Models of CompECE374BYC67954OD01300 - 1350 W F    Emerson Sie
Intro to Algs & Models of CompECE374BYD67956OD01000 - 1050 W F    Junyeob Lim
Intro to Algs & Models of CompECE374BYE67958OD01400 - 1450 W F    Eliot Robson
Intro to Algs & Models of CompECE374BYF67960OD01700 - 1750 W F    Timothy Zhou

Official Description

Analysis of algorithms, major paradigms of algorithm design including recursive algorithms, divide-and-conquer algorithms, dynamic programming, greedy algorithms, and graph algorithms. Formal models of computation including finite automata and Turing machines. Limitations of computation arising from fundamental notions of algorithm and from complexity-theoretic constraints. Reductions, undecidability and NP-completeness. Course Information: Same as ECE 374. Prerequisite: One of CS 173, MATH 213; CS 225.

Learning Goals

Be able to design regular expressions, finite automata or conftext free languages from a given language specification . (1), (3), (6)
Be able to prove that a given language is not regular (3)(6)
Be able to analyze the asymptotic running time of an algorithm via sums and recurrences (3)(6)
Model an algorithmic problems via graphs and apply appropriate graph algorithm to yield a solution (1)(3)(6)
Given problem specification, design efficient algorithms via techniques such as recursion, divide and conquer, dynamic programming and greedy (1)(3)(6)
Be able to prove the correctness of an algorithm by induction or via reductions (3)(6)
Prove NP-hardness via polynomial-time reductions from known NP-hard problems (3)(6)
Prove a language undecidable via reduction from known undecidable problems such as Halting. (3)(6)

Topic List

LANGUAGES and AUTOMATA

  • Strings and languages
  • Finite automata (DFA, NFA) and regular expressions
  • Context free grammars and languages

ALGORITHMS

  • Recursion, Divide and conquer, Backtracking
  • Dynamic programming
  • Greedy
  • Basic graph algorithms: reachability, BFS, DFS, shortest paths, MST, modeling via graphs

NP Completness

  • Polynomial-time reductions, P, NP, NP-Complete, NP-Hard

Turing Machines (TMs)

  • Universal TM, RAM, decidability, undecidability, Church-Turing thesis

Required, Elective, or Selected Elective

Required

Last updated

3/26/2019by Elsa Gunter