Design and Analysis of Algorithms: Course Notes

These notes teach the techniques for the design and analysis of algorithms and data structures. It also study efficient algorithms from areas such as graph theory, networks, scheduling etc.

**Tag(s):**
Algorithms and Data Structures

**Publication date**: 01 Aug 2003

**ISBN-10**:
n/a

**ISBN-13**:
n/a

**Paperback**:
n/a

**Views**: 65,715

**Type**: N/A

**Publisher**:
n/a

**License**:
n/a

**Post time**: 11 Sep 2006 12:10:19

Design and Analysis of Algorithms: Course Notes

These notes teach the techniques for the design and analysis of algorithms and data structures. It also study efficient algorithms from areas such as graph theory, networks, scheduling etc.

Excerpts from the Notes:

This is a compilation of lecture notes, used by the author to teach CMSC 651: Design and Analysis of Algorithms at Dept. of Computer Science, University of Maryland. This course has been taught several times and each time the coverage of the topics differs slightly.

The notes will cover many different topics. Readers will start out by studying various combinatorial algorithms together with techniques for analyzing their performance. Readers will also study linear programming and understand the role that it plays in the design of combinatorial algorithms. Finally readers will go on to the study of NP-completeness and NP-hard problems, along with polynomial time approximation algorithms for these hard problems.

The material for the first few weeks was taken primarily from the textbook on Algorithms by Cormen, Leiserson and Rivest. In addition, the author have used material from several other books such as the Combinatorial Optimization book by Papadimitriou and Steiglitz, as well as the Network Flow book by Ahuja, Magnanti and Orlin and the edited book on Approximation Algorithms by Hochbaum. A few papers were also covered, containing some very important and useful techniques that should be in the toolbox of every algorithms researcher.

This is a compilation of lecture notes, used by the author to teach CMSC 651: Design and Analysis of Algorithms at Dept. of Computer Science, University of Maryland. This course has been taught several times and each time the coverage of the topics differs slightly.

The notes will cover many different topics. Readers will start out by studying various combinatorial algorithms together with techniques for analyzing their performance. Readers will also study linear programming and understand the role that it plays in the design of combinatorial algorithms. Finally readers will go on to the study of NP-completeness and NP-hard problems, along with polynomial time approximation algorithms for these hard problems.

The material for the first few weeks was taken primarily from the textbook on Algorithms by Cormen, Leiserson and Rivest. In addition, the author have used material from several other books such as the Combinatorial Optimization book by Papadimitriou and Steiglitz, as well as the Network Flow book by Ahuja, Magnanti and Orlin and the edited book on Approximation Algorithms by Hochbaum. A few papers were also covered, containing some very important and useful techniques that should be in the toolbox of every algorithms researcher.

Tweet

About The Author(s)

No information is available for this author.

Book Categories

Computer Science
Introduction to Computer Science
Introduction to Computer Programming
Algorithms and Data Structures
Artificial Intelligence
Computer Vision
Machine Learning
Neural Networks
Game Development and Multimedia
Data Communication and Networks
Coding Theory
Computer Security
Information Security
Cryptography
Information Theory
Computer Organization and Architecture
Operating Systems
Image Processing
Parallel Computing
Concurrent Programming
Relational Database
Document-oriented Database
Data Mining
Big Data
Data Science
Digital Libraries
Compiler Design and Construction
Functional Programming
Logic Programming
Object Oriented Programming
Formal Methods
Software Engineering
Agile Software Development
Information Systems
Geographic Information System (GIS)

Mathematics
Mathematics
Algebra
Abstract Algebra
Linear Algebra
Number Theory
Numerical Methods
Precalculus
Calculus
Differential Equations
Category Theory
Proofs
Discrete Mathematics
Theory of Computation
Graph Theory
Real Analysis
Complex Analysis
Probability
Statistics
Game Theory
Queueing Theory
Operations Research
Computer Aided Mathematics

Supporting Fields
Web Design and Development
Mobile App Design and Development
System Administration
Cloud Computing
Electric Circuits
Embedded System
Signal Processing
Integration and Automation
Network Science
Project Management

Operating System
Programming/Scripting
Ada
Assembly
C / C++
Common Lisp
Forth
Java
JavaScript
Lua
Rexx
Microsoft .NET
Perl
PHP
R
Python
Rebol
Ruby
Scheme
Tcl/Tk

Miscellaneous
Sponsors