Lovely Professional University,Punjab
Format For Instruction Plan [for Courses with Lectures and Labs
Course No CSE2050
Cours Title DATA STRUCTURES
Course Planner 12738 :: Munish Kumar
Lectures Tutorial Practical Credits 3 0 3 5
Text Book:
1 Seymour Lipschutz,Title: Schaum Outline Series,Publishers: Tata McGraw Hill,New Delhi,Year of Publication: 2006
Other Specific Book:
2 Mark Allen Weises, Data Structures & Algorithmic Analysis in C, Pearson Education 3 Adam Drozdek, Data Structure & Algorithms in C++. Thomson 4 Kruse, Data Structures & Program design, Prentice Hall of India, New Delhi 5 Tenenbaum, Augenstein, & Langsam, Data Structures using C and C++, Prentice Hall of India, New Delhi 6 Sorenson and Tremblay : An Introduction to Data Structures with Algorithms
Other Reading Sr No Jouranls atricles as compulsary readings (specific articles, Complete reference) 7 Article on An Extensive Examination of Data Structures, [Link] 8 Article on ADT Tool: Learning Data Structures as Visual Abstract Data Types, [Link] 9 Self-adjusting binary search trees, Journal of the ACM, Volume 32 , Issue 3 (July 1985) Pages: 652 - 686, Year of Publication: 1985 Relevant Websites Sr. No. (Web adress) (only if relevant to the courses) 10 [Link] 11 [Link] 1 Salient Features Provides with introduction to data structures. It also provides us with the links of various data structure such as arrays, linked list, queues This link provides with the details of various data structures Approved for Autumn Session 2011-12
12 [Link] 13 [Link]/~swati/[Link] 14 [Link]
This provides us with the various presentations on the data structures This ppt will provides the introduction for finding the complexity of algorithm The link provides the relationship between a heap and a priority Queue
Detailed Plan For Lectures
Week Number Lecture Number Lecture Topic Chapters/Sections of Pedagogical tool Textbook/other Demonstration/case reference study/images/anmatio n ctc. planned
Part 1
Week 1 Lecture 1 Lecture 2 Basic concepts and notations, data structures and data structure operations Complexity Analysis: Mathematical notation and functions, algorithmic complexity and time space trade off, Big O Notation The best, average & Worst cases analysis methodology Intro to Arrays stack and queues and their applications, linked and sequential representation ->Reference :1,Ch 1; Sec 1.1 1.2 1.3 1.4 [Link] ki/Data_structure ->Reference :1,Ch 2; [Link] Sec 2.1 2.2 2.3 2.5 2.6 ~vernon/cs367/notes/3. [Link] ->Reference :13 [Link] ki/Best,_worst_and_aver age_case Images from [Link]
Lecture 3
Week 2
Lecture 4
->Reference :1,Ch 6; Sec 6.1 6.2 6.3 6.4 6.10 6.11
Lecture 5
Linear & Multidimensional Arrays, Representation & ->Reference :1,Ch 4; Images from Multi traversal. Records, Record Structures Sec 4.1 4.2 4.3 4.4 4.9 Dimensional [Link] 4.11 Linear and Binary Search Algorithms and their complexity ->Reference :1,Ch 4; Sec 4.7 4.8 [Link] om/view/tutorial/Linearand-Binary-SearchAlgorithms/53610 [Link] tjensen/ptr/[Link] Images from Memory [Link] [Link] tjensen/ptr/[Link] [Link] [Link]/~akin/cmpe223/ch [Link] Approved for Autumn Session 2011-12
Lecture 6
Week 3
Lecture 7 Lecture 8 Lecture 9
Pointers: Pointer Arrays. Arrays of Pointers. Dynamic Memory Management
->Reference :1,Ch 4; Sec 4.10 ->Reference :12
Usage of pointers, memory management functions, ->Reference :5,Ch 9; debugging pointers Sec 9.3 Linked list, representation, traversal ->Reference :1,Ch 5; Sec 5.1 5.2 5.3 5.4
Week 4
Lecture 10
Part 2
Week 4 Lecture 11 searching, Insertion in linked list ->Reference :1,Ch 5; Sec 5.5 5.7 ->Reference :1,Ch 5; Sec 5.8 5.10 ->Reference :1,Ch 5; Sec 5.9 ->Reference :1,Ch 6; Sec 6.2 6.3 6.4 6.7 ->Reference :1,Ch 6; Sec 6.10 6.11 ->Reference :1,Ch 6; Sec 6.5 [Link] ata_structures/Singlylinked_list/Insertion N.A [Link] [Link] [Link] .net/presentations/Stack [Link] N.A [Link] [Link]/java/43stack/ [Link] .net/presentations/Stack [Link] ->Reference :1,Ch 6; Sec 6.12 6.13 ->Reference :1,Ch 6; Sec 6.8 ->Reference :5,Ch 3; Sec 3.1 3.2 3.5 [Link] ki/Priority_queue [Link] net [Link] cheung/teaching/ee2_so ftware_engineering/Lect [Link] N.A
Lecture 12 Week 5 Lecture 13
deletion of linked list, Two way Linked List Header Lists, Circular Lists
Lecture 14
Stacks Representation in memory, Recursion:
Lecture 15 Week 6 Lecture 16 Lecture 17
Queues & its Representation in memory traversal & basic operations on stacks & Queues Applications of stacks & queues
Lecture 18 Week 7 Lecture 19 Lecture 20
Various types of Queues Tower of Hanoi Definition, Function Call & Recursion implementation & Complexity issues
Lecture 21
Trees-definitions and basic concepts,representation ->Reference :1,Ch 7; in memory Sec 7.19
MID-TERM Part 3
Week 8 Lecture 22 Binary trees, binary tree traversal, searching ->Reference :1,Ch 7; Sec 7.1 7.2 7.3 7.4 [Link] cheung/teaching/ee2_so ftware_engineering/Lect [Link] [Link] du/110/[Link]
Lecture 23
insertion and deletion in binary trees
->Reference :1,Ch 7; Sec 7.5
Approved for Autumn Session 2011-12
Week 8
Lecture 24
Binary Search Tree
->Reference :1,Ch 7; Sec 7.7 7.8
[Link] [Link].h k/~hua min/CO MP171/ [Link] N.A Images from [Link] Images from [Link]
Week 9
Lecture 25 Lecture 26 Lecture 27
Insertion, deletion in binary search trees Heaps Heap Sort Algorithms Heaps as priority Queues
->Reference :1,Ch 7; Sec 7.8 7.9 ->Reference :1,Ch 7; Sec 7.17
Week 10
Lecture 28
->Reference :14
N.A
Part 4
Week 10 Lecture 29 Introduction to graphs, Representation and terminology of graphs Traversing a graph, Application of Graphs ->Reference :1,Ch 8; Sec 8.1 8.2 8.5 ->Reference :1,Ch 8; Sec 8.3 8.4 ->Reference :1,Ch 8; Sec 8.7 ->Reference :1,Ch 9; Sec 9.9 ->Reference :1,Ch 9; Sec 9.5 9.6 ->Reference :1,Ch 9; Sec 9.3 Ch 4; Sec 4.6 ->Reference :1,Ch 9; Sec 9.4 9.7 ->Reference :1,Ch 6; Sec 6.6 [Link] [Link]/software/AlgAnim/ graph_rep.html [Link] [Link]/software/AlgAnim/ graph_rep.html [Link] eppstein/161/[Link] ml Images from [Link] N.A [Link] ki/Insertion_sort [Link] ki/Sorting_algorithm [Link] [Link]/~jmor159/PLDS21 0/[Link]
Lecture 30
Week 11
Lecture 31
DFS & BFS
Lecture 32 Lecture 33 Week 12 Lecture 34 Lecture 35 Lecture 36
Hashing Merging & Merge Sort Insertion sort And Bubble sort and their complexity Selection, Radix sort And its complexity Quick sort & its complexity analysis.
Spill Over
Week 13 Lecture 37 Far pointers [Link] ki/Far_pointer
Approved for Autumn Session 2011-12
Week 13
Lecture 38 Lecture 39
Abstract data Structure Self- Adjusting Binary search trees AVL Trees
[Link] ki/Abstract_data_type [Link] [Link]?id=3835 [Link]/aca demics/doc/242/[Link]
Week 14
Lecture 40
Details of homework and case studies
Homework No. Objective Topic of the Homework Nature of homework (group/individuals/field work Individual Evaluation Mode Allottment / submission Week 3/6
Test 1
To have a knowledge of basics of data Structure To have a knowledge of basics of data Structure To do the Minor Project
Topics Covered from Week #1 to Weak # 5
Written Test
Test 2
Topics Covered from Week #6 to Weak # 9
Individual
Written Test
8 / 10
Term Paper 1
Term Paper
Individual
Term paper
3/9
Scheme for CA:out of 100*
Component Test,Term Paper Frequency 2 Total :Out Of 3 Each Marks Total Marks 10 10 20 20
* In ENG courses wherever the total exceeds 100, consider x best out of y components of CA, as explained in teacher's guide available on the UMS List of suggested topics for term paper[at least 15] (Student to spend about 15 hrs on any one specified term paper)
Approved for Autumn Session 2011-12
Sr. No. Topic 1 1. Multi-dimension Linked Lists on Recursive Algorithm 2. Fault tolerant data structures 3. Parallel Generation of Binary Search Trees 4. Application issues of Fibonacci heaps 5. Implementation issues Max flow min cut algorithm 6. Automatic Transformation of Linked List Data Structures 7. Comparison and non- comparison based sorting algorithms 8. non-recursive algorithm for binary search tree traversal 9. Implementation issues of voronoi diagram 10. Generalized Binary Linked List 11. Parallel complexity of queue versus stack breadth-first search 12. Issues in Travelling salesman problem 13. Different Balanced binary trees 14. Applications issues of Treaps 15. Applications of sparse graphs
*Each experiment of the lab will be evaluated using following relative scheme:
Component VIVA WR J/E % of Marks 30 20 50
List of experiments :Lecture Number Individual 1 Individual 2 Individual 3 Individual 4 Individual 5 6 Lecture Topic Copy string from one to another Concatenate Two String Arrays traversal,insertion, Deletion Linear & Binary Search Two dimensioanal arrays Pedagogical Tools Or Equipment Planned Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ lab Manual Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Approved for Autumn Session 2011-12
Individual 6 Individual 7 Individual 8 Individual 9 Individual 10 Individual 11 Individual 12 Individual 13 Individual 14 Individual 15 Individual 16 Individual 17 Individual 18
Pointer Arrays Dynamic Memeory Managemnt Memory Management Functions Linked List Traversal & Searching Linked List Insertion Linked List Deletion Header List Circular List Stack & Queue Operations Deque Priority Queue Recursion Tower of Hanoi
Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++
Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable
Mid Term
Individual 19 Individual 20 Individual 21 Individual 22 Individual 23 Individual 24 Binary Search Tree, traversal and searching Binary Search Tree Insertion and deletion Traversing a Graph Shortest Distance Algorithm Heap and Heap Sort Heap as priority Queue Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable
Approved for Autumn Session 2011-12
Individual 25 Individual 26 Individual 27 Individual 28 Individual 29 Individual 30
DFS & BFS Hashing Insertion & Selection Sort Merge & Radix Sort Bubble Sort Quick Sort
Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++ Computer,Programming Language C/C++
Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable Not Applicable
Spill Over
Individual 31 Individual 32 Creating a simple binary tree Searching in a simple binary tree Computer,Programming Language C/C++ Computer,Programming Language C/C++ Not Applicable Not Applicable
Approved for Autumn Session 2011-12