Module1 Lecture1
Module1 Lecture1
EVEN 2021
Module 1: Lecture 1
Introduction to greedy based solution approach; Minimum Spanning Trees (Prim’s and Kruskal algorithms); Shortest
Path using Dijkstra’s algorithm; Fractional and 0/1 Knapsack; Coinage problem; Bin packing; Job scheduling –
4 Shortest job first, Shortest remaining job first, etc.; Graph coloring; and Text compression using Huffman coding and
6
Shannon-Fano coding, etc.
Review of backtracking based solution approach using N queen, and Rat in a maze; M-coloring problem; Hamiltonian
5 Cycle detection; Travelling salesman problem; Network flow
4
Fundamentals of Dynamic programming based solution approach; 0/1 Knapsack ; Shortest path using Floyd Warshall;
6 Coinage problem; Matrix Chain Multiplication; Longest common subsequence; Longest increasing sequence, String 6
editing
Naïve String Matching, Finite Automata Matcher, Rabin Karp matching algorithm, Knuth Morris Pratt, Tries; Suffix
7 Tree; and Suffix Array
6
Problem Spaces: States, goals and operators, Factored representation (factoring state into variables) Uninformed
8 search (BFS, DFS, DFS with iterative deepening), Heuristics and informed search (hill-climbing, generic best-first, A*)
4
CO3 Apply algorithmic principles for solving a given problem. Apply Level (Level 3)
S.
Evaluative Components Marks
No.
1 T1 20
2 T2 20
Teachers Assessment:
4 25
Attendance / PBL / Assignments
Total 100
Algorithms and Problem Solving (15B17CI411)
Relevant Resources - I
Recommended Reading material: Author(s), Title, Edition, Publisher, Year of Publication etc. (Reference Books, Journals, Reports,
Websites etc. in the IEEE format)
1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein , Introduction to Algorithms, MIT Press, 3rd Edi tion, 2009
2. Steven Skiena ,The Algorithm Design Manual, Springer; 2nd edition , 2008
3. Knuth, The art of Computer Programming Volume 1, Fundamental Algorithms, Addison-Wesley Professional; 3 edition,1997
4. Horowitz and Sahni, Fundamentals of Computer Algorithms, Computer Science Press, 2008
5. Sedgewick, Algorithms in C, 3rd edition. Addison Wesley, 2002
Alfred V. Aho, J.E. Hopcroft, Jeffrey D. Ullman, Data Structures and Algorithms, Addison-Wesley Series in Computer Science and Information
6.
Processing, 1983
7. ACM Transactions on Algorithms (TALG)
8. Algorithmica Journal, Springer
9. Graphs and Combinatorics, Journal, Springer
10. The ACM Journal of Experimental Algorithmics
Recommended Reading material: Author(s), Title, Edition, Publisher, Year of Publication etc. ( Text books)
1. Tim Roughgarden, Algorithms Illuminated: Part 1: The Basics, Soundlikeyourself Publishing, September 27, 2017
2. Tim Roughgarden, Algorithms Illuminated:Part 2: Graph Algorithms and DataStructures ,Soundlikeyourself Publishing, First Edition, 2018.
Tim Roughgarden, Algorithms Illuminated :Part3:Greedy Algorithms and Dynamic Programming,Soundlikeyourself Publishing, First Edition,
3.
2019.
4. Weiss, Data Structures and Algorithm Analysis in C++, 4th Edition, Pearson, 2014
Algorithms and Problem Solving (15B17CI411)
Relevant Resources - II
3 GeekforGeeks, etc
Virtual Lab
https://www.vlab.co.in/
Module 1
Analysis
o Posteriori (experimental analysis)
o Priori (theoritical analysis)
Algorithms
• What is an Algorithm?
• What are the properties of an Algorithm?
• Why “Analysis of Algorithm”?
• What is the goal of “Analysis of Algorithm”?
for i = 0 to (n - 1) -----------------C1 C2 t2