BCS301BCS301H

Data Structure

L-T-P3-1-0 Credits4 Session2023-24 TypeTheory
Appears in 14 semesters · 14 branches

B.Tech Computer Science & Engineering · Sem 3 (Core, code BCS301) · B.Tech Information Technology · Sem 3 (Core, code BCS301) · B.Tech Artificial Intelligence & Machine Learning · Sem 3 (Core, code BCS301) · B.Tech Artificial Intelligence & Data Science · Sem 3 (Core, code BCS301) · B.Tech CSE (Artificial Intelligence) · Sem 3 (Core, code BCS301) · B.Tech CSE (AI & ML) · Sem 3 (Core, code BCS301) · B.Tech CSE (Data Science) · Sem 3 (Core, code BCS301) · B.Tech CSE (Cyber Security) · Sem 3 (Core, code BCS301) · B.Tech CSE (Internet of Things) · Sem 3 (Core, code BCS301) · B.Tech Computer Science & Design · Sem 3 (Core, code BCS301) · B.Tech Computer Science (Hindi) · Sem 3 (Core, code BCS301H) · B.Tech Computer Science & Business Systems · Sem 3 (Core, code BCS301) · B.Tech Cyber Security · Sem 3 (Core, code BCS301) · B.Tech Data Science · Sem 3 (Core, code BCS301)

Syllabus

5 units · 40 lecture hours
Unit1

Unit 1: Introduction

8 hrs

Basic Terminology, Elementary Data Organization, Built in Data Types in C. Algorithm, Efficiency of an Algorithm, Time and Space Complexity, Asymptotic notations: Big Oh, Big Theta and Big Omega, Time-Space trade-off. Abstract Data Types (ADT) Arrays: Definition, Single and Multidimensional Arrays, Representation of Arrays: Row Major Order, and Column Major Order, Derivation of Index Formulae for 1-D,2-D,3-D and n-D Array Application of arrays, Sparse Matrices and their representations. Linked lists: Array Implementation and Pointer Implementation of Singly Linked Lists, Doubly Linked List, Circularly Linked List, Operations on a Linked List. Insertion, Deletion, Traversal, Polynomial Representation and Addition Subtraction & Multiplications of Single variable & Two variables Polynomial.

Unit2

Unit 2: Stacks

8 hrs

Abstract Data Type, Primitive Stack operations: Push & Pop, Array and Linked Implementation of Stack in C, Application of stack: Prefix and Postfix Expressions, Evaluation of postfix expression, Iteration and Recursion- Principles of recursion, Tail recursion, Removal of recursion Problem solving using iteration and recursion with examples such as binary search, Fibonacci numbers, and Hanoi towers. Tradeoffs between iteration and recursion. Queues: Operations on Queue: Create, Add, Delete, Full and Empty, Circular queues, Array and linked implementation of queues in C, Dequeue and Priority Queue.

Unit3

Unit 3: Searching

8 hrs

Concept of Searching, Sequential search, Index Sequential Search, Binary Search. Concept of Hashing & Collision resolution Techniques used in Hashing. Sorting: Insertion Sort, Selection, Bubble Sort, Quick Sort, Merge Sort, Heap Sort and Radix Sort.

Unit4

Unit 4: Trees

8 hrs

Basic terminology used with Tree, Binary Trees, Binary Tree Representation: Array Representation and Pointer(Linked List) Representation, Binary Search Tree, Strictly Binary Tree ,Complete Binary Tree . A Extended Binary Trees, Tree Traversal algorithms: Inorder, Preorder and Postorder, Constructing Binary Tree from given Tree Traversal, Operation of Insertation , Deletion, Searching & Modification of data in Binary Search . Threaded Binary trees, Traversing Threaded Binary trees. Huffman coding using Binary Tree. Concept & Basic Operations for AVL Tree , B Tree & Binary Heaps

Unit5

Unit 5: Graphs

8 hrs

Terminology used with Graph, Data Structure for Graph Representations: Adjacency Matrices, Adjacency List, Adjacency. Graph Traversal: Depth First Search and Breadth First Search, Connected Component, Spanning Trees, Minimum Cost Spanning Trees: Prims and Kruskal algorithm. Transitive Closure and Shortest Path algorithm: Warshal Algorithm and Dijikstra Algorithm.

Course Outcomes (COs)5 outcomes

After completion of the course student will be able to:

  1. CO1Describe how arrays, linked lists, stacks, queues, trees, and graphs are represented in memory, used by the algorithms and their common applications.K1, K2
  2. CO2Discuss the computational efficiency of the sorting and searching algorithms.K2
  3. CO3Implementation of Trees and Graphs and perform various operations on these data structure.K3
  4. CO4Understanding the concept of recursion, application of recursion and its implementation and removal of recursion.K4
  5. CO5Identify the alternative implementations of data structures with respect to its performance to solve a real world problem.K5, K6

Note: The B.Tech Cyber Security and Data Science syllabus PDF (2nd year, effective from 2025-26) prints new course outcomes for this subject: CO1: Explain the concepts of Abstract Data Types (ADT), algorithm analysis, asymptotic notations, and the representation of arrays and linked lists for efficient data organization (K2); CO2: Apply stacks, queues, and recursion techniques to solve computational problems using appropriate data structures and algorithms (K3); CO3: Analyze the performance of searching, hashing, and sorting algorithms based on their time and space complexities for different problem scenarios (K4); CO4: Analyze tree-based data structures and implement tree traversal, searching, insertion, and deletion algorithms for efficient data management (K4); CO5: Evaluate graph representations, graph traversal algorithms, minimum spanning tree algorithms, and shortest path algorithms to solve real-world problems efficiently (K5).

Text books

  1. Aaron M. Tenenbaum, Yedidyah Langsam and Moshe J. Augenstein, “Data Structures Using C and C++”, PHI Learning Private Limited, Delhi India.
  2. Gilberg ,Forouzan, Data Structures: A Pseudocode Approach with C 3rd edition , Cengage Learning publication.
  3. Horowitz and Sahani, “Fundamentals of Data Structures”, Galgotia Publications Pvt Ltd Delhi India.
  4. Lipschutz, “Data Structures” Schaum’s Outline Series, Tata McGraw-hill Education (India) Pvt. Ltd.
  5. Thareja, “Data Structure Using C” Oxford Higher Education.
  6. AK Sharma, “Data Structure Using C”, Pearson Education India.
  7. Rajesh K. Shukla, “Data Structure Using C and C++” Wiley Dreamtech Publication.
  8. Michael T. Goodrich, Roberto Tamassia, David M. Mount “Data Structures and Algorithms in C++”, Wiley India.
  9. P. S. Deshpandey, “C and Data structure”, Wiley Dreamtech Publication.
  10. R. Kruse etal, “Data Structures and Program Design in C”, Pearson Education.
  11. Berztiss, AT: Data structures, Theory and Practice, Academic Press.
  12. Jean Paul Trembley and Paul G. Sorenson, “An Introduction to Data Structures with applications”, McGraw Hill.
  13. Adam Drozdek “Data Structures and Algorithm in Java”, Cengage Learning

Official AKTU syllabus

This subject is on page 4, 5 of the original AKTU PDF.

Official AKTU syllabus PDF ↗