DSA - 4330704 Syllabus (GTURanker - Com)
DSA - 4330704 Syllabus (GTURanker - Com)
DSA - 4330704 Syllabus (GTURanker - Com)
1. RATIONALE
Development of application systems and software that use underlying architecture of machines
efficiently and effectively requires the ability to use and manipulate various types of Data Structures
and other constructs. This being a fundamental ability which is language neutral, yet requires use of a
language for its implementation. This is a basic course which goes along with other programming
courses to develop an integrated ability to efficient software development, hence this course is very
important for computer engineers.
2. COMPETENCY
The course content should be taught and implemented with the aim to develop various types of related
skills leading to the achievement of the following competency
The practical exercises, the underpinning knowledge and the relevant soft skills associated with this
competency are to be developed in the student to display the following COs:
The practical experiences and relevant soft skills associated with this course are to be taught and
implemented, so that the student demonstrates the following industry-oriented COs associated with
the above-mentioned competency:
institutions across the state in proper way so that the desired skills are developed in students.
S. PrO. No.
Equipment Name with Broad Specifications
No.
1 Computer with latest configuration with windows or unix os All
2 C/C++/Python Compiler All
8. UNDERPINNING THEORY
The major Underpinning Theory is formulated as given below and only higher level UOs of
Revised Bloom’s taxonomy are mentioned for development of the COs and competency in the
students by the teachers. (Higher level UOs automatically includes lower level UOs in them). If
required, more such higher level UOs could be included by the course teacher to focus on
attainment of COs and competency.
Unit– III 3a. Define linear and 3.1 Linear and Non-Linear Data Structures
Stack and non- linear data 3.2 Stack : Array representation of Stack, PUSH- POP
Queues structures Operations on Stack, Implementation of Stack,
3b. Implement Application of Stack, Infix, Prefix and Postfix Forms of
algorithms to push Expressions, Recursive Functions (Factorial, greatest
an element into common divisor, Fibonacci series)
stack, pop an
element from the
stack.
3c.. Implement 3.3 Queue: Array representation of Queue Operations on
different a Queue (Add an element, delete an element, display
operations on a all elements of a queue), Implementation of a Queue,
Queue Limitation of a Single Queue
3c. Differentiate 3.4 Concepts of Circular Queue
circular and simple 3.5 Applications of a queue
queue 3.6 Differentiate circular queue and simple queue
Unit– IV 4a. Define linked list 4.1 Pointers Revision
Linked 4.2 Revision of Structure
List 4.3 Revision of structure using pointers
4.4 Dynamic Memory Allocation
4.5 Linked list Presentation
4.6 Types of Linked List
4b. Implement 4.7 Basic operations on singly linked list : Insertion of a
algorithms to new node in the beginning of the list, at the end of
perform various the list, after a given node, before a given node, in
operations on a sorted linked list, Deleting the first and last node
singly linked list
from a linked list, Searching a node in Linked List,
Count the number of nodes in linked list
4c. Distinguish circular 4.8 Concepts of circular linked list
linked list and 4.9 Difference between circular linked list and singly
singly linked list linked list
4d. Distinguish Doubly 4.10 Doubly linked list: Representation
linked list and 4.11 Difference between Doubly linked list and singly linked
singly linked list list
4e. List applications of 4.12 Applications of the linked list
the linked list
Unit– V 5a. Define non-linear 5.1 Non-linear data structures: Tree, Graph
Trees data structure
5b. Define basic terms 5.2 Basic Terms: General Tree, Forest, Binary trees, level
of a tree data number, degree, in-degree and out-degree, root
structure node, leaf node, directed edge, path, depth
5c. Convert general Binary tree: Complete Binary Tree, Strict Binary Tree,
tree to binary tree Conversion of General Tree to Binary Tree
5d. Implement basic 5.3 Binary Search Tree : Insertion of a node in binary tree,
operations on a Deletion of a node in binary tree, Searching a node
binary tree in binary tree
5e. Demonstrate the 5.4 Binary Tree Traversal : Inorder, Preorder, Postorder
traversal of a
binary tree
5f. List applications of 5.5 Applications of binary tree
tree
Unit– VI 6a. Arrange data in 6.1 Sorting Methods :
Sorting ascending and a. Bubble Sort,
and descending orders b. Selection Sort,
Hashing using appropriate c. Quick Sort,
sorting algorithm d. Insertion Sort,
e. Merge Sort,
f. Radix Sort
6b. Apply various 6.2 Hashing Concepts
hashing 6.3 Hash functions: Division Method, Middle Square
techniques Method, Folding Method
Note: The UOs need to be formulated at the ‘Application Level’ and above of Revised
Bloom’s Taxonomy’ to accelerate the attainment of the COs and the competency.
II Strings 4 2 2 3 7
IV Linked List 9 4 8 2 14
V Trees 7 4 4 6 14
co-curricular activities which can be undertaken to accelerate the attainment of the various
outcomes in this course: Students should conduct following activities in group and prepare
small reports (of 1 to 5 pages for each activity). For micro project report should be as per
suggested format, for other activities students and teachers together can decide the format of
the report. Students should also collect/record physical evidences such as photographs/videos
of the activities for their (student’s) portfolio which will be useful for their placement
interviews:
a) Students are encouraged to learn Visual Language programming like scratch, snap etc.
b) Undertake micro-projects in teams.
c) Prepare charts to explain use/process of the identified topic.
d) https://www.codechef.com/ , in this website very elementary programs are available,
students are expected to solve those programs
e) https://code.org/, an hour of code may be organized and students are encouraged to
participate
f) Students are encouraged to register themselves in various MOOCs such as: Swayam,
edx, Coursera, Udemy etc to further enhance their learning.
g) List the applications which are developed using C
h) Encourage students to participate in different coding competitions like hackathon,
online competitions on codechef etc.
i) Encourage students to form a coding club at institute level and can help the slow
learners
Course Outcomes
a) Perform basic operations on
arrays and strings 2 1 2 - - - -
b) Demonstrate algorithms to
insert and delete elements from
the stack and queue data structure 3 1 2 - - - -
c) Apply basic operations on the
linked list data structure. 3 - 2 - - - -
d) Illustrate algorithms to insert,
delete and searching a node in 2 1 1 - - - -
tree.
e) Apply different sorting and
searching algorithms to the small
data sets.
3 2 2 - - - -
Legend: ‘3’ for high, ‘2’ for medium, ‘1’ for low or ‘-’ for the relevant correlation of each competency, CO, with PO/ PSO
Resource Persons
Name and
S. No. Institute Contact No. Email
Designation
Governmen 8200601748 [email protected]
Shri P. P. Kotak
1 t
Principal Polytechnic
Rajkot
Governmen
Smt. M. P. Mehta manishamehtain@gm
2 t 9879578273
Head of the a il.com
Polytechnic,
Department
Gandhinagar
Smt. Rashmika K. K.D.Polytechnic, Patan 982446419 rashmivaghela.rv@gm
3
Vaghela 9 ail.com
Lecturer
Ms. Kumundrini B Governmen kumundrini13187@gm
4 9974543026
Prajapati t ail.com
Polytechnic,
Gandhinagar