per person /

Free

Home Courses

Data Structures using C++

Data Structures using C++

Teacher

K.Santoshachandra Rao

Category

Core Courses

Course Attendees

Still no participant

Course Reviews

Still no reviews

Course Name : Data Structures using C++

 

Code(Credit) :---(1-2-1)

 

Course Objectives

  • Be familiar with techniques of algorithm analysis and Recursive method
  • Be familiar with implementation of linked data structures such as linked lists and binary trees
  • Be familiar with several sub-quadratic sorting algorithms including quick sort, merge sort and heap sort
  • Be familiar with some graph algorithms such as shortest path and minimum spanning tree

Learning Outcomes

  • Evaluate algorithms and data structures in terms of time and memory complexity of basic operations
  • Define basic static and dynamic data structures and relevant standard algorithms for them: stack, queue, dynamically linked lists, trees, graphs, heap, priority queue, hash tables, sorting algorithms, min-max algorithm
  • Determine and demonstrate bugs in program, recognize needed basic operations with data structures
  • Formulate new solutions for programming problems or improve existing code using learned algorithms and data structures

Course Syllabus

Module I: Problem Solving Analysis (6 hrs)
Define the problem, Identify the problem , Introduction to Problem Solving , Problem solving basics , Defining creativity v/s innovation
Find Creative Solutions using creativity tools
Effective problem solving approaches , Critical thinking and information analysis , Brainstorming, Reverse Brainstorming, Imagineering, Mind Mapping,Six Thinking Hats: A Tool to Strengthen Critical Thinking, Collaboration, Communication, and Creativity Skills , Analyzing the situation, Gathering information, Identifying solution criteria , Decision Making Methods , Charts and Diagrams , Applying outcome-based thinking
Evaluate and Select solution,
Pro’s and Con’s, Force field analysis, Feasibility/Capability Analysis, Decision analysis, evaluating problems , Choosing among alternatives , Qualitative analysis, discussing qualitative analysis techniques , Establishing objectives , Assigning weight to objectives in order to make the best decision , Creating a satisfaction scale to choose between alternatives
Implementing Decisions
Create an action plan, Break solution into action steps, Prioritize actions and assign roles (setting priorities for taking action) ,Follow-up at milestones

Programs:
1.Problem solving (Control structures , Arrays ) using Raptor Tool .

