Tarique Anwar

Analysis and Design of Algorithms - CSL356

Course Information Sheet Click here to download
Class Schedule Monday, 07-08pm, Lecture
Tuesday, 07-08pm, Tutorial
Wednesday, 07-08pm, Lecture
Friday, 07-08pm, Lecture
Venue: H5, NIELIT Campus
Venue: H5, NIELIT Campus
Venue: H5, NIELIT Campus
Venue: H5, NIELIT Campus
Assignment 1
-- Solution
Click here to download
Click here to download
Due date: 14/02/18 (Wednesday)
Quiz 1
-- Solution
Click here to download
Click here to download
Date: 17/02/18 (Sunday)
Assignment 2 Click here to download Due date: 26/02/18 (Monday)
Assignment 3 Click here to download Due date: 17/04/18 (Tuesday)
Assignment 4 Click here to download Due date: 07/05/18 (Tuesday)
                13/05/18 (Sunday)

Announcements

15/05/2018: The marking is about to be completed in sometime soon. The answer sheets will be shown in Faculty Room (Room no. 215), NIELIT, during 5:30-6:30pm today.

15/05/2018: We are hoping to complete the End-Sem marking by 5pm today. So you can check your marks from 5-6pm in my office. If it is delayed for any reason, I will notify further.

12/05/2018: For your clarification, tomorrow’s exam will not be open book.

12/05/2018: Tomorrow I will be available in my office during 12:30-12:45pm and 5:00-6:00pm for assignment submissions.

09/05/2018: Quiz 3 has been marked, and the answer sheets will be shown tomorrow during 6-7pm. Whoever is planning to come, please reply to me in advance along with your preferred time. You can also check the Assignment 3 and Quiz 2 answer sheets during this time.

Soon I will release all your marks obtained so far, and the solutions to all the completed quizzes and assignments.

06/05/2018: Considering your request, the submission due date for Assignment 4 has been extended to 13th May (5 pm).

04/05/2018: A kind reminder about the Quiz tomorrow at 4pm in H5, NIELIT. The final attendance record is released.

03/05/2018: Three announcements here.

(1) The course syllabus was completed yesterday. See the complete list of topics below. This is the syllabus for the end-semester exam.

Fundamentals of Algorithms
Asymptotic Notations
Selection Sort
Insertion Sort
Merge Sort
Heap Sort
Quick Sort
Lower Bounds for sorting
Counting Sort
Radix Sort
Number Theoretic Algorithms
Median and Order Statistics
Elementary Data Structures
Hash Tables
Dynamic Programming (Rod Cutting, MCM, Elements of Dynamic Programming, Fibonacci Sequence, LCS,)
Greedy Algorithms (Activity Selection Problem, Elements of Greedy Strategy, MST)
Amortized Analysis
NP-Completeness (fundamentals)

(2) As per your suggestion in the last class, we are not going to have any more lectures. You can use this time for self-study and prepare well for the exam. If you need my help to understand any specific problem, you can email me or come to my office. I will release the solutions of all the assignments and quizzes in sometime.

(3) In Assignment 3 submissions, many of you have copied line-by-line from some common external source. All such submissions are going to be penalized. To avoid this, be careful in Assignment 4. You are free to take help from any external source or your friends or any other person, but exactly copying from somewhere is not allowed. You will have to understand the things by yourself first, then write it in your own language, and mention the source from where you have got the help, if any. Also, no two submissions should have exactly same answers. Both of them will be penalized in this case.

01/05/2018: I got some important work today. So today's lecture is cancelled. We will have the last lecture on NP completeness tomorrow. And then on Thursday (Friday schedule) and Friday, we will discuss on specific problems. You may suggest me, if you have any problem to be discussed in the class.

We will also show the Assignment 3 and Quiz 2 marks tomorrow, during 6:30-7pm.

28/04/2018: As all are fine, we will have the Quiz 3 at 4pm on Saturday (05/05). The final attendance will be released in the morning of the same day for your reference.

26/04/2018: Assignment 4 is released. Submission due date is 07th May 2018.

I am going to conduct Quiz 3 in the next week. Syllabus is the entire course covered so far (given below). We can have it in the lecture time on Friday (04/05) or sometime in the following weekend. Suggestions from your side are welcome.

