loader image
Skip to main content

24CSC3CJ202 Data Structure and Algorithm

FREE
Updated 30 Oct 2024
Lessons 5
Enrolled 22
Language English ‎(en)‎
Skill Level Beginner

Course Overview

Credit:4

Lecture
per week:3

Practical
per week:2

Course Outcomes (CO):

CO1         Differentiate basic data structures (arrays, linked lists, stacks, queues) based on their                                 characteristics,operations, and real-world applications.

CO2        Perform basic operations (e.g., )insertion, deletion, search) on fundamental data structures                         using a chosen programming language.

CO3       Identify the properties and applications of advanced data structures (trees,graphs).

CO4       investigate the properties of various searching and sorting Techniques

CO5       Demonstrate critical thinking and problem-solving skills by applying data structures and                              algorithms to address complex computational challenges.

CO6      Implement and analyse different data structure algorithms(to solve practical problems

Detailed Syllabus:
Module
Unit Content Hrs
(45+30)
Marks(70)
I Introduction to Data Structures and Basic Algorithms 


1    Overview of Data Structures: Data type Vs. Data structure, ADT,Definition of Data structure, Data                structure Classification – Linear, Non- Linear (Array, Linked List, Stack, Queue, Tree, Graph)

 

       Introduction to Arrays: Definition, Types (1 Dimensional, 2Dimensional, Multi-Dimensional, Sparse              matrix), Different Array Operations with Algorithm (insertion, deletion, traversal

       Structures and Self-referential structures Introduction to Linked list: Definition, Types (Single linked             list,Doublelinked list, Circular linked list- concept only). Singly Linked List Operations with Algorithm           (insertion, deletion,traversal)

2    Introduction to Stack: Definition, stack operations with Algorithm, Applications: recursion, infix to                  postfix - example and Algorithm    Implementation of Stack: using array (overflow & underflow) and
     Linkedlist (with algorithm)

      Introduction to Queue: Definition, queue operations with Algorithm, Types: Double ended queue (Input        Restricted and Output restricted), Circular queue, Applications

      Implementation of Queue: using array and Linked list (withalgorithm)I

3     Non- Linear Data Structures  Introduction to Trees: Basic terminology, Types(Binary tree-
        complete,full, skewed etc., Expression Tree)

       Properties of Binary tree, Applications. Binary tree representations- using array and linked list 2
       Operations on Binary tree- Insertion, Deletion, Traversal- inorder, preorder, postorder - (concepts with        examples)

      Algorithm of non-recursive Binary tree traversal

        Introduction to Graph: Definition, Basic terminology, Types (Directed,Undirected, Weighted).   Graph         representation –Adjacency list and Adjacency Matrix, Applications.

4      Sorting and Searching : Introduction to Sorting: Definition, Classification (Internal, External)
       Internal Sorting Algorithms: Selection sort- Selection sort algorithm,
       Exchange sort- Bubble sort algorithm

       External Sorting Algorithms: Merge sort- Demonstrate with example.(NoAlgorithm needed)

       Advanced sorting Algorithm-: Quick sort- Demonstrate with example.

       Introduction to Searching: Linear search and Binary search(Algorithm needed) with example.                      Hashing: Hash Tables, Hash Functions, Different Hash Functions –Division method, Multiplication             method, Mid square method, Folding Method, Collision and Collision resolution Techniques: Open
      hashing- Chaining, Closed hashing- Probing5

5    Hands-on Programming in Data Structures: Practical

       Implement the following:
       1. Basic Operations in a single linked list (Menu driven)
       2. Sort the elements in given singly linked list
       3. Stack using array.
       4. Stack using Linked list
       5. Queue using Array
       6. Queue using Linked list
       7. Sorting algorithms- Selection, Bubble Sort
       8. Searching Algorithms- Linear and Binary search

Course Content

Loading...

Enrolment options

Credit:4

Lecture
per week:3

Practical
per week:2

Course Outcomes (CO):

CO1         Differentiate basic data structures (arrays, linked lists, stacks, queues) based on their                                 characteristics,operations, and real-world applications.

CO2        Perform basic operations (e.g., )insertion, deletion, search) on fundamental data structures                         using a chosen programming language.

CO3       Identify the properties and applications of advanced data structures (trees,graphs).

CO4       investigate the properties of various searching and sorting Techniques

CO5       Demonstrate critical thinking and problem-solving skills by applying data structures and                              algorithms to address complex computational challenges.

CO6      Implement and analyse different data structure algorithms(to solve practical problems

Detailed Syllabus:
Module
Unit Content Hrs
(45+30)
Marks(70)
I Introduction to Data Structures and Basic Algorithms 


1    Overview of Data Structures: Data type Vs. Data structure, ADT,Definition of Data structure, Data                structure Classification – Linear, Non- Linear (Array, Linked List, Stack, Queue, Tree, Graph)

 

       Introduction to Arrays: Definition, Types (1 Dimensional, 2Dimensional, Multi-Dimensional, Sparse              matrix), Different Array Operations with Algorithm (insertion, deletion, traversal

       Structures and Self-referential structures Introduction to Linked list: Definition, Types (Single linked             list,Doublelinked list, Circular linked list- concept only). Singly Linked List Operations with Algorithm           (insertion, deletion,traversal)

2    Introduction to Stack: Definition, stack operations with Algorithm, Applications: recursion, infix to                  postfix - example and Algorithm    Implementation of Stack: using array (overflow & underflow) and
     Linkedlist (with algorithm)

      Introduction to Queue: Definition, queue operations with Algorithm, Types: Double ended queue (Input        Restricted and Output restricted), Circular queue, Applications

      Implementation of Queue: using array and Linked list (withalgorithm)I

3     Non- Linear Data Structures  Introduction to Trees: Basic terminology, Types(Binary tree-
        complete,full, skewed etc., Expression Tree)

       Properties of Binary tree, Applications. Binary tree representations- using array and linked list 2
       Operations on Binary tree- Insertion, Deletion, Traversal- inorder, preorder, postorder - (concepts with        examples)

      Algorithm of non-recursive Binary tree traversal

        Introduction to Graph: Definition, Basic terminology, Types (Directed,Undirected, Weighted).   Graph         representation –Adjacency list and Adjacency Matrix, Applications.

4      Sorting and Searching : Introduction to Sorting: Definition, Classification (Internal, External)
       Internal Sorting Algorithms: Selection sort- Selection sort algorithm,
       Exchange sort- Bubble sort algorithm

       External Sorting Algorithms: Merge sort- Demonstrate with example.(NoAlgorithm needed)

       Advanced sorting Algorithm-: Quick sort- Demonstrate with example.

       Introduction to Searching: Linear search and Binary search(Algorithm needed) with example.                      Hashing: Hash Tables, Hash Functions, Different Hash Functions –Division method, Multiplication             method, Mid square method, Folding Method, Collision and Collision resolution Techniques: Open
      hashing- Chaining, Closed hashing- Probing5

5    Hands-on Programming in Data Structures: Practical

       Implement the following:
       1. Basic Operations in a single linked list (Menu driven)
       2. Sort the elements in given singly linked list
       3. Stack using array.
       4. Stack using Linked list
       5. Queue using Array
       6. Queue using Linked list
       7. Sorting algorithms- Selection, Bubble Sort
       8. Searching Algorithms- Linear and Binary search

Skill Level: Beginner
Guests cannot access this course. Please log in.

Related Courses

Minor Semester III Academic Level 200-299  Credit :4 TOTAL mark: 100  External (70) + Internal (30) Per week Total Hours: 4  Course Summary          This course comprises four main modules: Lattice, Boolean Algebra, System of Equations, and Eigenvalue and Eigenvectors. Module I introduce concepts like ordered sets and lattices, while Module II explores Boolean Algebra and its applications. Module III covers linear systems of equations, including Gauss elimination and determinants. Finally, Module IV delves into Eigenvalue and Eigenvectors, offering insights into matrix properties and applications.  Course Outcome  CO1: Analyse Lattices and Boolean Algebra . CO2: Apply Matrix Operations and Linear Systems . CO3: Investigate Eigenvalue and Eigenvector Problems.  Textbook 1. Theory and Problems of Discrete mathematics (3/e), Seymour Lipschutz, Marc Lipson, Schaum's Outline Series.  2. Advanced Engineering Mathematics (10/e), Erwin Kreyzsig, Wiley India. MODULE I Lattice (Text 1)   1 14.2 Ordered set 2 14.3 Hasse diagrams of partially ordered sets 3 14.5 Supremum and Infimum 4 14.8 Lattices 5 14.9 Bounded lattices, 14.10 Distributive lattices 6 14.11 Complements, Complemented lattices MODULEII Boolean Algebra (Text 1)    7 15.2 Basic definitions 8 15.3 Duality 9 15.4 Basic theorems 10 15.5 Boolean algebra as lattices 11 15.8 Sum and Product form for Boolean algebras 12 15.8 Sum and Product form for Boolean algebras Complete Sum and Product forms  MODULE lII System of Equations (Text 2)   13 7.1 Matrices, Vectors: Addition and Scalar Multiplication 14 7.2 Matrix Multiplication (Example 13 is optional) 15 7.3 Linear System of Equations- Gauss Elimination 16 7.4 Linear Independence- Rank of a matrix- Vector Space (Proof   Theorem 3 is optional)  17 7.5 Solutions of Linear Systems- Existence, Uniqueness (Proof of Theorem 1, Theorem 2 and Theorem 4 are optional) MODULE IV Eigen Value and Eigen Vectors (Text 2)  18 7.6 Second and Third Order Determinants- up to and including  Example 1 19 7.6 Second and Third Order Determinants- Third order determinants 20 7.7 Determinants- Theorem 2, Theorem 3 and Theorem 4 are optional) 21 7.8 Inverse of a Matrix- Gauss- Jordan Elimination (Proof Theorem 1, Theorem 2, Theorem 3 and Theorem 4 are optional) 22 8.1 The Matrix Eigenvalue Problem- Determining Eigenvalues and Eigenvectors (Proof of Theorem 1 and Theorem 2 are optional)  V Open Ended Module   Relation on a set, Equivalence relation and partition, Isomorphic ordered sets, Wellordered sets, Representation theorem of Boolean algebra, Logic gates, Symmetric, Skew-symmetric and Orthogonal matrices, Linear Transformation.  References: 1. Howard Anton & Chris Rorres, Elementary Linear Algebra: Application (11/e) : Wiley 2. Ron Larson,Edwards, David C Falvo : Elementary Linear Algebra (6/e), Houghton Mi_in Harcourt Publishing Company (2009) 3. Thomas Koshy - Discrete Mathematics with Applications-Academic Press (2003) 4. George Gratzer, Lattice theory: First concepts and distributive lattices. Courier Corporation (2009) Note: 1) Optional topics are exempted for end semester examination. 2) Proofs of all the results are also exempted for the end semester exam.     

5 Lessons
Updated: Jun 2025
11 Enrolled

Students are introduced to the concepts, procedures, and resources of software project management in this course. Project scheduling, budgeting, quality assurance, risk management, and teamwork are among the subjects covered. The goal of the course is to equip students with the skills necessary for efficient project management in software development settings. 

4 Lessons
Updated: Jun 2025
11 Enrolled

MODULES 1) FUNDAMENTALS OF TESTING. 2) DISTRIBUTION THEORY. 3) TESTS OF HYPOTHESIS. 4) ANALYSIS OF VARIANCE. 5) PRACTICUM.