Module II: Array & Stack (9 hrs)
Analysis of different Algorithms, Asymptotic analysis, Algorithm analysis, Complexity Analysis ,Application of Data structures
Basic Data Structures, Arrays, Stacks and its applications (Recursion, Infix to Postfix Conversion and Postfix Evolution

Programs:
1.Write a program to perform the following menu driven program on the input array.
a. Insertion
b. Deletion
c. Searching
d. Sorting
e. Merging
f. Display
g. Exit
2.Write a program to perform the following menu driven program on the STACK.
a. Push
b. Pop
c. Display
d. Exit
Module III: Queue & Linked List (9 hrs)
Queues , Priority Queues , Dequees.
Linked lists: Single Linked List and Operations on Single Linked List (Creation Insertion , Deletion , Sorting and Reverse ).

Programs:
1. Write a program to perform the following menu driven program on the Queue.
a. Insertion
b. Deletion
c. Display
d. Exit

2.Write a program to create a single linked list perform the following menu driven program.
a. Insertion at front
b. Insertion at end
c. Insertion at particular position
d. Deletion at front
e. Deletion at end
f. Deletion at particular position
g. Display

Module IV: Stack & Queue Using Linked List (8 hrs)
Circular linked list and Double linked list , Stack implementation using Linked List and Queue implementation using Linked List

Programs:

1.Write a program to create a Double linked list perform the following menu driven program .
a. Insertion at front
b. Insertion at end
c. Insertion at particular position
d. Deletion at front
e. Deletion at end
f. Deletion at particular position
g. Display
2.Write a program to create a circular linked list and display it.
3.Write a program to implement Stack Using Linked List.
4.Write a program to implement Queue Using Linked List.

Module V: Trees (10 hrs)
Trees and hierarchical orders ,Introduction to trees , Abstract trees , Tree traversals , Forests , Ordered trees , Binary trees , Perfect binary trees , Complete binary trees , Search trees , Binary search trees , AVL trees

Programs:
1.Write a program to create Binary tree and display it .
2. Write a program to create a BST and display it.
3. Write a program to Print all pairs from two BSTs whose sum is greater than the given value.
4.Write a program to remove duplicate entries from the BST.
5.Write a program to create a AVL tree and display it.

Module VI: Searching & Sorting (8 hrs)
Searching & Sorting algorithms , Objectives of Searching , The Sequential Search , Analysis of Sequential Search , The Binary Search , Analysis of Binary Search , Introduction to sorting , Insertion sort , Bubble sort , Heap sort ,Merge sort ,Quick sort

Programs:
1.Write a program to perform linear and binary search.
2. Write a program to perform selection sort , Bubble sort and Insertion sort.
3. Write a program to perform merge and quick sort.
4.Write a program to perform Heap sort.

Module VII: Hashing (8 hrs)
Hash functions and hash tables ,Hashing & Introduction to hash tables ,Hash functions , Mapping down to 0 ... M – 1 , Chained hash tables , Scatter tables , Open addressing , Linear probing , Quadratic probing , Double hashing, Poisson distribution , Collision Resolution
Graph Terminology and Traversals.

Programs:
1.Write a program to perform Linear Probing.
2. Write a program to perform Double Hashing

Text Books:

  1. Data Structures, Algorithms and Applications in C++, Sartaj Sahani, 2nd Edition.
  2. Data Structures and Algorithms in C++, Michael T.Goodrich, R, Tamassia and D.Mount, wiley Student Edition, 7th edition, John Wiley and Sons.

Reference Books:

  1. Data Structures and Algorithms Analysis in C++ by Mark Allen Weiss.
  2. Data Structures and Algorithms in C++, 3rd edition, Adam Drozdek, Cengage Learning.

 

Projects:

  • Contact book application using Doubly Linked List
  • Dictionary using Binary trees
  • Snake Game
  • Chess Game
  • AVL -Insertion and Deletion
  • Travel Planner (Graphs)

Session Plan

Session 1

Introduction to problem solving Video Source-ClickHere      Content Source-ClickHere

Session 2

Find Creative Solutions using creativity tools Video Source-ClickHere      Content Source-ClickHere

Session 3

Evaluate and Select solution Video Source-ClickHere      Content Source-ClickHere

Session 4

Implementing Decisions Video Source-ClickHere      Content Source-ClickHere

Session 5

Practice : Module 1 - Programs Using Raptor tool

Session 6

Project: Group Identification and Project Distribution

Session 7

Asymptotic analysis Video Source-ClickHere      Content Source-ClickHere

Session 8

Applications of Data Structure Video Source-ClickHere      Content Source-ClickHere

Session 9

Introduction to data structures in c++ Video Source-ClickHere      Content Source-ClickHere

Session 10

Types of data structures Video Source-ClickHere      Content Source-ClickHere

Session 11

Session 12

Practice : Module 2 - Program-1

Session 13

Session 14

Applications of Stack Video Source-ClickHere      Content Source-ClickHere

Session 15

Practice : Module 2 - Program 2

Session 16

Project: Review  (Abstract , Existing System , Proposed System and Requirement Analysis)

Session 17& 18

Queues , Priority Queues Video Source-ClickHere      Content Source-ClickHere

Session 19

Practice : Module 3 - Program - 1

Session 20 & 21

Single linked lists Video Source-ClickHere      Content Source-ClickHere

Session 22

Practice : Module 3 - Program -2

Session 23

Project: Review (Design phase)

Session 24 & 25

Double linked lists Video Source-ClickHere      Content Source-ClickHere

Session 26

Practice : Module 4 - Program - 1

Session 27

Circular linked lists Video Source-ClickHere      Content Source-ClickHere

Session 28

Practice : Module 4 - Program - 2

Session 29

Stack using Linkedlist Video Source-ClickHere      Content Source-ClickHere

Session 30

Queue using LinkedlistVideo Source-ClickHere      Content Source-ClickHere

Session 31

Practice : Module 4 - Program - 3,4

Session 31

Non linear data structures Video Source-ClickHere      Content Source-ClickHere

Session 32

Introduction to Trees Video Source-ClickHere      Content Source-ClickHere

Session 33

Abstract Trees, Tree traversals Video Source-ClickHere      Content Source-ClickHere

Session 34

Session 35

Binary Search Trees Video Source-ClickHere      Content Source-ClickHere

Session 36

Practice : Module 5 - 1,2,3,4 Programs

Session 37 & 38

Session 39

Practice : Module 5 - Program-5

Session 40

Project: Review (Coding Phase)

Session 41

Introduction to searching & sorting algorithms Video Source-ClickHere      Content Source-ClickHere

Session 42

The sequential search Video Source-ClickHere      Content Source-ClickHere

Session 43

The Binary search Video Source-ClickHere      Content Source-ClickHere

Session 44

Practice : Module 6 - Program -1

Session 45

Session 46

Session 47

Session 48

Session 49

Session 50

Heap & Radix Sort Video Source-ClickHere      Content Source-ClickHere

Session 51

Project: Review (Testing and Implementation)

Session 52

Session 53

Linear and quadratic ProbingVideo Source-ClickHere      Content Source-ClickHere

Session 54

Collision Resolution Video Source-ClickHere      Content Source-ClickHere

Session 55

Graph traversals Video Source-ClickHere      Content Source-ClickHere

Session 56

Practice : Module 7 - 1,2 Programs

Session 57

Project: Review ( Documentation , Execution )

Recent Comments

    Our Main Teachers

    K.Santoshachandra Rao

    Assistant Professor , Dept of Computer Science & Engineering
    VIEW PROFILE

    K.Santoshachandra Rao working as Assistant Professor, Dept of CSE, Centurion University of Technology and Management, Odisha . Interested to work on Problem Solving Methodologies , Medical Image Processing and ChatBot. Programming Skill: C Programming Data Structure Object Oriented Programming using C++ Core Java Python Web Development(HTML,CSS,PHP)