are algorithms designed to run on multiple processors, without tight centralized
control. Topics covered includes: Variations in model assumptions, Top-level
organization is by the timing model, Synchronous model, Asynchronous model,
Partially synchronous model, Synchronous networks.
The field of approximation algorithms has
developed in response to the difficulty in solving a good many optimization
problems exactly. This note will present general techniques that underly these
note will examine various data structures for storing and accessing information
together with relationships between the items being stored, and algorithms for efficiently
finding solutions to various problems, both relative to the data structures and
queries and operations based on the relationships between the items stored.
Topics covered includes: Algorithm analysis, List, stacks and queues, Trees and
hierarchical orders, Ordered trees, Search trees, Priority queues, Sorting
algorithms, Hash functions and hash tables, Equivalence relations and disjoint
sets, Graph algorithms, Algorithm design and Theory of computation.
This note covers the
following topics: Fundamentals of data structure, simple data structures, ideas
for algorithm design, the TABLE Data Type, free storage management, sorting,
storage on external media, variants on the SET Data Type, pseudo-random numbers,
data compression, algorithms on graphs, algorithms on strings and Geometric
This note covers the following topics:
Algorithms and Data Structures, Introduction to Java, Software Development,
Writing Classes, Writing Classes in Java, Unit Testing, Building Large Java
Applications, Inheritance and Polymorphism, Interfaces, A Math Review, Algorithm
Analysis, Data Types versus Data Structures, Collections, Stacks ,Queues, Lists,
Recursion, Sorting, Trees, Oriented Trees, Ordered Trees, Binary Trees, Sets and
Dictionaries, Search Trees, Binary Search Trees, Red-Black Trees.
note covers the following topics related to Algorithm Analysis and Design: Model
and Analysis, Warm up problems, Brute force and Greedy strategy, Dynamic
Programming, Searching, Multidimensional Searching and Geometric algorithms,
Fast Fourier Transform and Applictions, String matching and finger printing,
Graph Algorithms, NP Completeness and Approximation Algorithms.