Thursday, February 1, 2018

Data Structure and Algorithms (DSA) USING C/C++ Topics Covered

Topics Covered

Unit-01

Data structure
Operations performed on Data structure
Classification of Data structures
Linear and Non Linear data structure
Primitive and Non-primitive data structure
Static and Dynamic data structure
Homogeneous and Non homogeneous (heterogeneous) data structure
Analysis of Algorithms
Abstract Data Type (ADT)
Three level architecture of data structure
Stack Data Structure, Push, Pop and Peep Operations , Applications of Stack
C Program for Push, Pop, Peep operations of Stack data structure.
Applications of Stack Data Structure
Algorithm for infix to postfix expression conversion using stack with example.
Evaluation of Postfix Expressions/Notations
C program to convert infix expression into postfix...
C program to implement postfix expression evaluati...
Recursion,Types of Recursion,Advantages and Disadvantages of Recursion,Example Programs of Recursion
C program to calculate factorial of number N using...
C program to print Fibonacci Series of N numbers u...
C program to find HCF or GCD of two numbers using ...
C program to find sum of n numbers using Recursion...
C program for Insertion, Deletion, Traversing operations of Linear or Static Queue
Queue / linear queue / static queue Data Structure, Insertion, Deletion and Traversing Operations , Applications of Queue
Disadvantage of Linear / Static Queue and Its Solution
Circular Queue Data Structure, Insertion, Deletion and Traversing Operations
Double Ended Queue or Dequeue or Deque or head tail linked list
Priority Queue
Applications of Queue

Unit-02

Linked List Data structure , Types of Linked List, Operations performed on Linked List
Singly Linked List (SLL) Introduction and Creation Create function/algorithm
Singly Linked List (SLL) traversing/visiting operation, traverse function/algorithm
Singly Linked List (SLL) Insertion operation and their types, Insert functions/algorithms
Singly Linked List (SLL) Deletion operation and their types, Delete functions/algorithms
Singly Linked List Searching Operation, Search function/algorithm
Singly Linked List (SLL) Sorting operation, Sort function/algorithm
Singly Linked List (SLL) Reversal operation, Reverse function/algorithm
Singly Linked List (SLL) Merging operation, Merge function/algorithm
Singly Linked List (SLL) Program
Doubly Linked List (DLL) Introduction and creation operation, create function/algorithm
Doubly Linked List (DLL) Traversing- Backward and Forward
Doubly Linked List(DLL) insertion operation, insert functions/algorithms
Doubly Linked List(DLL) deletion operation, Delete functions/algorithms
Doubly Linked List(DLL) searching operation, search function/algorithm
Doubly Linked List(DLL) Sorting operation, Sort function/algorithm
Doubly Linked List merging operation, merge function/algorithm
Doubly Linked List (DLL) Program
Circular Linked List (CLL) Introduction and Program
Circular Doubly Linked List (CDLL) Introduction and Program
C program to add two polynomials using linked list...
C Program to Solve Josephus Problem using Linked L...
Advantages and Disadvantages of Singly Linked List (SLL)
Advantages & Disadvantages of Doubly Linked List (DLL)
Dynamic Stack or Linked Stack or Linked List representation of Stack, Linked Stack Operations and Program
Dynamic Queue or Linked Queue or Linked List representation of Queue, Linked Queue Operations and Program
Applications of Linked List (लिंक्ड लिस्ट के अनुप्...

Unit-03

Tree data structure and terminology (ट्री डाटा स्ट्रक्चर एवं परिभाषाएँ)
Representation of Binary Tree or Binary Search Tree(BST)
Creation of Binary Tree OR Binary Search Tree(BST)
Insertion in binary search tree
Searching in binary search tree(BST)
preorder, inorder and postorder traversal of binary tree or binary search tree(BST) with program.
Non Recursive Binary Tree Traversal using Stack
AVL (Adelson, Velski and Landis) tree
Threaded Binary Tree (थ्रेडेड बाइनरी ट्री)
Applications of tree data structure (ऍप्लिकेशन्स ऑ...

Unit-04

Searching or Search Algorithms, Types of Searching, Need of Searching
Linear or Sequential Search Introduction and function/ algorithm/ program
Binary Search or half-interval search or logarithmic search or binary chop Introduction and function / algorithm / program
Interpolation Search Introduction and function / algorithm / program
Sorting and Sort algorithms Introduction
Bubble Sort (बबल सॉर्ट)
Insertion Sort (इंसर्शन सॉर्ट)
Selection Sort (सिलेक्शन सॉर्ट )
Merge Sort (मर्ज सॉर्ट)
Quick Sort (क्विक सॉर्ट)
Heap Sort (हीप सॉर्ट )
Complexity of an algorithm or function - time complexity and space complexity
Asymptotic analysis of an algorithm (Big Oh Notation)
worst case,average case and best case complexity o...

Unit-05

Hashing (हैशिंग)
Hash collision and its resolution
Graph data structure, directed graph, undirected graph and weighted graph
Graph Representations, Incidence Matrix, Adjacency Matrix
BFS algorithm introduction and implementation in C language
DFS algorithm introduction and implementation in C language
Spanning Tree and Minimum Spanning Tree
shortest path (Dijkstra's) algorithm

Others (Array and Sparse Matrix)

Array Data structure, Types of Array, 1D, 2D, Mult...
C program to calculate sum of diagonal elements of...
Linear Search Program
C Program for Bubble Sort
C program to calculate sum and average of elements...
C program to find minimum and maximum element exis...
C program for Addition of two matrices.
C program to find Reciprocal of a given matrix.
C program for Matrix Multiplication.
Sparse Matrix
C program to generate sparse matrix from given two...
C Program to check that given Matrix is Sparse Mat...
Mathematical formula to find memory address of any...

Stack Data Structure, Push, Pop and Peek Operations , Applications of Stack

Stack is a linear data structure. It is collection of ordered data elements. It is also known as LIFO system (last in first out). It means i...