DSP REPORT Me
DSP REPORT Me
PROJECT REPORT ON
“Develop Python Application That Creates Tree To Store Given
Data Set Using Link List Representation. Locate And Display
Specific Data From Data Set ”
FOR THE DIPLOMA IN ARTIFICIAL INTELLIGENCE
AND MACHINE LEARNING
SUBMITTED BY
1. Prem P. Kharat
2. Suyash G. Khedkar
3. Mangesh Y. Kulkarni
4. Laxminarayan R. Kundalwal
5. Ajay S. Mehra
6. Riddhi P. Mehta
UNDER THE GUIDANCE OF
Mrs. S.S.Surwade
DEPARTMENT OF ARTIFICIAL INTELLIGENCE AND
MACHINE LEARNING
CSMSS COLLEGE OF POLYTECHNIC,
CHATRAPATI SAMBHAJINAGAR
MAHARASHTRA, INDIA
AND
MAHARASHTRA STATE BOARD OF
TECHNICAL EDUCATION, MUMBAI
1
CERTIFICATE
2
ACKNOWLEDGEMENT
We would like to express our thanks to the people who have helped us most throughout our
project. We would like to express our sincere thanks to the principal of CSMSS College of
Polytechnic Dr. G B Dongre for being always with us as a motivator. We are thankful to the
H.O.D. Mrs. S. R. Borakhade of ARTIFICIAL INTELLIGENCE AND MACHINE
LEARNING Department for her kind support. We are grateful to our Project Guide Mrs. S.S.
Surwade for nonstop support and continuous motivation for the project. Her help made us
possible to complete our project with all accurate information. Special thanks go to our
friends who helped us in completing the project, where they all exchanged their own
interesting ideas. We wish to thanks our parents for their personal support or attention who
inspired us to go our own way. Finally, we would like to thank God who made all things
possible for us till the end.
2
Suyash G. Khedkar
3
Mangesh Y. Kulkarni
4
Laxminarayan R. Kundalwal
5
Ajay S. Mehra
6
Riddhi P. Mehta
3
INDEX
4
1. RATIONALE
Python is powerful programming language python code is simple, short, readable, intuitive,
and powerful, and thus it is effective for introducing computing and problem solving to
beginners. Data structures are mathematical and logical model of storing and organizing data
in a particular way in computer. Python has efficient high-level data structures and a simple
but effective approach to object-oriented programming after studying this course, student will
be able to understand and identifying different types of data structures to solve real life
problems.
2. COMPETENCY:
The aim of this course is to help the student to attain the following industry identified
competency through various teaching learning experiences:
Implement data structures using Python to solve problems.
5
Develop Python Application That Creates Tree To Store Given
Data Set Using Link List Representation. Locate And Display
Specific Data From Data Set”
Aim :- The aim of this project is to create a binary search tree (BST) for efficient data
storage and retrieval.
1. From this project we can develop the ‘Python’ program on the “Python
Application That Creates Tree To Store Given Data Set Using Link
List Representation. Locate And Display Specific Data From Data
Set”.
6
To prepare
5. project report. 02/10/23 31/10/23 ALL
7
Resources required:
Mrs.
S.S.Surwade
(Course
8
Teacher)
9
INTRODUCTION
The aims and objectives for the project "Develop Python Application That Creates Tree
To Store Given Data Set Using Link List Representation. Locate And Display Specific
Data From Data Set" can be summarized as follows:
Aims:
1. Custom Data Structure: To create a custom data structure using a linked list-based tree
representation in Python.
2. Data Organization: To efficiently organize and store a given dataset within this custom
data structure.
3. Dynamic Data Addition: To allow for the dynamic addition of data elements to the tree
structure.
4. Data Retrieval: To provide the capability to locate and display specific data elements
within the dataset stored in the tree.
Objectives:
1. Implement Data Structure: Develop classes and data structures (Node and LinkedList)
to represent the custom tree using linked lists.
2. Dynamic Data Handling: Enable the addition of data elements to the tree structure as
required.
3. Traversal and Retrieval: Implement algorithms for traversing the tree structure to
locate and display specific data.
5. Efficiency and Modularity: Ensure that the data structure is efficient in terms of data
retrieval and that the code is modular and maintainable.
6. The project's primary aim is to create a versatile data structure for efficiently storing
and retrieving data, facilitating dynamic data management while utilizing linked list-
based tree representation in Python.
10
1.2 BACKGROUND OF PROJECT
The project "Develop Python Application That Creates Tree To Store Given Data Set Using
Link List Representation. Locate And Display Specific Data From Data Set" is a software
development endeavor aimed at creating a custom data structure in Python. It involves
implementing a tree-like structure using linked lists to store and organize a dataset. The
primary objective is to provide a means for adding data dynamically to the tree and the ability
to locate and display specific data elements within the dataset. This project combines
concepts of linked lists, tree structures, and data manipulation in an object-oriented manner to
efficiently manage and retrieve data.
System analysis for the project "Develop Python Application That Creates Tree To Store
Given Data Set Using Link List Representation. Locate And Display Specific Data From
Data Set" involves understanding the requirements, the data flow, and the components of the
system. In short, here's an overview of the system analysis:
1. Requirements Gathering: -
This phase involves identifying the project's objectives, such as creating a tree
structure for storing data and providing the ability to locate and display specific data. It
also specifies the programming language (Python) and data structures (linked lists) to
be used.
2. Data Flow:-
The project processes data by creating a tree-like structure using linked lists. Data
flows from the dataset to the linked list representation, and users can request specific
data to be located and displayed.
11
Python Program
Class Node:
def _init_(self, data):
self.data = data
self.next = None
class LinkedList:
def _init_(self):
self.head = None
def display(self):
current =
self.head while
current:
print(current.data, end=" -> ")
current = current.next
print("None")
12
def locate_and_display(self, target):
current = self.head
13
while current:
if current.data == target:
print(f"Found: {current.data}")
return
current = current.next print(f"{target}
not found in the list")
# Example usage:
data_list = [1, 2, 3, 4, 5]
linked_list = LinkedList()
print("Linked
List:")
linked_list.display()
target_data = 3
print(f"Locating and displaying
{target_data}:")
linked_list.locate_and_display(target_data)
14
Output of Program
15
Concepts used:
Structures in Python:
1. Linked List: Linked lists are a fundamental data structure where each element
(node) contains data and a reference to the next element. In this project, a linked list is
used to represent the nodes of the tree.
2. Tree Structure: A tree is a hierarchical data structure with a root node and child
nodes, where each child node can have its own children. In this project, a tree structure is
created using linked lists to organize and store the dataset.
3. Node: A node is a fundamental component of both linked lists and trees. Each node
contains data (in this case, the dataset elements) and a reference to the next node (in
linked lists) or child nodes (in the tree).
4. Tree Construction: The project involves constructing a tree-like structure using linked
lists, where each node can have multiple children. This is a custom tree representation.
5. Data Storage: The project involves storing a given dataset within the tree structure.
The tree representation allows for hierarchical organization of data.
6. Data Retrieval: The project provides the functionality to locate and display specific
data within the dataset stored in the tree. This requires traversing the tree structure to find
and retrieve the desired data.
7. Object-Oriented Programming (OOP): The code is structured using classes (Node and
LinkedList) to encapsulate data and methods, following OOP principles for code
organization and modularity.
8. Data Manipulation: The project demonstrates how to add data dynamically to the
tree structure and perform operations such as locating and displaying specific data within
the dataset.
9. Iteration: Iteration is used to traverse the linked list and tree to access and process
the data.
10. Conditional Statements: Conditional statements are used to check for the presence
of specific data within the dataset and display the results accordingly.
These concepts are fundamental to the project's implementation, which combines the
principles of linked lists and tree structures to create a custom data structure for storing and
retrieving data efficiently.
16
CONCLUSION
This project demonstrates the use of data structures (linked lists and trees) to manage
and retrieve data efficiently. It can be useful in various applications where hierarchical
data structures are required, such as file systems, organizational hierarchies, or
database indexing.
REFERENCES:
http://nptel.ac.in/courses/106105085/4
• www.w3schools.com
• www.programiz.com/python-programming
• https://www.codecademy.com/courses/getting-started-v2/0/1
• http://spoken-tutorial.org/
Books:
1.Data Structure Using Python.
Author:- Dr Shriram K. Vasudevan
2.Learning Python
Author:- Lutz, Mark
3.Python Programing
Author:- Rao, K. Nageswara, Shaikh Akbar
17
18
19