Search This Blog

Friday, August 05, 2011

Data Structures and Algorithms

Data Structures and Algorithms


Course Contents

This is an introductory level course in Data structures and algorithms, offered by CSE dept, to students of other departments who have been permitted to register for a 'minor'. The course is meant for non-CSE, UG students. CSE/PG students should take one of the other algorithms courses being offered.The syllabus definition given for this course is available from the ASC website. It is copied here for information:
Introduction to data structures, abstract data types, analysis of algorithms. Creation and manipulation of data structures: arrays, lists, stacks, queues, trees, heaps, hash tables, balanced trees, tries, graphs. Algorithms for sorting and searching, order statistics, depth-first and breadth-first search, shortest paths and minimum spanning tree.
The course will not go into much excruciating details of various C++ implementation issues of data structures and algorithms; It will not be too top-level either. The course will focus on concepts that are 'broadly useful', not only in CSE but also other disciplines. Mostly we will study "What are some useful data structures and algorithms?”.
We will do in-class group discussions to design data structures for simpler versions of real-life applications amd programming problems. We will focus on "Why are the data structures and algorithms designed in a given way?". We will study pros-and-cons of various solutions to a given problem (Why is a particular data structure or algorithm "better" than some other?). We will also discuss "How to implement these data structures and algorithms?" in a systematic manner.


Lecture Schedule

The course is in Slot 5. There will be two lectures per week, each of 90 minutes duration.
Most of the readings correspond to the sections in the following Textbooks:
[GTM]: Data Structures and Algorithms in C++ , by M. Goodrich, R. Tamassia and D. Mount, Seventh Edition.
[RS]: Algorithms in C++ , by R. Sedgewick, Third Edition.

NoDateTopicReading/SlidesRemarks
-05 JanNo class-Registration still ongoing
-07 JanNo class-Institute: Techfest 2011
112 JanIntroduction-Need for data structures, their relation with algorithms, ideas of correctnesss, complexity
214 JanC++ recap[GTM Ch.1]Complete this topic as self study
319 JanArrays and Linked Lists[RS Ch.3]-
421 JanList processing[RS Ch.3]-
-26 JanNo class-Republic Day
528 JanString processing[RS Ch.3]-
602 FebComplexity analysis[GTM Ch.3]-
704 FebQuiz 1-10% weightage; One A4 sheet of handwritten notes allowed
809 FebStack applications[RS Ch.4]Slides for Stack-Queue
911 FebQueue and Deque[RS Ch.4]Activity: Implementing a Queue using Stacks
-16 FebNo class-Institute Holiday
1018 FebTutorial-Problem-solving on topics covered so far
-23 FebNo class-Midsem week
1125 FebMidsem:
All topics so far
-30% weightage; One A4 sheet of handwritten notes is allowed.
Links to:Some Animations, and More animations.
1202 MarTrees[GTM Ch. 6]-
1304 MarTree traversal[GTM Ch. 6]Homework 1 to be assigned
1409 MarQuicksort and Mergesort[RS Ch. 7, 8]Elementary sorting [RS Ch. 6] - self study
1511 MarPriority Queue[RS Ch. 9]Homework 1 is due on 14th March
1616 MarHeapsort[RS Ch. 9]Slides for Priority Queues and Heapsort
1718 MarBinary Search Trees[GTM Ch. 9]Homework 2 to be assigned
1823 MarAVL Trees[GTM Ch. 9]-
1925 MarHashing[RS Ch. 14]Homework 2 is due on 28th March
2030 MarQuiz 2:
All topics after Midsem
-10% weightage; One A4 sheet of handwritten notes is allowed.
2101 AprGraphs: Data Structures[GTM Ch. 12]Homework 3 to be assigned
2206 AprGraphs: Traversal[GTM Ch. 12]-
2308 AprShortest Path, MST[GTM Ch. 12]Homework 3 is due on 15th April
2413 AprTutorial-Problem-solving and Practice Test
2515 AprClosure-More problem-solving; Last day of classes
2628 AprEnd-sem:
All topics
-40% weightage; One A4 sheet of handwritten notes is allowed.

1 comment:

Popular Courses

Resources Higher Education Blogs - BlogCatalog Blog Directory Resources Blogs