Course Objectives:
The course will enable the students to
Course Outcomes (COs):
Learning Outcome (at course level)
| Learning and teaching strategies | Assessment Strategies |
---|---|---|
CO 91 Explain Data Structures, Arrays, Strings, Pointers, Structures & Unions, Algorithms & their complexities. CO 92 Understand Algorithms, ADT, and Data Structures. CO 93 Implement Stack Operations and evaluate mathematical expressions using stack. CO 94 Comprehend recursion and solve various problems using recursion and analyze Linear & Binary Search. CO 95 Understand & implement queue operations with specific reference to priority queue and understand basic sorting Techniques (Exchange, Selection, Insertion Sorts) | Interactive Lectures, Discussion, Tutorials, Reading assignments, Demonstrations, Team teaching, Teaching using advanced IT audio-video tools. | Class test, Semester end examinations, Quiz, Solving problems in tutorials, Assignments, Presentation, Individual and group projects.
|
Introduction to Data Structure: Information and meaning, Arrays (one, two and multi-dimensional), Row major and column major form, representation of strings, allocation of storage and scope of variable, String Processing, Pointers, Structures & unions. Algorithm definition and its characteristics, Abstract data types, Order of Complexity: Big O notation.
Linked list: Introduction to linked list, linked list as a data structure, creation, insertion and deletion of nodes from a list, getnode and free node operations, concept of header nodes, array implementation of lists and its limitation, Allocating and freeing dynamic memory, comparing dynamic and array implementation of lists. Doubly Linked lists, Circular linked lists and Circular Double linked lists.C implementation: Singly & circular linked lists,
Stack: Definition, Primitive operations, representing stack in C, implementing the push and pop operation, testing exceptional conditions, infix, postfix and prefix expression (definition and examples), infix to postfix, evaluation of postfix expression (Algorithm and C implementation). Linked implementation of stacks.
Recursion definition and processes, algorithms, recursion in C, Writing recursive programs (e.g. Factorial, multiplication, Fibonacci sequence, Binary search, Towers of Hanoi Problem and similar problems), Properties of recursive definition or Algorithms, Efficiency of recursion. Searching: Linear and Binary Search.
Queues: Introduction, Definition of Queue and its sequential representation, C implementation of queues, insert and remove operation, Applications and Priority queues. Linked implementation of queues, linked implementation of priority queue.Sorting: Exchange Sorts (Bubble sort, Quick sort), Straight Selection sort, and Insertion sort.
1. E. Horowitz and S. Sahani, “Fundamentals of Data Structures”, Galgotia Book source Pvt. Ltd, 2000
2. Robert L.Kruse, “Data Structures and Program Design”, Third edition, PHI
3. P. S. Deshpande and O.G. Kakde, “C & Data Structure”, Wiley Dreamtech, 1st Edition, 2003