Fundamentals of Algorithms
Asymptotic Notations
Selection Sort
Insertion Sort
Merge Sort
Heap Sort
Quick Sort
Lower Bounds for sorting
Counting Sort
Radix Sort
Number Theoretic Algorithms
Median and Order Statistics
Elementary Data Structures
Hash Tables
Dynamic Programming (Rod Cutting, MCM, Elements of Dynamic Programming, Fibonacci Sequence, LCS,)
Greedy Algorithms (Activity Selection Problem, Elements of Greedy Strategy, MST)
Amortized Analysis

This is specially for those who have less than 60% attendance till the last class of this semester. Depending on the performance in this Quiz, the grades will be lowered as follows. No penalty for top 5 (or more, if at equal marks), and 1 grade will be lowered for the remaining.

This Quiz is optional for those having more than or equal to 60% attendance. For these students, best 2 performances out of the three quizzes will be considered.

23/04/2018: Today's Quiz will be an Open Book Exam. You are free to bring all kinds of study materials including notes, books, and calculators (no mobile phone).

23/04/2018: A gentle reminder about the Quiz today during the usual lecture time.

18/04/2018: The attendance record from the mid-sem exam till date is released.

17/04/2018: The second Quiz will be held on 23/04/2018 (next Monday) during 07-08pm in H5, NIELIT. There will be no lecture that day. Please let me know urgently if any of you has problem with the timing.

Syllabus would be as follows.
Median and Order Statistics
Elementary Data Structures
Hash Tables
Dynamic Programming (Rod Cutting, MCM, Elements of Dynamic Programming, Fibonacci Sequence, LCS,)
Greedy Algorithms (Activity Selection Problem, Elements of Greedy Strategy, MST)

Just to remind you, the Assignment 3 is due today. You can submit to me today in the class or in my office.

13/04/2018: A kind reminder, that we will have a lecture today during 7-8pm in H5, NIELIT.

11/04/2018: As decided in the class on Monday, we will have the fourth class of the week on Fridays during 07pm-08pm in H5, from this week. There will be no more classes in the weekends.

If any of you has problem with this time, let me know.

07/04/2018: Assignment 3 has been released.

07/04/2018: Today's lecture is cancelled.

Please suggest me a suitable time of at least 50 minutes for the 4th class of the week. What about Thursday, 5:40-6:30pm? If no other suitable time is found, we will have to continue the Saturday time from next week, regardless of your other engagements.

We will release the Assignment 3 today, and the Quiz 2 will be held within the next two weeks.

Reminder: Attendance requirements will be strictly followed. Many of you are running short of the minimum requirements. We will release the current attendance status in some time. Take it seriously before it is too late.

06/04/2018: Tomorrow, we will have a one hour lecture from 11:30am to 12:30pm in H5, NELIT. It matches with the bus timings, for those coming from the transit campus.

Let me know if anyone has a problem with this time.

02/04/2018: The buses between the two campuses are not running today, and travelling via personal transport is also not completely safe. Considering the situation, today's class is cancelled.

29/03/2018: This weekend we will not have the Saturday lecture. All classes will continue regularly from the next week.

26/03/2018: Considering your request, we have cancelled today’s lecture. But from next time, any kind of requests must be made in much advance.

26/03/2018: This week’s lectures will be given by Dr Saswata Shannigrahi, as I am away. The time and venue will be as usual.

Dr Saswata is a new faculty member in the Department of Computer Science and Engineering.

23/03/2018: As we have the Adviditya going on now, there will be no lecture tomorrow.

22/03/2018: This week we will finalize the marks for Assignment 2 and Mid-Sem Exam. All the students are free to come to my office (Room 321, NIELIT) anytime during 3-7pm today / 10am-1pm tomorrow / 3-6pm tomorrow, and check the answer sheets. After these times, no further discussion will be allowed on these marks. If you are not free during these times, you must email me by the end of tomorrow.

The negative marking on Question 1 wasn't applied earlier. All marks have been revised to apply the negative marking.

As many students complained about the confusion in Question 4b of Mid-Sem, I have taken that into consideration, and revised the marks for those who had this confusion. I recommend you to check your revised marks. There is no change in the marks of those who had solved it correctly.

16/03/2018: As we have the Aarohan going on now, there will be no lecture this Saturday (tomorrow).

13/03/2018: The Assignment 2 has been marked. The TAs will show the Assignment 2 and the Mid-Sem Exam answer sheets, in H5 (NIELIT) today at 6pm. Please be there on time, so that you get sufficient time before the start of the tutorial/lecture at 7pm.

