Programming
Software development: programming languages, coding, libraries and frameworks, software engineering and architecture, source control, developer tools, databases, and infrastructure.
-
Gregory Valiant. The Modern Algorithmic Toolbox. Stanford web.stanford.edu
It covers hashing, dimension reduction, linear and convex programming, gradient descent and regression, sampling and estimation, compressive sensing, linear-algebraic techniques (principal components analysis, singular value decomposition, spectral techniques), and an intro to…
-
Mary Wootters. Randomized Algorithms and Probabilistic Analysis. Stanford web.stanford.edu
Key tools of probabilistic analysis, and application of these tools to understand the behaviors of random processes and algorithms. Emphasis is on theoretical foundations, though applications will be discussed in machine learning and data analysis, networking, and systems…
-
Computability, Complexity & Algorithms. Georgia Institute of Technology udacity.com
It focuses on the big fundamental questions of computing, and how understanding the power and limitations of algorithms helps us develop the tools to make real-world computers smarter, faster and safer.
-
Du & Ko. Design and Analysis of Approximation Algorithms u.pcloud.link
A technique-oriented approach provides a unified view. It includes detailed algorithms, proofs, analyses, examples, and applications from research papers.
-
Vijay Vazirani. Approximation Algorithms u.pcloud.link
-
Indyk & Daskalakis. Learning-augmented Algorithms. MIT stellar.mit.edu
-
Oberguggenberger & Ostermann. Analysis for Computer Scientists: Foundations, Methods, and Algorithms springer.com
Presents an algorithmic approach to mathematical analysis, with a focus on modelling and on the applications of analysis.
-
Makinson. Sets, Logic and Maths for Computing springer.com
It presents a careful selection of the material most needed by students in their first two years studying computer science.
-
UW CSE505 18au Principles of PL sites.google.com
Techniques for thinking crisply about programming languages, write some fascinating programs, and discuss various design tradeoffs.
-
Part I scottaaronson.com
& Part II - Part I: Presuppose only linear algebra and a bit of classical algorithms. Topics include quantum circuits, density matrices, entanglement entropy, Wiesner’s quantum money, QKD, quantum teleportation, the Bell inequality, interpretations of QM, the Shor 9-qubit code…
-
Atallah & Blanton. Algorithms and Theory of Computation Handbook: Special Topics and Techniques routledge.com
A complete comprehensive encyclopediac handbook which surveys all related areas to theoretical computer science.
-
Atallah & Blanton. Algorithms and Theory of Computation Handbook: General Concepts and Techniques routledge.com
A complete comprehensive encyclopediac handbook which surveys all related areas to theoretical computer science.
-
Jeremy Kun. A Programmer's Introduction to Mathematics pimbook.org
Uses your familiarity with ideas from programming and software to teach mathematics.
-
Madhu Sudan. Essential Coding Theory people.seas.harvard.edu
Some elements of Algorithmic tasks of encoding and decoding and its connections with error-correction; These codes are now tools in the design and analysis of algorithms, and also in many aspects of computational complexity. The focus is on constructions of algorithmic and…
-
Papadimitriou. Computational Complexity pearson.com
Body of knowledge for studying the performance and limitations of computer algorithms. Among topics covered are: reductions and NP-completeness, cryptography and protocols, randomized algorithms, and approximability of optimization problems, circuit complexity, the structural…
-
Knuth, Graham & Patashnik. Concrete Mathematics: A Foundation for Computer Science pearson.com
An expansion of the Mathematical Preliminaries section in Knuth's classic Art of Computer Programming, but the style of presentation is more leisurely, and individual topics are covered more deeply.
-
Erik Demaine. Advanced Data Structures. MIT ocw.mit.edu
It covers major results and current directions of research in data structure.
-
Demaine/Devadas/Lynch. Design and Analysis of algorithms. MIT ocw.mit.edu
A second course on algorithms and data structures. — added by Erik himself!
-
Demaine/Ku/Soloman. Introduction to Algorithms. MIT ocw.mit.edu
A first course on basic algorithms and data structures. — added by Erik himself!
-
MIT OCW ocw.mit.edu
, HTML book, Byford's playlist, Javascript book, Python book, Berkeley for self-study, and Berkeley 2024 - Fundamental principles of computer programming in Scheme, including recursion, abstraction, modularity, and programming language design and implementation.
-
Kelner. Topics in Theoretical Computer Science: An Algorithmist's Toolkit. MIT ocw.mit.edu
It covers a collection of geometric techniques that apply broadly in modern algorithm design.
-
Moore & Mertens. The Nature of Computation nature-of-computation.org
It spans complexity of mazes and games; optimization in theory and practice; randomized algorithms, interactive proofs, and pseudorandomness; Markov chains and phase transitions; and of quantum computing. It provides accessible explanations
-
Penna. Algorithmic Game Theory ml2.inf.ethz.ch
The course discusses algorithmic aspects of game theory, such as a general introduction to game theory, auctions, mechanisms, the costs of a central control optimum versus those of an equilibrium under selfish agents, and algorithms and complexity of computing equilibria.
-
Handbook of Theoretical Computer Science. Volume A: Algorithms and Complexity mitpress.mit.edu
A complete comprehensive encyclopediac handbook which surveys all related areas to theoretical computer science.
-
Eck & Critchlow. Foundations of Computation math.hws.edu
for a one-semester course in theoretical computer science. It has no prerequisites other than introductory computer programming. It includes logic, sets, and function from discrete math, and automata, formal languages, and grammar from upper-level courses.
-
Vaughan. CS260: Machine Learning Theory jennwv.com
A broad overview of the theoretical foundations underlying common machine learning algorithms.
-
Lee. Randomized Algorithms and Probabilistic Analysis. Washington. homes.cs.washington.edu
Topics include Discrete probability, High-dimensional geometry and statistics, Information and entropy, and Markov chains and convergence to equilibrium.
-
Demaine, Gasarch & Hajiaghayi. Computers and Intractability: A Guide to Algorithmic Lower Bounds hardness.mit.edu
A sequel to Garey and Johnson's Computers and Intractability: A Guide to NP-Completeness. New topics include Parameterized Complexity, Lower bounds on approximation, Other hardness assumptions (ETH, 3SUM-conjecture, APSP-conjecture, UGC, Others), Online Algorithms, Streaming…
-
Knuth. The Art of Computer Programming en.wikipedia.org
A legendary series by Donald Knuth on design and analysis of algorithms.
-
Theory Announcements dmatheorynet.blogspot.com
DMANET spreads information on conferences, workshops, seminars etc. relating to discrete mathematics and algorithms.
-
Williamson & Shmoys. The Design of Approximation Algorithms designofapproxalgs.com
It includes greedy, local search algorithms, dynamic programming, linear and semidefinite programming, and randomization.
-
Salamon's List cstheory.stackexchange.com
Selected Conferences.
-
Aspnes. Notes on Randomized Algorithms cs.yale.edu
Supplemental notes to the standard books by Mitzenmacher & Upfals, and Motwani & Raghavan.
-
First cs.ubc.ca
and Second Course in Randomized Algorithms. Columbia. - Respectively, undergrad and grad courses for probabilistic methods in algorithms.
-
Livni. COS 511 Theoretical Machine Learning. Princeton cs.princeton.edu
Formally define and study various models that have been proposed for learning. The course will present and contrast the statistical, computational and online models for learning. We will present and rigorously analyze some of the most successful algorithms in machine learning…
-
Arora. Overcoming Intractability in Machine Learning cs.princeton.edu
A seminar course that will focus on the following phenomenon: many problems in machine learning are formally intractable (e.g., NP-hard). Nevertheless they are solved in practice by heuristics. Can we design algorithms with provable guarantees (running time, solution quality)?
-
Arora. Advanced Algorithm Design cs.princeton.edu
Notably uses ideas such as randomness, approximation, high dimensional geometry. Faces uncertainty, approaches to handle big data, handling intractability, heuristic approaches, ..etc.
-
Robert Robere. Proof Complexity: Algorithms and Lower Bounds cs.mcgill.ca
An introduction to modern proof complexity, emphasizing its connections with computational complexity and algorithms in optimization.
-
Dinitz. Approximation Algorithms. Johns Hopkins cs.jhu.edu
It includes greedy, local search, dynamic programming, randomized rounding, tree embeddings, and semidefinite programming.
-
Cornell. Functional Programming in Ocaml cs.cornell.edu
A modern course on data structures and functional programming using OCaml.
-
Gupta & Ravi. Approximation Algorithms. CMU cs.cmu.edu
It includes convex programming-based, randomness, and metric methods.
-
Introduction to Discrete Mathematics for Computer Science. UC San-Diego coursera.org
Learn the language of Computer Science. Learn the math that defines computer science, and practice applying it through mathematical proofs and Python code.
-
Cambridge Foundations of CS cl.cam.ac.uk
It teaches programming and presents some fundamental principles of computer science, especially algorithm design.
-
Chekuri. Topics in Algorithms: Algorithmic Game Theory chekuri.cs.illinois.edu
A broad graduate-level introduction to: auctions, existence and computation of equilibria in games and markets, algorithmic mechanism design, price of anarchy and price of stability, games relevant to networks and e-commerce. The emphasis will be on conceptual ideas and…
-
Shalev-Shwartz. Understanding Machine Learning: From Theory to Algorithms cambridge.org
It provides an extensive theoretical account of the fundamental ideas underlying machine learning and the mathematical derivations that transform these principles into practical algorithms.
-
Tu Delft. Delftse Foundations of Computation books.open.tudelft.nl
A textbook for a one quarter introductory course in theoretical computer science including logic, proof techniques, and set theory. It assumes no prerequisite other than basic programming.
-
Algorithms with Predictions algorithms-with-predictions.github.io
-
Laurence Moroney twitter.com
Lead of AI Developer Relations at Google.
-
Jason Mayes twitter.com
Developer advocate for TensorFlow.js.
-
Deep Learning with JavaScript manning.com
Learn to use TensorFlow.js to build deep learning models that run directly in the browser, master all the basics of deep learning and explore advanced concepts, like retraining existing models for transfer learning and image generation by Shanqing Cai, Stanley Bileschi, Eric D…
- next page of items loading…