0% found this document useful (0 votes)
26 views

DSA Syllabus

Uploaded by

Harleen Kaur
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views

DSA Syllabus

Uploaded by

Harleen Kaur
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Semester – III

Course Name: Data Structures and Algorithm I

Course Code: BCA305A


L (Hr.) T(Hr.) Pr. (Hr.) Credits
3 0 0 3

Course Objectives:
1. To impart the basic concepts of data structures and algorithms.
2. To understand concepts about searching and sorting techniques.
3. To Understand basic concepts about stacks, queues, lists, trees and graphs.
4. To understanding about writing algorithms and step by step approach in solving problems
with the help of fundamental data structures
Unit I
INTRODUCTION AND OVERVIEW: Introduction, Basic Terminology: Elementary Data
Organization Data Structures, Data Structure Operations, Abstract Data Types, Algorithms: Complexity,
Time-Space Trade off, Mathematical Notations and Functions, Algorithmic Notations, Control Structures,
Complexity of Algorithms, Other Asymptotic Notations for Complexity of Algorithms, Sub-algorithms,
Variables, Data Types.
Unit II
STRING PROCESSING, ARRAYS, RECORDS AND POINTERS: Introduction, Basic Terminology,
Storing Strings, Character Data Type, Strings, String Operations, Word/Text Processing, Pattern
Matching Algorithms, Introduction, Linear Arrays, Arrays as ADT, Representation of Linear Arrays in
Memory, Traversing Linear Arrays, Inserting and Deleting, Sorting: Bubble Sort, searching: Linear
Search, Binary Search, Multidimensional Arrays, Representation of Polynomials Using Arrays. Pointers,
Pointer Arrays, Dynamic Memory Management, Records: Record Structures, Representation of Records
in Memory, Parallel Arrays, Matrices, Sparse Matrices.
Unit III
STACKS, QUEUES, RECURSION: Stacks, Array Representation of Stacks, Linked Representation of
Stacks, stack as ADT, Arithmetic Expressions; Polish Notation, Application of Stacks, Recursion, Towers
of Hanoi, Implementation of Recursive Procedures by Stacks, Queues, Linked Representation of Queues,
Queue as ADT, Circular Queues, Priority Queues, Applications of Queues
Unit IV
LINKED LISTS: Introduction, Linked Lists, Representation of Linked Lists in Memory, traversing a
Linked List, Searching a Linked List, Memory Allocation; Garbage Collection, Insertion into a Linked
List, from a Linked List
Unit V
TREES: Introduction, Binary Trees, Representing Binary Trees in Memory, Traversing Binary Trees,
Traversal Algorithms Using Stacks, Header Nodes, Threads, Threaded Binary Trees, Binary Search
Trees, Searching and Inserting in Binary Search Trees, deleting in a Binary Search Tree, Balanced Binary
Trees, AVI. Search Trees, Insertion in an AVL Search Tree, Deletion in an AVL Search Tree, m way
Search Trees, Searching, Insertion and Deletion in an m-way Search Tree, B-Trees, Searching. Insertion
and Deletion in a B-tree.
Course Outcomes-
After Successful completion of this subject student should be able to:
1. Ability to analyse algorithms and algorithm correctness.
2. Ability to find and analyse string processing and Ability to analyse array and dynamic memory
allocation with pointers.
3. Ability to describe stack, queue and recursion.
4. Ability to have knowledge of Linked list operations.
5. Ability to find knowledge of Trees and searching.

Text Books:

Data Structures with C (Schaum's Outline Series) by Seymour Lipschutz

Reference Books:
1. Introduction to Data Structure-Thomas H. Cormen, Charles E. Leiserson, Ronald L.
Rivest and Clifford Stein.
2. Data structures and Algorithms Made Easy, by Narsimha Karumanchi
Semester - III

Course Name: Data Structure and Algorithm I Lab

Course Code: BCA306A


L (Hr.) T(Hr.) Pr. (Hr.) Credits
0 0 2 1

Course Objectives:
The purpose of this course is to enhance the practical knowledge based on prescribed theory course. The
students will be able to enhance their analysing and problem-solving skills after implementation of all the
given experiments.

List of Sample Programs


1. Write a program that uses functions to perform the following operations on singly linked list i)
Creation ii) Insertion iii) Deletion iv) Traversal.
2. Write a program that uses functions to perform the following operations on doubly linked list i)
Creation ii) Insertion iii) Deletion iv) Traversal.
3. Write a program that uses functions to perform the following operations on circular linked List i)
Creation ii) Insertion iii) Deletion iv) Traversal.
4. Write a program that implement stack (its operations) using i) Arrays ii) Linked list (Pointers).
5. Write a program that implement Queue (its operations) using i) Arrays ii) Linked list (Pointers).
6. Write a program that implement Circular Queue (its operations) using Arrays.
7. Write a program that uses both rec
8. ursive and non-recursive functions to perform the following searching operations for a key value
in a given list of integers: a) Linear search b) Binary search.
9. Write a program to implement all the functions of a dictionary (ADT)using Linked List.
10. Write a program to perform the following operations: a) Insert an element into a binary search
tree. b) Delete an element from a binary search tree. c) Search for a key element in a binary
search tree.
11. Write a program to implement the tree traversal methods.
12. Write a program to perform the following operations: a) Insert an element into a AVL tree. b)
Delete an element from a AVL tree. c) Search for a key element in a AVL tree.
13. Write a program to implementing the following searching techniques.
a. Linear search b. Binary search c. Fibonacci search

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy