This is not the current CS/ECE-374-B site. I have received many emails asking for my past course materials (mostly my lectures and exams) so I am keeping this site alive as a repository of the content I created during my tenure as a ECE374 instructor. I also spent a year learning Jekyll to create course website that is simple, clean, and lightweight on the front-end and is easy to update on the backend. I invite any professors to contribute to this effort and feel free to email me with any suggestions.


One of the most important things I've learned teaching a large course is that one's success is predicated on the abilities of the company he/she keeps and I have been very lucky to have great company. In particular I would like to thank Sariel Har-Peled for guiding my through this course my first semester. He is one of the most under-rated professors in UIUC and a large part of my teaching is based on what I learned from him. Andrew Miller is also an awesome instructor and the semesters I've taught with him have definitely been my favorite. I would also like to thank my amazing graduate and undergrdauate teaching assistants that have shown so much dedication to the students and helped prop me up even when I was completely overwhelmed. Teaching assistants make or break the course and these guys definitely made it.

Course Description CS/ECE 374 covers fundamental tools and techniques from theoretical computer science, including design and analysis of algorithms, formal languages and automata, computability, and complexity. Specific topics include regular and context-free languages, finite-state automata, recursive algorithms (including divide and conquer, backtracking, dynamic programming, and greedy algorithms), fundamental graph algorithms (including depth- and breadth-first search, topological sorting, minimum spanning trees, and shortest paths), undecidability, and NP-completeness. The course also has a strong focus on clear technical communication.

Forum (Piazza) Submit HWs (Gradescope) Gradebook (Canvas)

News

Older posts…

Schedule Quicklinks

August SunMonTueWedThuFriSat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
September SunMonTueWedThuFriSat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
October SunMonTueWedThuFriSat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
November SunMonTueWedThuFriSat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
December SunMonTueWedThuFriSat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

People

Faculty

Nickvash Kani

Historical Co-instructors

Sariel Har-Peled
Andrew Miller
Chandra Chekuri
Abhishek Kumar Umrawal

Alumni Graduate Teaching Assistants

Sung Woo Jeon
Sindhu Vydana
Sandhya Perumenki
Sumedh Vemuganti
Weiyang Wang
Ziheng (Jack) Chen
Yueyi Shen
Haoyuan You
Hongbo Zheng
Nicholas Bampton
Gautham Varma
Jason Zhu
Nitin Balachandran
Haochen Shen
Zhongweiyang Xu
Emerson Sie
Junyeob Lim
Jinghan Huang

Alumni Undergraduate Teaching Assistants

Ayu Seiya
Qing Wang
Mike Montano
Hamza Husain
Keerthana Nallamotu
Raghav Pramod Murthy
Raghav Pramod Murthy
Ved Eti
Brian Kim
Vishesh Prasad
Owen Xu
Anirudh Kumar
Siddhant Nanavati
Chris Deng
Ifesi Onubogu
Sarthak Kamboj
Max Shepherd
Kaifeng Lin
Zikui Wang
Jeep Kaewla
Kevin Lim
Rubin Zou
Xiangcan Li
Vaibhav Gupta
Prakarsh Gupta
Kunal Bhargava
Max Kopinsky