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

DS-with-Python-Syllabus

The document outlines the curriculum for the Data Structures with Python course in the 4th semester of the Cyber Physical Systems & Security program at the Department of Collegiate and Technical Education, Government of Karnataka. It includes course rationale, outcomes, content, assessment methodologies, and suggested activities for tutorials. The course focuses on various data structures, algorithm design strategies, and their applications using Python, with a total of 104 contact hours and a grading system based on continuous internal evaluation and a semester-end examination.

Uploaded by

Subash C Reddy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

DS-with-Python-Syllabus

The document outlines the curriculum for the Data Structures with Python course in the 4th semester of the Cyber Physical Systems & Security program at the Department of Collegiate and Technical Education, Government of Karnataka. It includes course rationale, outcomes, content, assessment methodologies, and suggested activities for tutorials. The course focuses on various data structures, algorithm design strategies, and their applications using Python, with a total of 104 contact hours and a grading system based on continuous internal evaluation and a semester-end examination.

Uploaded by

Subash C Reddy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

4 TH SEMESTER

Department of Collegiate and Technical Education, Government of Karnataka 35


Government of Karnataka
DEPARTMENT OF COLLEGIATE AND TECHNICAL EDUCATION

Programme Cyber Physical Systems & Security Semester IV


Course Code 20CY41P Type of Course Programme Core
8 hours/week
Course Name Data Structures with Python Contact Hours
104 hours/semester
Teaching
L:T:P :: 3:1:4 Credits 6
Scheme
CIE Marks 60 SEE Marks 40

1. Rationale
Data structures are the techniques organizing data and of designing the algorithms for real-life projects.
Knowledge of data structures is essential for software design and development. Learning data structures with
Python offer flexibility and ease of programming with many built in data structures and libraries.

2. Course Outcomes: At the end of the Course, the student will be able to:
CO-01 Explain data structures types, list their applications.
CO-02 Apply the right Algorithm design strategies to solve a given problem.
CO-03 Choose the right data structure to develop solution to a given computing problem.
CO-04 Analyse space and time complexities of the algorithm used and plot a graph.

3. Course Content
Tutorial
Lecture Practice
(Activity
Week CO PO (Knowledge Criteria) Criteria) (Performance Criteria)
1 4 hours/week(2 hours/batch
3 hours/week hour/week twice in a week)
Introduction to Data Structures, operations,
classification, Characteristics.
Primitive types primitive data structures, 1. Python program to
python examples. Non primitive types - Non Use and demonstrate
primitive data structures, python examples. basic data structures.
1,
1 01 Linear and nonlinear data structures with 2. Implement an ADT
2, 3
python examples. with all its
Introduction, Abstractions, Abstract Data operations.
Types, An Example of Abstract Data Type
(Student, Date, Employee), Defining the ADT,
Using the ADT, Implementing the ADT.
1. Implement an ADT
and Compute space
and time
1, Algorithm Analysis Space Complexity,
complexities.
01, 2, Time Complexity.
2. Implement above
2 02, 3, Run time analysis.
solution using array
04 4, Asymptomatic notations, Big-O Notation,
and Compute space
7 Omega Notation, Theta Notation.
and time complexities
and compare two
solutions.

Department of Collegiate and Technical Education, Government of Karnataka 36


1. Implement Linear
Search compute
space and time
complexities, plot
graph using
Algorithm design strategies: asymptomatic
1,
notations.
01, 2, Brute force Bubble sort, Selection Sort, 2. Implement Bubble,
3 02, 3, Linear Search. Selection, insertion
04 4,
Decrease and conquer - Insertion Sort. sorting algorithms
7
compute space and
time complexities,
plot graph using
asymptomatic
notations.

1. Implement Binary
Search using
recursion Compute
space and time
complexities, plot
graph using
asymptomatic
Divide and conquer - Merge Sort, Quick Sort, notations and
Binary search. compare two.
1, Dynamic programming - Fibonacci sequence 2. Implement Merge
01, 2, Backtracking Concepts only and quick sorting
4 02, 3, (Implementation examples with recursion in algorithms compute
04 4, week 9). space and time
7 Greedy Concepts only. complexities, plot
graph using
asymptomatic
notations and
compare all
solutions.
3. Implement Fibonacci
sequence with
dynamic
programing.
Linear(arrays) vs nonlinear (pointer) 1. Implement Singly
01, 1, structures Run time and space linked list (Traversing
02, 2, requirements, when to use what? the Nodes, searching
5 03, 3, Introduction to linked list, Examples: Image for a Node,
04 4, viewer, music player list etc. (to be used to Prepending Nodes,
explain concept of list), applications. Removing Nodes)
1,
01, The Singly Linked List- Creating Nodes,
2,
02, Traversing the Nodes, searching for a Node, 1. Implement linked list
6 3,
03, Prepending Nodes, Removing Nodes. Iterators.
4,
04 Linked List Iterators.

