About the course Data Structures CST 201 KTU

 CST 201 DATA STRUCTURES 

CATEGORY      L  T P    CREDIT     YEAR OF INTRODUCTION 

PCC                   3   1 0         4                     2019

Preamble: This course aims at moulding the learner to understand the various data structures, their organization and operations. The course helps the learners to assess the applicability of different data structures and associated algorithms for solving real world problem which requires to compare and select appropriate data structures to solve the problem efficiently. This course introduces abstract concepts for data organization and manipulation using data structures such as stacks, queues, linked lists, binary trees, heaps and graphs for designing their own data structures to solve practical application problems in various fields of Computer Science. 

Prerequisite: Topics covered under the course Programming in C (EST 102)

Course Outcomes

CO1 Design an algorithm for a computational task and calculate the time/space complexities of that algorithm (Cognitive Knowledge Level: Apply) 

CO2 Identify the suitable data structure (array or linked list) to represent a data item required to be processed to solve a given computational problem and write an algorithm to find the solution of the computational problem (Cognitive Knowledge Level: Apply) 

CO3 Write an algorithm to find the solution of a computational problem by selecting an appropriate data structure (binary tree/graph) to represent a data item to be processed (Cognitive Knowledge Level: Apply) 

CO4 Store a given dataset using an appropriate Hash Function to enable efficient access of data in the given set (Cognitive Knowledge Level: Apply) 

CO5 Select appropriate sorting algorithms to be used in specific circumstances (Cognitive Knowledge Level: Analyze) 

CO6 Design and implement Data Structures for solving real world problems efficiently (Cognitive Knowledge Level: Apply)

Assessment Pattern

Bloom’s Category        Continuous Assessment Tests                    End Semester 

                                    Test1 (Percentage) Test2 (Percentage)         Examination Marks 

Remember                             30                    30                                 30 

Understand                            30                    30                                 30 

Apply                                    40                    40                                 40

Internal Examination Pattern: Each of the two internal examinations has to be conducted out of 50 marks 

First Internal Examination shall be preferably conducted after completing the first half of the syllabus and the Second Internal Examination shall be preferably conducted after completing remaining part of the syllabus. There will be two parts: Part A and Part B. Part A contains 5 questions (preferably, 2 questions each from the completed modules and 1 question from the partly covered module), having 3 marks for each question adding up to 15 marks for part A. Students should answer all questions from Part A. Part B contains 7 questions (preferably, 3 questions each from the completed modules and 1 question from the partly covered module), each with 7 marks. Out of the 7 questions in Part B, a student should answer any 5. 

End Semester Examination Pattern: There will be two parts; Part A and Part B. Part A contains 10 questions with 2 questions from each module, having 3 marks for each question. Students should answer all questions. Part B contains 2 questions from each module of which a student should answer any one. Each question can have maximum 2 sub-divisions and carries 14 marks.

Teaching Plan

Module 1 :Basic Concepts of Data Structures (5 hours)

1.1 System Life Cycle, 1 hour

1.2 Algorithms , Performance Analysis 1 hour

1.3 Space Complexity, Time Complexity 1 hour

1.4 Asymptotic Notation (Big O Notation) 1 hour

1.5 Complexity Calculation of Simple Algorithms 1hour

Module 2 :Arrays and Searching (10 hours)

2.1 Polynomial representation using Arrays 1 hour

2.2 Sparse matrix (Lecture 1) 1 hour

2.3 Sparse matrix (Lecture 2) 1 hour

2.4 Stacks 1 hour

2.5 Queues, Circular Queues 1 hour

2.6 Priority Queues, 1 hour

2.7 Double Ended Queues, 1 hour

2.8 Conversion and Evaluation of Expressions (Lecture 1) 1 hour

2.9 Conversion and Evaluation of Expressions (Lecture 2) 1 hour

2.10 Linear Search and Binary Search 1 hour

Module 3 : Linked List and Memory Management (12 hours)

3.1 Self Referential Structures 1 hour

3.2 Dynamic Memory Allocation 1 hour

3.3 Singly Linked List-Operations on Linked List, 1 hour

3.4 Doubly Linked List 1 hour

3.5 Circular Linked List 1 hour

3.6 Stacks using Linked List 1 hour

3.7 Queues using Linked List 1 hour

3.8 Polynomial representation using Linked List (Lecture 1) 1 hour

3.9 Polynomial representation using Linked List (Lecture2) 1 hour

3.10 Memory de-allocation 1 hour

3.11 Memory allocation-First-fit 1 hour

3.12 Best-fit and Worst-fit allocation schemes 1hour

Module 4 :Trees and Graphs (8 hours)

4.1 Trees,Binary Trees 1hour

4.2 Tree Operations, Binary Tree Representation, 1hour

4.3 Tree Traversals 1hour

4.4 Binary Search Trees 1hour

4.5 Binary Search Tree Operations 1hour

4.6 Graphs, Representation of Graphs 1hour

4.7 Depth First Search and Breadth First Search on Graphs 1hour

4.8 Applications of Graphs 1hour

Module 5 : Sorting and Hashing (10 hours)

5.1 Sorting Techniques – Selection Sort 1hour

5.2 Insertion Sort 1hour

5.3 Quick Sort 1hour

5.4 Merge Sort 1hour

5.5 Heap Sort 1hour

5.6 Hashing- Hashing Techniques 1hour

5.7 Collision Resolution 1hour

5.8 Overflow handling 1hour

5.9 Hashing functions – Mid square and Division methods 1hour

5.10 Folding and Digit Analysis methods 1hour

Comments

Popular posts from this blog

Data Structures CST 201 KTU Third Semester Syllabus Notes and Solved Questions- Dr Binu V P 984739060

Stack

Quick Sort