5 Lessons
Updated: Jun 2025
11 Enrolled

The objectives of this course are to make the student understand programming language, programming, concepts of Loops, reading a set of Data, stepwise refinement, Functions, Control structure, Arrays, Structures, Unions, and Pointers. After completion of this course the student is expected to analyze the real life problem and write a program in ‘C’ language to solve the problem. The main emphasis of the course will be on problem solving aspect i.e. developing proper algorithms. 

5 Lessons
Updated: Mar 2025
46 Enrolled

Latest Courses

AY 2025-26
5 Lessons
Updated: Aug 2025

LITERARY THEORY HELPS TO LEARN DIFFERENT THEORIES

5 Lessons
Updated: Aug 2025

Basic of computer and its types

5 Lessons
Updated: Aug 2025

INTRODUCING LSRW PATTERNS TO COMMERCA AND MANAGEMENT STUDENTS

5 Lessons
Updated: Aug 2025

TO UNDERSTAND KERALA CULTURE

5 Lessons
Updated: Aug 2025
5 Lessons
Updated: Aug 2025

UNDERSTANDING THE IMPORTANCE OF BUSINESS DECSIONS

5 Lessons
Updated: Aug 2025
AY 2025-26
5 Lessons
Updated: Aug 2025
5 Lessons
Updated: Aug 2025
5 Lessons
Updated: Aug 2025
5 Lessons
Updated: Aug 2025
7 Lessons
Updated: Aug 2025
70 Enrolled