01, 1, The Doubly Linked List, Examples: Image


viewer, music player list etc. (to be used to
02, 2, 1. Implement DLL.
7 explain concept of list).
03, 3, 2. Implement CDLL
DLL node, List Operations Create,
04 4,
appending nodes, delete, search.

Department of Collegiate and Technical Education, Government of Karnataka 37


The Circular Linked List-Organization, List
Operations Appending nodes, delete,
iterating circular list.
Last In First Out (Stack) Data structures
Example: Reversing a word, evaluating an
01, 1, expression, message box etc. (to be used to 1. Implement Stack Data
02, 2, explain concept of LIFO). Structure.
8
03, 3, The Stack implementation push, pop, 2. Implement bracket
04 4 display. matching using stack.
Stack Applications- Balanced Delimiters,
Evaluating Postfix Expressions.
Recursion. 1. Program to
Properties of Recursion. demonstrate
01, 1,
Recursive functions: Factorials, Recursive recursive operations
02, 2,
9 Call stack, The Fibonacci Sequence. (factorial/ Fibonacci)
03, 3,
How Recursion Works- The Run Time Stack. 2. Implement solution
04 4,
Recursive Applications- Recursive Binary for Towers of Hanoi.
Search, Towers of Hanoi.
The First In First Out (Queue) Data structure
Example: Media player list, keyboard
01, 1,
buffer queue, printer queue etc. (to be used 1. Implement Queue.
02, 2,
10 to explain concept of FIFO). 2. Implement priority
03, 3,
Implementing the Queue and its operations queue
04 4,
using Python List.
Priority Queues, Implementation.
The Tree data structure Example: File
explorer/Folder structure, Domain name
1, server.
01, 1. Implement Binary
2, Tree Terminologies, Tree node
02, search tree and its
11 3, representation.
03, operations using list.
4, Binary trees, Binary search trees, Properties,
04
Implementation of tree operations
insertion, deletion, search, Tree traversals
(in order, pre order and post order).
1, 1. Implementations of
01, Depth-first traversal
2, BFS.
12 02, Breadth-first traversal
3, 2. Implementation of
04 4, Tree applications: Expression evaluation. DFS.
Introduction to Hashing.
1,
01, Hashing - Perfect hashing functions. 1. Implement Hash
2,
13 03, Hash table functions.
3,
04 Hash Functions, Operations, Hash collision,
4,
Application.
Total in hours 39 13 52

*PO = Program outcome as listed and defined in year 1 curriculum

Table 1: Suggestive activities for tutorials (the list is only shared as an example and not inclusive of all
possible activities for that course. Student and faculty are encouraged to choose activities that are relevant to
the topic and the availability of such resources at their institution)
Sl.
Activity
No
Design a Data structure for handling Student Records- Designing a Solution, Implementation
1
(Using Basic DS).

Department of Collegiate and Technical Education, Government of Karnataka 38


Design a Data structure for handling Student Records- Designing a Solution, Implementation
2
(Using ADT).
3 Optimize your solution (Bubble sort, selection sort and Insertion sort)
4 Implement Radix sort.
5 Prepare report on nonlinear data structures.
6 Design and implement sparse matrix representation using linked list.
7 Design and implement simple application that require DLL data structure.
8 Implement and demonstrate evaluating postfix expression.
9 Presentation on run time stack.
10 Design and implement priority queue data structure.
11 Prepare a Report on balanced trees.
12 Implement expression evaluation tree.
13 Prepare a report on hashing and analyze time complexity.

4. CIE and SEE Assessment Methodologies


Sl. Test Duration Max
Assessment Conversion
No Week In minutes marks
1. CIE-1 Written Test 5 80 30 Average of three
2. CIE-2Written Test 9 80 30 tests
3 CIE-3Written Test 13 80 30 30
4. CIE-4 Skill Test-Practice 6 180 100 Average of two skill
tests reduced to
5 CIE-5 Skill Test-Practice 12 180 100
20
CIE-6 Portfolio continuous
6 evaluation of Activity through 1-13 10 10
Rubrics
Total CIE Marks 60
Semester End Examination (Practice) 180 100 40
Total Marks 100

5. Format for CIE written Test


Course Name Data Structures with Python Test I/II/III Sem III/IV
Course Code 20CY41P Duration 80 Min Marks 30
Note: Answer any one full question from each section. Each full question carries 10 marks.
Cognitive Course
Section Assessment Questions Marks
Levels Outcome
1
I
2
3
II
4
5
III
6
Note for the Course coordinator: Each question may have one, two or three subdivisions. Optional questions in each
section carry the same weightage of marks, Cognitive level and course outcomes.

6. Rubrics for Assessment of Activity (Qualitative Assessment)


Dimension Beginner Intermediate Good Advanced Expert

Department of Collegiate and Technical Education, Government of Karnataka 39

You might also like