Giter Club home page Giter Club logo

algo_further_study's Introduction

algo_further_study

After 170 Post

Congratulations on finishing this course! We hope that throughout this semester CS170 was able to give you a sense about algorithmic thinking and analysis. As we finalize the grades, please take some time to relax and congratulate yourself for completing this course. We know that this semester was challenging and we know that your hard work will pay off!

If you’re wondering on where you can go after taking this class, we have a couple of suggestions!

Note: many of the graduate classes are not offered regularly, especially the special topics ones.

CS 172 (Complexity Theory):

Will build off from the complexity part of 170 and introduce you to the heart of theory of computation. In this course, you will learn about different computation models, finite automata and of course, more complexity theory. If you enjoyed the complexity part of the course, we surely recommend you to give it a try, especially considering that it hasn’t been offered in a long time. Offered next semester.

CS 174 (Combinatorics and Randomized Algorithms):

Builds off from basic probability covered in 70 and analysis skills in 170. In this class, you will learn about how we generate randomness in theory and how we exploit its power when dealing with NP-hardness. If you enjoyed probability, especially the probabilistic analysis we saw in special topics this year, this would be a good class for you. Offered next semester.

CS 270 (Graduate Algorithms):

This is the most natural extension of 170, and a must-take class if you want to learn more about combinatorial algorithms. Offered next semester.

CS 271 (Randomized Algorithms):

You may have noticed that in 170, we didn't really cover many randomized algorithms outside of primality testing and streaming. For example, we never discussed quicksort, which is a very popular sorting algorithm that is randomized. Like CS 270, this is a must-take class if you want to learn more about algorithms. Last offered Spring 2018.

CS 276 (Cryptography):

This class is about cryptography, so things like public/private key encryption, one-way functions, pseudorandomness, etc. In this class, you will formally prove that these systems are secure under some complexity theory assumption (such as P ≠ NP) using reductions. If you liked the reductions part of the class, you will probably enjoy this class too! Last offered Fall 2018.

EE 229A (Information Theory):

This class is about information theory, so it covers topics like entropy, mutual information, and the channel coding theorem. If you like probability and thought Huffman coding was cool, then take this class! Last offered Fall 2018.

CS 294: Probabilistically Checkable and Interactive Proofs:

A proof is a string that allows an efficient verifier to check the validity of an NP statement, e.g. that a 3-SAT formula is satisfiable. One can consider two different related notions of a proof. In a probabilistically checkable proof, the verifier is restricted to only reading a small number of bits from the proof, and in an interactive proof, the prover talks to the verifier to try to convince the verifier that the NP statement is true. Offered next semester.

Besides these theory courses, there will also be two UGTCS-run reading groups with 1~2 units available.

Design of Approximation Algorithms

Approximation Algorithms

A Theoretician's Toolkit

algo_further_study's People

Contributors

yingkunzhou avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.