Lecture Notes For All: Introduction to Algorithms Notes PDF

GoDaddy

...................

Sunday, May 15, 2011

Introduction to Algorithms Notes PDF

Introduction to Algorithms Notes PDF

 

Rotation of a binary search tree, from the Recitation #4 slides. (Figure courtesy of Victor Costan.)

Course Highlights

This course features a full set of lecture notes and a set of detailed recitationslides.

Course Description

This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship between algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.

Technical Requirements

Special software is required to use some of the files in this course: .tex, .py, .rb, and .zip.
Click Below to Download the files :-

Lecture Notes

Special software is required to use some of the files in this section: .py and .zip.
The lecture notes in this section were transcribed from the professors' handwritten notes by graduate student Pavitra Krishnaswamy. The handwritten notes can be found on the Lectures and Recitations page of the original 6.006 Web site.


LEC #TOPICSSUPPORTING FILES
Introduction and document distance
L1Introduction and document distance (PDF)Document distance(docdist{1,2,3,4}.py)
L2More document distance, mergesort (PDF)Document distance (docdist{5,6}.py)
Binary search trees
L3Airplane scheduling, binary search trees (PDF - 1.4 MB)Binary search trees (including code)
L4Balanced binary search trees (PDF - 1.2 MB)See binary search trees for AVL code
Hashing
L5Hashing I: chaining, hash functions (PDF)Document distance (docdist-dict.py)
L6Hashing II: table doubling, Karp-Rabin (PDF)
L7Hashing III: open addressing (PDF - 1.1 MB)
Sorting
L8Sorting I: heaps (PDF - 1.0 MB)
L9Sorting II: heaps (PDF)
L10Sorting III: lower bounds, linear-time sorting (PDF)
L11Sorting IV: stable sorting, radix sort (PDF - 1.0 MB)
Searching
L12Searching I: graph search, representations, and applications (PDF - 1.6 MB)Simple Python code for graphs (PY)
L13Searching II: breadth-first search and depth-first search (PDF - 1.3 MB)
L14Searching III: topological sort and NP-completeness (PDF)
Shortest paths
L15Shortest paths I: intro (PDF - 1.0 MB)
L16Shortest paths II: Bellman-Ford (PDF - 1.1 MB)
L17Shortest paths III: Dijkstra (PDF)
L18Shortest paths IV: Dijkstra speedups (PDF - 1.2 MB)
Dynamic programming
L19Dynamic programming I: memoization, Fibonacci, Crazy Eights, guessing (PDF)
L20Dynamic programming II: longest common subsequence, parent pointers (PDF)
L21Dynamic programming III: text justification, parenthesization, knapsack, pseudopolynomial time, Tetris training (PDF)
L22Dynamic programming IV: piano fingering, structural DP (trees), vertex cover, dominating set, and beyond (PDF)
Numerics
L23Numerics I (PDF)
Demos: square root of 2, chord length
Source code (ZIP) (This zip file includes: 14 .js files, 2 .html files, 1 .css file, and 1 .project file.)
L24Numerics II (PDF)

No comments:

Post a Comment