In computer science, an
algorithm is a self-contained step-by-step set of operations to be performed.
Topics covered includes: Algorithmic Primitives for Graphs, Greedy Algorithms,
Divide and Conquer, Dynamic Programming, Network Flow, NP and Computational
Intractability, PSPACE, Approximation Algorithms, Local Search, Randomized
This note will cover
classic and modern algorithmic ideas that are central to many areas of Computer
Science. The focus is on most powerful paradigms and techniques of how to design
algorithms, and measure their efficiency. The topics will include hashing,
sketching, dimension reduction, linear programming, spectral graph theory,
gradient descent, multiplicative weights, compressed sensing, and others.
explains core material in data structures and algorithm design, and also helps
students prepare for research in the field of algorithms. Topics covered
includes: Splay Trees, Amortized Time for Splay Trees, Maintaining Disjoint
Sets, Binomial heaps, F-heap, Minimum Spanning Trees, Fredman-Tarjan MST
Algorithm, Light Approximate Shortest Path Trees, Matchings, Hopcroft-Karp
Matching Algorithm, Two Processor Scheduling, Network Flow - Maximum Flow
Problem, The Max Flow Problem and Max-Flow Algorithm.
This note introduces a number of important algorithm
design techniques as well as basic algorithms that are interesting both from a
theoretical and also practical point of view. Topics covered are: Introduction
to Algorithms, Asymptotic Analysis, Recurrence Equations, Sorting Algorithms,
Search Trees, Randomized Algorithms and Quicksort, Selection Algorithms, Number
Theory and Cryptography Algorithms, Graph algorithms, Greedy Algorithms and
External Memory Algorithms.
Author(s): Department of Computer
Science at Duke University
note covers the following topics: Encryption Algorithms, Genetic
Algorithms, Geographic Information Systems Algorithms, Sorting
Algorithms, Search Algorithms, Tree Algorithms, Computational
Geometry Algorithms, Phonetic Algorithms and Project Management
This note covers the design of algorithms according to
methodology and application. Methodologies include: divide and
conquer, dynamic programming, and greedy strategies. Applications
involve: sorting, ordering and searching, graph algorithms,
geometric algorithms, mathematical (number theory, algebra and
linear algebra) algorithms, and string matching algorithms.