Data Structures Using C++ Lab

Paper Code: 
MCA 226
Credits: 
02
Periods/week: 
04
Max. Marks: 
100.00
Objective: 

 The course will enable the students to

  1. Familiarize with creation of Programs of different algorithm.
  2. Introduce various storage mechanisms of data and techniques for representation of the data in the real world.
  3. Provide mathematical approach for Analysis of Algorithms.
  4. Choose appropriate technique for a given problem.
  5. Develop programming skills to convert Dynamic Programming, Greedy method and Backtracking.
  6. Formulate problems using various strategies.

 Course Learning Outcomes (CLOs):

 

Learning Outcome (at course level)

Students will be able to:

Learning and teaching strategies

Assessment Strategies

  1. Implement various linear and nonlinear data structures.
  2. Describe, apply and analyze the complexity of divide and conquer strategy, greedy strategy and dynamic programming strategy.
  3. Apply the learned concepts in various domains like DBMS and Compiler Construction.
  4. Explain and apply backtracking, branch and bound and string matching techniques to deal with some hard problems.
  5. Select appropriate data structure for specified problem domain.
  6. Analyze the running time and space complexity of algorithms

Approach in teaching:

Interactive Lab Sessions,

Modeling, Discussions, implementing enquiry based learning, student centered approach

 

Learning activities for the students:

Experiential Learning, Discussions, Lab Assignments

  • Lab Assignment
  • Programming test in Lab Sessions
  • Continuous Assessment
  • Semester end practical exam
  • Viva-voce

 

1. Recursion:

         a) Factorial numbers.

               b) Fibonacci series.

2. Implementation of Stack Using Array, Implementation of Queue Using Array,   Circular queue operations using Array.

3. Postfix-evaluation, Prefix-evaluation, Conversion of Infix to Postfix.

4. Single Linked list, Doubly Linked List, Implementation of Stack and Queue Using Linked List.

5. Binary Tree Traversal, Binary Search Tree.

6. Sorting Techniques: Bubble Sort, Selection Sort, Merge Sort, Quick Sort, Radix Sort, Heap Sort.

7. Searching Techniques: Linear Search, Binary Search

8. Implementation of minimum spanning trees.

9. Implementation of single source shortest path.

10. Implementation of the Floyd-Warshall algorithm for finding the shortest path between all nodes in a graph.

Academic Year: