Link Search Menu Expand Document

Office Hours

  • Office hour schedule can be found on the Canvas calendar.
  • All office hours will take place on Nooks.
  • There are two types of office hours described below.

    Homework Parties
    These office hours are designed to be a larger scale collaborative experience with you all working together! During homework parties, enter the room in Nooks that is labeled for the problem you want to work on. Other students will be there and you all are encouraged to collaborate and work together on the problems. During this time, CAs will be moving around between the rooms to answer questions and provide guidance. You are welcome and encouraged to use these Homework rooms outside of the official Homework Parties when CAs will be around.
    Regular Office Hours
    CAs will open up their CA Room with a queue on Nooks and you can join the queue to wait to ask questions, different CAs may have different ways of working through their queue (i.e., in groups or 1 at a time). If the room starts getting too crowded, the CA may group people together (i.e., those who need help with problem 1) and ask them to switch rooms so that students can work together while waiting for the CA to get to their questions.

Staff Contact

  • The best way to reach the staff is by making a private post on Ed.
  • You may also reach us by email at (this mailing list is monitored by the Student Liaison) with any questions or concerns that you do not wish to post on Ed.


Moses Charikar

I grew up in Bombay (now Mumbai), India. I did my undergraduate studies at IIT Bombay and came to Stanford as a PhD student. After graduating, I spent a year in the research group at Google, and 14 years on the faculty at Princeton before coming back to Stanford in 2015. I study algorithms for situations where either the problem is too hard to solve exactly, or the data is too big to fit in memory and we have to cut corners somewhere. During the pandemic, I’ve been brushing up the tennis skills I picked up as a student many years ago and had been gathering dust since.

Nima Anari

I grew up in Tehran, Iran. I studied math and computer science at Sharif university there, until I moved to the bay area for grad school at UC Berkeley. Now, I live with my spouse on the edge of Stanford campus. For fun, I like to go biking, and this year I started gardening in the back yard. The first time I learned material equivalent to CS 161 initially was to compete in programming contests, but since then algorithms have shaped my career. The most fun aspect of algorithms for me is that they give you a new viewpoint: a computational lens on a wide range of things from markets, to biological systems, to purely mathematical objects.

Course Coordinator

Amelie Byun

I was born in Seoul, South Korea and moved to Southern California. I did my undergraduate studies at UC Berkeley and my masters at Stanford University, School of Education. I am a course coordinator in the computer science department and help manage the larger CS courses. Looking forward to a great quarter with you all :)

Head Course Assistant

Reyna Hulett

Salutations! I’m from Mountain View, left the Bay Area to attend Harvey Mudd College, and now I’m back doing a PhD in theoretical CS–primarily on voting theory and DNA storage–at Stanford. I get a kick out of algorithms and related brain teasers (ask me about hat puzzles!). In my free time, I enjoy backpacking, bicycling, singing, and playing D&D.

Course Assistants

Albert Zuo

Hi everyone! I was born and raised in Albuquerque, New Mexico. In my free time I mostly play video games (Super Smash Bros. Melee). I’ll be finishing the last quarter of my MS degree, so this will (sadly) be the last time I TA 161. I’ve kept on coming back not only because I love algorithms, but also because each iteration I see and hear so many different (creative!) ideas from the students about the same topics.

Amy Kanne

Hello!! I grew up in southern California and am majoring in mathematics with a coterm in CS theory. I’m especially interested in coding and complexity theory, in addition to various combinatorial problems that come up throughout theoretical computer science. Outside of school, I enjoy playing D&D, studying Japanese, and making dice!

Avery Wang

I’m from Taipei, Taiwan, and I teach CS 161A. I’m a senior math major and CS coterm, interested in cryptography, secure systems, and math/computer science education. I used to be a section leader for the CS 106 classes, and last year I taught CS 106L. In my free time, I enjoy chess, poker, sports analytics, and theater.

Caci Jiang

I was born in Hunan, China. Then I did my undergrad at Hong Kong PolyU specialized in urban analytics. After coming to Stanford as a grad student, I’m really into algorithms because I find them very helpful to solve many problems across different disciplines. Besides, I’m excited about blockchain, and I work on a startup project to design a music app powered by blockchain in my spare time. I live in Sunnyvale for this quarter, and I also enjoy indie music, cooking and playing table tennis!

Carrie Wu

Hello! I am a PhD student in MS&E working on Reinforcement Learning. I’ll be TA’ing this quarter from my family home in New York City. Apart from my research and teaching, I am also a new puppy mommy to a Golden Retriever named Lady. I was enormously privileged to have lived on the farm where she was first born and to have helped take care of her and her litter-mates from their first days. I brought her to New York on Jan 1st at 7 weeks old and life has been crazy insane hectic since then. Come to my office hours for CS 161 help and for puppy updates!

Changyu Bi

Hi all! I’m a second-year master student in computer science system track. Before joining the MS program in Stanford, I majored in computer science as an undergrad at the University of Toronto. In my spare time, I enjoy running, reading and watching sci-fi movies. I love this course because it covers elegant algorithms with rigorous proofs.

Chenru Liu

