Data Structures through C

Product: Theory Subject
Categories: Diploma

Features Includes:

  • 60 - 3D/2D Animation
  • 467 Pages of Content
  • 90 Lecture Hours
  • 96 Quiz
  • Suitable for All Technical University Syllabus

Course Description

Data Structures in C are used to store data in an organised and efficient manner. In C Programming Language Different types of data structures are; Array, Stack, Queue, Linked List, Tree. In term of computer programming language, a data structure may be selected or designed to store data for the purpose of working on it with various algorithms

OBJECTIVES:

  • Understand an Overview of Data Structures
  • Understand Linear Data structures. Perform insertion and deletion operation on a linked list
  • Define stack. Explain array implementation of a queue and expression
  • Explain the linear representation and linked list representation of a Binary tree
  • Define sorting, need of sorting and list the four methods of sorting
UNIT - I INTRODUCTION TO DATA STRUCTURES

Define data structure and classify them-Introduction to Data Structures - What is Data? - What is Data Structures? - Data Structures – Classifications. Linear and nonlinear data structures - Introduction.Introduction - abstract data types-Abstract Data Types - A Stack ADT for List - Why ADT?.State algorithm analysis for time requirements-Introduction - Operations on data structure - Algorithm - Algorithm for simple interest - Algorithm analysis for time and space requirements.Linked lists over arrays and dummy header - Introduction to Linked List - Dummy Header.Explain the creation of a singly linked list - Singly Linked List. Represent a node of singly linked list using 'C' structure-Singly Linked List using 'C' structure. Explain the creation of a singly linked list - Program for Creation. Perform insertion and deletion operation on a singly linked list - Inserting a new node - Program for Insertion - Deleting a Node - Program for Deletion - Single Linked List.Know how to search and replace an element in a linked list-Replace an Element in a Linked List - Program for Searching and Replacing. Know the structure of a singly circular linked list-Singly Circular Linked List - Circular Singular Linked List - Disadvantages of S.L.L - Advantage of circular list over a singly linked list. Represent a node of singly circular linked list using 'C' structure-Circular linked list in C - Convert singly linked list into circular linked list. Know how to create a doubly linked list - Introduction to Doubly Linked List - Program for Doubly Linked List - Double Circular Linked List - Know the structure of a doubly linked list.Insert and delete elements in a doubly linked list-Doubly linked list - Insert and delete elements in a doubly linked list - Advantages of a doubly linked list over a singly linked list. Doubly Linked Circular List-Doubly Circular Linked List- Inserting a New Node - Deleting a Node - Empty List - Display - Applications of List - Representation of DLL node of C language.

UNIT II - LINEAR DATA STRUCTURES

Define stack - Introduction to Stack- Implementation of Stack - Stack overflow and underflow - Application of stack.Convert infix to postfix expression - What is expression - Conversion of Infix to Postfix - Introduction. Evaluate postfix expression-Evaluation of Postfix Expressions. Queues - Introduction.Explain the operations on queues - Queue - Queue Operation - Operation of Queue - Array Implementation - Program for Implementation of Queue using Arrays - Program for queue.Discuss application of queues-Need for Linked List Implementation of Queue - Linked List Representation of a Queue - Program for Linked list implementation of a Queue - Applications of Queue. Know about circular queues-Drawbacks of Queue - Circular Queue - Circular Queue Implementation - Circular Queue - Implementation of Circular Queue Using Arrays - Program for a Circular Queue - Creating Circular Queue - Initializing Circular Queue - Empty Circular Queue - Full Circular Queue - Inserting a New Node - Deleting a Node.Know about priority queues-Introduction - Priority Queue Using a Single Two Dimensional Array- Using as any Arrays as there are Priority Levels - Definition of Heap- Applications of Priority Queues - Understand Sparse Matrix - Representation of Sparse Matrix - Program for Sparse Matrix - Transpose of Sparse Matrix.

UNIT III - NON LINEAR DATA STRUCTURES

Tree Concepts-Introduction to Tree - Terminology - Attributes of the Tree - Expression Tree - Parenthesis matching. Binary Tree - Binary Tree.Linear representation and linked list representation of a Binary tree - Binary tree representation. Creating Binary Tree-Binary Tree -Strictly Binary Tree - Complete Binary Tree - Program for Creation and Display of a tree. Tree Traversals -Traversing a Binary Tree - Binary Tree Traversals - Algorithm – Inorder Traversal - Tree traversal techniques. Construct a binary tree for given inorder and preorder traversal - Constructing a binary tree - Algorithm – Preorder Traversal. Construct a binary tree for given inorder and postorder traversal - Constructing a binary tree- Algorithm – Postorder Traversal. General Tree into Binary Tree - General Tree - General Tree into a Binary Tree - Creating a Binary Tree from a General Tree. Operations and Application of Binary Tree - Binary Tree Operations-Finding a value(or)Item to Tree(Binary Search Tree) - Inserting a node in a binary search Tree - Deletion - Tree Traversal using a Flags - List the Applications of trees.

UNIT IV–SORTING

Sort, Methods, Needs-Introduction - History of Sorting - Need for Sorting - Types of Sorting Algorithm - General Details of Sorting - Worst Case and Evil Adversaries.Bubble Sort - Introduction to Bubble Sort - Bubble sort example. Selection Sorting - Method - Introduction to Selection Sort.Algorithm, Complexity, Program- Selection Sort - Analysis - Sorting Example (Selection Sort) - Program for Selection Sort - Program for Selection Sort.Insertion Sorting - Method - Introduction.Algorithm, Complexity, Program -Run time of Insertion Sort - Advantages and Disadvantages-Algorithm - A Simple Example - Program for Insertion Sort - Linear repetation of insertion sort - Program for Insertion Sort. Quick Sort-Introduction - Techniques of Quick Sort - Examples of Quick Sort - Program for Quick Sort.Merge Sorting-Introduction-Sorting Technique. Discuss the program to implement merge sort on two sorted lists-Algorithm - Time Complexity of Merge Sort- Space Complexity of Merge Sort - Program for Merge Sort - Program for Merge Sort.

UNIT V–SEARCHING

Searching - Introduction to Searching. Linear Search - Linear Search - Example - Linear Search.Algorithm for Linear Search and its complexity - Linear Search algorithm.Discuss the program for Linear Search - Linear Search - Program for Linear Search.Binary Search - Introduction to Binary Search - Binary Search Algorithm.Algorithm for Binary Search and its complexity - Algorithm for Binary Search and its complexity.Discuss the program for Binary Search - Binary Search - Program for Binary Search.Differences between Linear Search and Binary Search - Differences between Linear Search and Binary Search.