This note covers the following topics: Computational Models,
Complexity measures, Power increasing resourses, Basic relatton
amomg the models and measures, Reducibility, completeness and
closure under reductions, Deterministics and nondeterministics
logarithmic space, Deterministics polynomial time, Polynomial
Hierarchy and Polynomial space.
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.
introduces students to advanced techniques for the design and analysis of
algorithms, and explores a variety of applications. Topics covered includes:
Greedy algorithms, Dynamic programming, Network flow applications, matchings,
Randomized algorithms, Karger's min-cut algorithm, NP-completeness, Linear
programming, LP duality, Primal-dual algorithms, Semi-definite Programming, MB
model contd., PAC model, Boosting in the PAC framework.
This note concentrates
on the design of algorithms and the rigorous analysis of their efficiency.
Topics covered includes: the basic definitions of algorithmic complexity, basic
tools such as dynamic programming, sorting, searching, and selection; advanced
data structures and their applications, graph algorithms and searching
techniques such as minimum spanning trees, depth-first search, shortest paths,
design of online algorithms and competitive analysis.
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.
lecture note discusses the approaches to designing optimization algorithms,
including dynamic programming and greedy algorithms, graph algorithms, minimum
spanning trees, shortest paths, and network flows. Also it briefly discusses
algorithmic problems arising from geometric settings, that is, computational
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