I was born in China. I did my undergraduate in Mathematics and master in Quantitative Finance. Right now, I am a Ph.D. student at Management Science and Engineering School. In the past, I was TA for cs229, cs246. Looking forward to a great time with you all.

Geng Zhao

I grew up in Beijing, China, but the Bay Area has been my second home. I finished my undergrad in Math and MCS at Stanford, and took a three-year leave working at Stripe on payment software. Driven by my passion for research, I returned to finish my CS coterm program last year. I love theoretical CS, especially algorithms, as it fosters a mindset to always back practice with rigorous theory. In my spare time, I’m an amateur astronomer.

Ian Tullis

I’m a first-year Master’s student in Theory, and I just left industry after eight years to pursue my dream of teaching CS. At Google, I worked on the Code Jam programming contest and on Search; prior to that, I got degrees in chemistry and environmental science. I’ve played in and run puzzle hunts and trivia games for many years, and I also love history, Japanese literature, movies, probability/combinatorics, tabletop RPGs, and weightlifting. (SCPD/NDO students, I’ve been there, so feel free to reach out!)

Jerry Qu

Hello! I’m a second year masters student in the AI track from upstate New York. This will be my third time on the course staff with this class and I look forward to exploring algorithms with everyone! Outside of school I enjoy playing various video and board games with friends, writing, and traveling (when it’s not a pandemic, of course). My favorite algorithm is Gale-Shapley!

Jesus Cervantes

I grew up in Modesto, CA and majored in CS on the AI track in undergrad here at Stanford and am currently a coterm in MS&E with the Computational Social Science track. In undergrad, I was on the cheer team for 3 years and loved traveling for the basketball tournaments and football bowl games! In my free time, I like exploring new areas by eating new foods and being outdoors by hiking and playing basketball.

Jiazheng Zhao

Hi! I’m a first year MSCS student in Theory track. I taught a similar class during undergraduate study at UC Berkeley (Booooo (jk)). In my spare time, I use “algorithms” to solve Rubik’s Cubes. I also do a wide variety of sports/music/games. I hope y’all enjoy the class as much as I did!

John Sun

Hi all! I’m a second-year master’s student in Robotics. I was fascinated by the cleverness and the mathematical sophistication of algorithms as I took CS161 with Mary Wootters. I hope you will feel the same as we dive into this class. In my spare time, I like learning a new language, playing the piano, traveling, and playing mobile games. I am the leader of a 100-people alliance with players from all over the world!

Nick Lai

Hi! I’m a current coterm student in AI, and just got off finishing my BS in Computer Science last year as well. I got really into algorithms after taking Keith Schwarz’s data structures class (CS 166), and am excited to help TA this class. It also helps that I have a side interest in math; I’m a big fan of 3blue1brown and Numberphile and similar Youtube channels. In my spare time, I like to read, write, and play the piano, especially at lively jam sessions.

Ofir Geri

I’m a PhD student in CS theory. My main research area is streaming algorithms. I am passionate about teaching, and in the past I have co-taught CS 261 and was a TA for CS 161 and CS 369M. In my free time, I like to read, learn to play the guitar, and eat dark chocolate.

Qile (Suyie) Zhi

I grew up in Guangzhou in the southern part of China. I am a second-year master in CS, currently living on campus. I finished my undergrad at the University of Illinois at Urbana-Champaign with a dual degree in CS and math. In my spare time, I enjoy traveling and photography.

Rose Li

Hi! I’m a CS coterm in the HCI track and did my undergrad in Econ. I was born and raised in Seattle and will be based here this quarter. In my free time I like to read, write, watch movies, spend time outdoors, pretty standard things. I think analyzing algorithms is fascinating and designing them is even more fun. I loved CS161 because there are so many “mind is blown” moments - my hope is that you will all find as much value in this course as I did!

Teresa Noyola

I was born in Mexico City and grew up in Palo Alto, California :) As an undergrad at Stanford I majored in Math and Computational Science and I am currently an MSCS student. Before grad school I spent six years playing professional soccer and played in two World Cups with the Mexican national soccer team. In my spare time I like dancing to cumbia, salsa, and bachata music. I love the creativity involved in designing algorithms and can’t wait to work with all of you!

Trey Connelly

Oh, hi there! I’m from Phoenix, Arizona, where I’ll be located this quarter. I majored here in Computer Science and now I’m in the CS coterm program. I also enjoy reading and writing, and I’m the resident techie on Stanford’s improv team. I love this course because it’s applicable to most things I do in computer science, and it reinforced a way of thinking that I use in the rest of my life.

Weiyun (Anna) Ma

Hi! I am a PhD student in theory, working on algorithms and hardness results in parallel and distributed computation frameworks. I grew up in Nanjing, China and came to the States for undergraduate studies at Harvey Mudd College. I love cooking, playing the piano, and enjoy music of different kinds.

Wilhem Kautz

Hello! I’m a second year coterm student in Computer and Network Security. I was fascinated with the incredible creativity that must have gone into some of the most brilliant algorithms and proofs! I’m also particularly interested in the comparison between the theoretical of classes like CS161 and CS166 and the practical applications of these algorithms like in CS149. Outside of class, I enjoy climbing, bingeing television shows, and traveling when possible!