Difference between revisions of "Fall 2026: Design and Analysis of Algorithms"
Jump to navigation
Jump to search
(→Labs) |
|||
| Line 55: | Line 55: | ||
=== '''Practicals LIst '''=== | === '''Practicals LIst '''=== | ||
| − | + | # Write a program to sort the elements of an array using Insertion Sort (The program should report the number of comparisons). | |
| − | should report the number of comparisons). | + | # Write a program to sort the elements of an array using Merge Sort (The program should report the number of comparisons). |
| − | + | # Write a program to sort the elements of an array using Heap Sort (The program should report the number of comparisons). | |
| − | should report the number of comparisons). | + | # Write a program to sort the elements of an array using Quick Sort (The program should report the number of comparisons). |
| − | + | # Write a program to multiply two matrices using the Strassen’s algorithm for matrix multiplication. | |
| − | should report the number of comparisons). | + | # Write a program to sort the elements of an array using Count Sort. |
| − | + | # Display the data stored in a given graph using the Breadth-First Search algorithm. | |
| − | should report the number of comparisons). | + | # Display the data stored in a given graph using the Depth-First Search algorithm. |
| − | + | # Write a program to determine a minimum spanning tree of a graph using the Prim’s algorithm. | |
| − | multiplication. | + | # Write a program to determine the shortest path from a given node s to the other nodes of a graph using the Dijkstra’s algorithm. |
| − | + | # Write a program to solve the 0-1 knapsack problem using Dynamic Programming. | |
| − | |||
| − | |||
| − | |||
| − | algorithm. | ||
| − | |||
| − | of a graph using the Dijkstra’s algorithm. | ||
| − | |||
== Resources == | == Resources == | ||
Revision as of 22:53, 7 September 2026
Contents
Logistics
- Class Timings: Mondays, Tuesdays, and Thursdays 9:30 am - 10:30 am
- Classroom: (R-43)
- Lab Timings: Fridays 8:30 am - 10:30 am
- Labs: Computer Lab 4 (CL-3)
Course Overview
- As per the Delhi University Course Syllabus/Guidelines
Lectures
| Lecture | Topic | Lecture Slides | Readings |
|---|---|---|---|
| Unit-1 | Searching, Sorting, Selection, Divide and Conquer: | [unit1.pdf] | Chapter 2,4,6,7,8,9 (R1) |
| Unit 2 | Graphs and Greedy algorithms: | [unit2.pdf] | Chapter 3, 4 (R2) & 15(R1) |
| Unit 3 | Dynamic Programming: | [unit3.pdf] | Chapter 6 (R2) |
| Unit 4 | Hash Functions, Collision resolution schemes: | [unit4.pdf] | Chapter 11 (R1) |
Assignments and Tests
Class Assignments
- Assignment No. 1,
- Assignment No. 2,
Tests and Quizzes
- Test 1 :
- Test 2 :
Labs
Instructions
- Please be on time to avoid the Attendance Penalty.
- Please put your mobile phone on Silent Mode.
- Each lab assignment needs to be submitted in the Google Classroom for evaluation(will be notified in the GC lab-wise, submit before the deadline).
- Turn off(shut down) your assigned computer and arrange the chair before you leave the lab.
Practicals LIst
- Write a program to sort the elements of an array using Insertion Sort (The program should report the number of comparisons).
- Write a program to sort the elements of an array using Merge Sort (The program should report the number of comparisons).
- Write a program to sort the elements of an array using Heap Sort (The program should report the number of comparisons).
- Write a program to sort the elements of an array using Quick Sort (The program should report the number of comparisons).
- Write a program to multiply two matrices using the Strassen’s algorithm for matrix multiplication.
- Write a program to sort the elements of an array using Count Sort.
- Display the data stored in a given graph using the Breadth-First Search algorithm.
- Display the data stored in a given graph using the Depth-First Search algorithm.
- Write a program to determine a minimum spanning tree of a graph using the Prim’s algorithm.
- Write a program to determine the shortest path from a given node s to the other nodes of a graph using the Dijkstra’s algorithm.
- Write a program to solve the 0-1 knapsack problem using Dynamic Programming.
Resources
References:
- Text Book: Tan P.N., Steinbach M, Karpatne A. and Kumar V. Introduction to Data Mining, Second edition, Sixth Impression, Pearson, 2023.
Additional References:
- Han J., Kamber M. and Pei J. Data Mining: Concepts and Techniques, 3rd edition, 2011, Morgan Kaufmann Publishers.
- Zaki M. J. and Meira J. Jr. Data Mining and Machine Learning: Fundamental Concepts and Algorithms, 2nd edition, Cambridge University Press, 2020.
- Aggarwal C. C. Data Mining: The Textbook, Springer, 2015
- Insight into Data mining: Theory and Practice, Soman K. P., Diwakar Shyam, Ajay V., PHI 2006