4G curriculum (older)
4331601 · Semester 3 · 4G scheme
Data Structure with Python
Notes and solutions following the Gujarat Technological University (GTU) syllabus for 4331601. Independent material — not issued by the university.
Materials
Complete Book
The whole syllabus, unit by unit, written for the exam.
Complete Book
124 pages
Premium Preview · 13 pages
Problem Solver
Step-by-step solutions to typical problems.
Problem Solver
43 pages
Premium Preview · 6 pages
PYQ Solutions
Past university papers, fully solved.
Solved past papers — detailed answers
163 pages · English + ગુજરાતી
Premium Preview · 32 pagesSolved past papers — short answers
117 pages · English + ગુજરાતી
Premium Preview · 4 pages
Syllabus units
Unit 1: Basic Concepts of Data Structures4 h · 6 marks
- Data Structure Basic Concepts
- Types of data structures
- Analysis Terms (for the definitions purpose only)
- Python Specific Data Structures - List, Tuple, Set, Dictionary
- Array in Python
Unit 2: Basics of Object Oriented Programming8 h · 12 marks
- Oops Concepts
- Class and Object
- Constructors
- Types of methods
- Data Encapsulation
- Inheritance - single, multiple, multi-level, hierarchical, hybrid
- Polymorphism through inheritance
- Abstraction - abstract class
Unit 3: Stack and Queues8 h · 14 marks
- Overview of Stack
- Operations on Stack - Push, Pop
- Implementation of Stack using List
- Application of Stack - Infix, Prefix and Postfix Forms of Expressions, Evaluations of postfix expression
- Recursive Functions (factorial, Fibonacci series)
- Overview of Queue
- Operations on Queue - Enqueue and Dequeue
- Implementation of Queue using List
- Limitation of Single Queue
- Concepts of Circular Queue
- Application of queue
- Differentiate circular queue and simple queue
Unit 4: Linked List8 h · 14 marks
- Overview of Linked list
- Types of Linked List
- Basic operations on singly linked list
- Overview of circular linked list
- Difference between circular linked list and singly linked list
- Overview of doubly linked list
- Applications of linked list
Unit 5: Searching and Sorting8 h · 14 marks
- Searching an element into List
- Sorting Methods
Unit 6: Trees6 h · 10 marks
- Binary trees: Complete Binary Tree, Basic Terms: level number, degree, in-degree and out-degree, leaf node
- Binary Search Tree: Insertion of a node in binary tree, Deletion of a node in binary tree, Searching a node in binary tree
- Tree Traversal: Inorder, Preorder, Postorder
- Applications of binary tree
About this course
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. As far as data structures are concerned, the course covers Python dictionaries as well as classes and objects for defining user defined data types such as linked lists and binary search trees. This course is designed to develop an integrated ability to efficient software development and apply the knowledge to various application systems; hence this course is very important for IT diploma engineers.