As tomorrow will have the Friday schedule, there will be no lecture tomorrow.

08/03/2018: We will have the Saturday Lecture by Dr Somitra from 10am-12pm in H9, NIELIT Campus. This Lecture will be on the foundations of Algorithms, including Chapters 3, 4, and 5 of the book "Introduction to Algorithms" by Cormen et al.

It was assumed earlier that the students are already prepared with these topics, but after seeing the performance so far, we decided to include them in the lectures. If you have any request to emphasize some specific topics from Chapters 1-5 in the lecture, please let us know.

06/03/2018: The mid-semester examination has been marked. The TAs will show the Mid-Sem Exam answer sheets, in H5 (NIELIT) today at 6pm. This will be in addition to finalizing the marks for Quiz 1 and Assignment 1 today, as announced earlier.

At sharp 7pm, the discussions related to marks will stop and the tutorial/lecture will start. So please make sure you reach there in much advance (6pm recommended) and have sufficient time to discuss before 7pm.

05/03/2018: Assignment 1 and Quiz 1 marks will be freezing tomorrow. Our TAs will be available in H5 (NIELIT) from 6-7pm on Tuesday (tomorrow), just before the tutorial. If you have anything to discuss on these marks, please be there and discuss with them. If the time does not suit you, you must email them by 1pm, tomorrow, and arrange your discussion immediately.

C/CPP program of Assignment 1: Ambuj Gahoi and Pratyush Singh, please get your program marked by the TA tomorrow (last date). Whosoever wants to demonstrate their program to the TA by themselves, please do so tomorrow.

As announced earlier, it is mandatory to attend all the classes now onward. Those who fail to attend at least 75% of the total classes (lectures + tutorials) from tomorrow to the end of the semester will get an 'F' grade.

24/02/2018: Just to remind you, Assignment 2 is due on Monday. You can be submit it to me in my office (Room 321, NIELIT campus). I will be available for submissions during 11:00am-01:00pm and 3:30pm-6:00pm on Monday.

22/02/2018: Solutions of Assignment 1 and Quiz 1 have been released.

21/02/2018: Attendance is mandatory in all the classes (Lecture/Tutorial) after the mid-semester examination.

21/02/2018: The marking of Assignment 1 and Quiz 1 is complete. You can check your answer sheets from 6:15 to 7:00pm today, just before the lecture, in H5, NIELIT. The marks are tentative, and can be revised if required. If you are not able to be present during this time, please contact the TAs.

16/02/2018: Assignment 2 has been released.

16/02/2018: The final schedule for the Saturday Lecture and Quiz.
Lecture: 10am-11am, Saturday, 17/02/18, H9, NIELIT
Quiz: 10am-11am, Sunday, 18/02/18, H9, NIELIT

14/02/2018: A kind reminder that the Assignment 1 is due today. The C program needs to be submitted through the CSL356 Moodle page, and the hardcopies can be submitted to me in today's class or in my office (Room 321, NIELIT Campus).

12/02/2018: The following class timings have been approved and finalized.
--Monday, 07pm-08pm, Lecture, Venue: H5, NIELIT Campus
--Tuesday, 07pm-08pm, Tutorial, Venue: H5, NIELIT Campus
--Wednesday, 07pm-08pm, Lecture, Venue: H5, NIELIT Campus
Nowonwards the weekdays' classes will be held according to this schedule without any special announcement. Details about the Saturday lectures will be announced as usual before the lecture.

09/02/2018: Tomorrow's lecture has been cancelled, in reponse to the request of some students having their GATE exam tomorrow.

09/02/2018: Our Moodle page is live now. Please join the course there with enrollment key csl356_201720182.

06/02/2018: Today's tutorial will be held during 07:00pm-08:00pm in H5 in the NIELIT campus, IIT Ropar.

05/02/2018: Today's lecture will be delivered by Dr. Tarique Anwar at 05:40pm in H5 in the NIELIT campus, IIT Ropar.

03/02/2018: Assignment 1 has been released.

22/01/2018: Welcome to the course CSL356 - Analysis and Design of Algorithms. It will be taught by two instructors: Dr Tarique Anwar and Dr Somitra Sanadhya. The first lecture will be given by Dr Somitra on 24th January (Wednesday) during 11:45am-12:35pm in H9 in the NIELIT campus, IIT Ropar.



Note: This page will be updated regularly with all the helpful information and announcements. Students are recommended to keep checking the updates here.