You are on page 1of 21

INDUSTRAIL TRAINING REPORT

ON
SIMULATION OF DATA STRUCTURE AND ALGORITHMS

Submitted in Partial Fulfillment of the Requirement


For the Degree of

BACHELOR OF COMPUTER APPLICATION


IN
COLLEGE OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY

SUBMITTED BY:
SHAHRUKH KHAN (TCA1901075)
Under the supervision of

External Guide Internal Guide


Name: SARVESH AGARWAL Name: MR.GAURAV RAJPUT
Designation: Founder & CEO Designation: ASSISTANT PROFESSOR
Company Name: INTERNSHALA Department Name: CCSIT

SEPTEMBER, 2021

FACULTY OF ENGINEERING & COMPUTING SCIENCES


TEERTHANKER MAHAVEER UNIVERSITY, MORADABAD
SIMULATION OF DATA STRUCTURE AND ALGORITHMS

STUDENT DECLARATION

I, Shahrukh Khan [TCA1901075], a student of BCA (CCSIT), V Semester , studying


at Faculty of Engineering & Computer Science, Teerthanker Mahaveer University,
Moradabad (UP), hereby declare that the Training Report on “Simulation of Data
Structure and Algorithms” submitted in partial fulfillment of Bachelor of
Computer Application (CCSIT), is the original work conducted by me.

The information and data given in the report is authentic to the best of my
knowledge.

This Training Report is not being submitted to any other University for award of
any other Degree, Diploma and Fellowship.

Date:

Signature :
Shahrukh Khan
TCA1901075

i
SIMULATION OF DATA STRUCTURE AND ALGORITHMS

TRAINING CERTIFICATE

TO WHOM SO EVER IT MAY CONCERN


This is to certify that this training report entitled “SIMULATION OF DATA STRUCTURE AND
ALGORITHMS” is a bonafide work done by SHAHRUKH KHAN (TCA1901075), is a student of
COLLEGE OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY at Faculty of Engineering
& Computing Sciences, TMU, Moradabad (UP). Hedid his industrial training at INTERNSHALA,
during the period from June to July.

It is a record of his own work under my supervision.

Date:

For INTERNSHALA

Signature : SARVESH AGARWAL (Founder & CEO)

Company Seal (if Possible, else the Certificate should be on Company Letter Head)

ii
SIMULATION OF DATA STRUCTURE AND ALGORITHMS

ACKNOWLEDGEMENT

I am thankful and greatly acknowledge the numerous personalities involved in


lending their help to make my training “Simulation of Data Structure and
Algorithms” a successful one.

First of all, I want to express my gratitude mainly to my supervisor SARVESH


AGARWAL, FOUNDER & CEO, Internshala, Gurgaon, who helped me from the
very beginning of my training “Simulation of Data Structure and Algorithms”.I
was fully supported throughout the training duration with all the required data
and related details to prepare this report.

I also take this opportunity to express my deep sense of gratitude to our


honorable Principal “PROF.(DR.) RAKESH KR. DWIVEDI SIR.”, TMU,for providing
excellent academic climate in the college that made this endeavor possible.

I give my whole hearted admiration and deep sense of gratitude to “Prof


(DR.)ASHINDRA KR. SAXENA”, HOD, “CCSIT”, TMU for his inspiration, valuable
guidance, encouragement, suggestion and overall help throughout.

I express my sincere thanks to my Guide “MR. GAURAV RAJPUT”, “ASSISTANT


PROFESSOR”, “CCSIT”, TMU, for his/her keen interest and invaluable help
throughout the project.

We would like to express our sincere gratitude to our Project Coordinator “MR.
RAJENDRA P. PANDEY”, “ASSISTANT PROFESSOR”, “CCSIT”, TMU, for his kind
support and encouragement throughout this course of work.

Finally, I express my gratitude to all the Teaching and Non-Teaching staff of


“CCSIT”, TMU for their timely support and suggestions.

Date:

Signature
(SHAHRUKH KHAN)

iii
SIMULATION OF DATA STRUCTURE AND ALGORITHMS

Enrolment no. TCA1901075

ABSTRACT

To make the student easier to study how the operations on data structure and
various algorithms are performed the data structure can be stack, queue and
linked list, etc and algorithms are sorting like bubble sort, insertion sort, etc.

Aim behind implementation of this project to make a clear understandability of


various algorithms of data structures. Usinf a web page this will simulates the
data structure operations such as searching, sorting, insertion, deletion etc. In
array, stack, queqe, and linked list as well. Thus, our web page provides effective
and efficient knowledge of data structures. This also provide some theoretical
knowledge regarding the data structure.

Programming language:
1. HTML
2. JAVA

iv
SIMULATION OF DATA STRUCTURE AND ALGORITHMS

Definitions, Acronyms, and Abbreviations


<Guidelines: Provide the definitions of all terms, acronyms, and abbreviations required to properly
interpret the SRS. This information may be provided by reference to one or more appendices in the SRS
or by reference to documents. This information may be provided by reference to an Annexure >

Abbreviation Description

v
TMU-FOE&CS Version 5.0 T004C-Project/Training Report

Table of Contents
1 PROJECT INTRODUCTION................................................................................................................................. 3
1.1 BACKGROUND OF THE PROJECT.................................................................................................................................3
1.2 TRAINING/ PROJECT OBJECTIVE.................................................................................................................................3
1.3 EXPECTED OUTCOME FROM THIS PROJECT/ TRAINING...................................................................................................3
1.4 SCOPE OF STUDY.....................................................................................................................................................3
1.5 TOOLS & TECHNOLOGY USED....................................................................................................................................3
2 PROJECT DESCRIPTION..................................................................................................................................... 3
2.1 INTRODUCTION & WORKING PRINCIPLE......................................................................................................................3
2.1.1 Component 1..................................................................................................................................................4
2.1.2 Component 2..................................................................................................................................................4
2.1.3 Component n.................................................................................................................................................4
2.2 DESIGN & METHODOLOGY.......................................................................................................................................4
2.2.1 Flow Chart......................................................................................................................................................4
2.2.2 Block Diagram/ Machine Diagram................................................................................................................4
2.2.3 Design Calculation.........................................................................................................................................4
2.2.4 Constraints, if any..........................................................................................................................................4
2.3 WORKING OF PROJECT.............................................................................................................................................4
2.3.1 Circuit Diagram/ Assembled View.................................................................................................................4
2.3.2 Hardware Description (if any)........................................................................................................................4
2.3.3 Software Programming (if any).....................................................................................................................4
2.3.4 Assumptions, if any........................................................................................................................................4
2.4 SNAPSHOTS (IF ANY)................................................................................................................................................5
3 TRAINING MODULE......................................................................................................................................... 5
4 RESULTS & FINDINGS....................................................................................................................................... 5
4.1 RESULTS................................................................................................................................................................5
4.2 OBSERVATIONS.......................................................................................................................................................5
4.3 SAFETY INSTRUCTIONS (IF ANY)..................................................................................................................................5
4.4 ASSUMPTIONS (IF ANY)............................................................................................................................................5
4.5 LEARNING AFTER TRAINING.......................................................................................................................................5
5 SUGGESTIONS & RECOMMENDATIONS............................................................................................................ 5
6 CONCLUSION................................................................................................................................................... 5
7 REFERENCES.................................................................................................................................................... 5
8 APPENDIX (IF ANY).......................................................................................................................................... 6
9 ANNEXURE (IF ANY)......................................................................................................................................... 6

Training Title: Page |


TMU-FOE&CS Version 5.0 T004C-Project/Training Report

<Guidelines: Use References->Insert Caption->Choose Figure or Table appropriately then click on “OK”. This
creates Label. Write the Figure or Table description at this “ Label” & then colon as shown in example.
Update appropriately List of Figures & List of Table, by right click on the selection and choose “Update
Field”.>

List of Figures
Figure 1: TEST FIGURE......................................................................................................................................4

List of Tables
Table 1: TEST TABLE.........................................................................................................................................4

Training Title: Page |


TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

1 Project Introduction
Aim behind implementation of this project to make a clear understability of
various algorithms of data structures. Using a web page this will simulates the
data structure operations such as searching, sorting, insertion, deletion, etc. In
array, stack, queue, and linked list as well. Thus our web page provides effective
and efficient knowledge of data structures. This also provide some theoretical
knowledge regarding the data structure.

1.1 Background of the Project


In computer science, a data structure is a particular way of storing and
organizing data in a computer so that it can be used efficiently.
Different kinds of data structures are suited to different kinds of application,
and some highly specialized to specific tasks.

1.2 Training/ Project Objective


To study how the operations on data structure and algorithms are performed.
And how thye values are compared in a sorting algorithms and swapped. Total
number of comparison and exchanges performed in a sorting algorithm.
And the corresponding code performed while sorting.
To get a clear idea about various data structure and operation on it.
And how can we implement a data structure.

1.3 Expected Outcome from this Project/ Training


Designing computer output should proceed in an organized, well throughout
manner; the right output element is designed so that people will find the system
whether or executed. When we design an output we must identify the specific
output that is needed to meet the system. The usefulness of the new system is
evaluated on the basis of their output. Once the output requirements are
determined, the system designer can decide what to include in the system and how
to structure it so that the require output can be produced. For the proposed
software, it is necessary that the output reports be compatible in format with the
existing reports. The output must be concerned to the overall performance and the
system’s working, as it should. It consists of developing specifications and

Training Title: Page | 3


TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

procedures for data preparation, those steps necessary to put the inputs and the
desired output, i.e. maximum user friendly. Proper messages and appropriate
directions can control errors committed by users. The output design is the key to
the success of any system. Output is the key between the user and the sensor. The
output must be concerned to the system’s working, as it should. Output design
consists of displaying specifications and procedures as data presentation. User
never left with the confusion as to what is happening without appropriate error and
acknowledges message being received.

1.4 Scope of Study


Feasibility study conducted once the problem is clearly understood.
Feasibility study is a high level capsule version of the entire system-analysis and
design process. The objective is to determine quickly and at the minimum expense
how to solve the problem and to determine the problem is solved. The system has
been tested for feasibility in the following ways.
Technical feasibility, Operational feasibility, Economical feasibility.

1.5 Tools & Technology Used


HTML-
HTML or HyperText Markup Language is the main markup language for creating
web pages and other information that can be displayed in a web browser. HTML is
written in the form of HTML elements consisting of tags enclosed in angle brackets
(like ), within the web page content. HTML tags most commonly come in pairs like ,
although some tags represent empty elements and so are unpaired, for example
Error! Filename not specified.. The first tag in a pair is the start tag, and the second
tag is the end tag (they are also called opening tags and closing tags). In between
these tags web designers can add text, further tags, comments and other types of
text-based content. The purpose of a web browser is to read HTML documents and
compose them into visible or audible web pages. The browser does not display the
HTML tags, but uses the tags to interpret the content of the page. HTML elements
form the building blocks of all websites. HTML allows images and objects to be
embedded and can be used to create interactive forms. It provides a means to
create structured documents by denoting structural semantics for text such as
headings, paragraphs, lists, links, quotes and other items. It can embed scripts

Training Title: Page | 4


TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

written in languages such as JavaScript which affect the behavior of HTML web
pages.

JAVA-
Java is a computer programming language that is concurrent, classbased, object-
oriented, and specifically designed to have as few implementation dependencies as
possible. It is intended to let application developers "write once, run anywhere"
(WORA), meaning that code that runs on one platform does not need to be
recompiled to run on another. Java applications are typically compiled to bytecode
(class file) that can run on any Java virtual machine (JVM) regardless of computer
architecture.

2 Project Description
In computer science, a data structure is a particular way of storing and organizing
data in a computer so that it can be used efficiently Different kinds of data
structures are suited to different kinds of applications, and some are highly
specialized to specific tasks. For example, B-trees are particularly well-suited for
implementation of databases, while compiler implementations usually use hash
tables to look up identifiers.
Data structures provide a means to manage large amounts of data efficiently, such
as large databases and internet indexing services. Usually, efficient data structures
are a key to designing efficient algorithms. Some formal design methods and
programming languages emphasize data structures, rather than algorithms, as the
key organizing factor in software design. Storing and retrieving can be carried out on
data stored in both main memory and in.

Tree:
A tree data structure can be defined recursively (locally) as a collection of nodes
(starting at a root node), where each node is a data structure consisting of a value,
together with a list of references to nodes (the "children"), with the constraints that
no reference is duplicated, and none points to the root. Alternatively, a tree can be
defined abstractly as a whole (globally) as an ordered tree, with a value assigned to
each node. Both these perspectives are useful: while a tree can be analyzed

Training Title: Page | 5


TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

mathematically as a whole, when actually represented as a data structure it is


usually represented and worked with separately by node (rather than as a list of
nodes and an adjacency list of edges between nodes, as one may represent a
digraph, for instance). For example, looking at a tree as a whole, one can talk about
"the parent node" of a given node, but in general as a data structure a given node
only contains the list of its children, but does not contain a reference to its parent (if
any).

Linked List:
Linked lists are among the simplest and most common data structures. They can be
used to implement several other common abstract data types, including lists (the
abstract data type), stacks, queues, associative arrays, and S-expressions, though it
is not uncommon to implement the other data structures directly without using a
list as the basis of implementation. The principal benefit of a linked list over a
conventional array is that the list elements can easily be inserted or removed
without reallocation or reorganization of the entire structure because the data
items need not be stored contiguously in memory or on disk. Linked lists allow
insertion and removal of nodes at any point in the list, and can do so with a constant
number of operations if the link previous to the link being added or removed is
maintained during list traversal. On the other hand, simple linked lists by
themselves do not allow random access to the data, or any form of efficient
indexing. Thus, many basic operations — such as obtaining the last node of the list
(assuming that the last node is not maintained as separate node reference in the list
structure), or finding a node that contains a given datum, or locating the place
where a new node should be inserted — may require scanning most or all of the list
elements.

Algorithms
Bubble Sort:
Bubble sort, sometimes incorrectly referred to as sinking sort, is a simple sorting
algorithm that works by repeatedly stepping through the list to be sorted,
comparing each pair of adjacent items and swapping them if they are in the wrong
order. The pass through the list is repeated until no swaps are needed, which
indicates that the list is sorted. The algorithm gets its name from the way smaller
elements "bubble" to the top of the list. Because it only uses comparisons to

Training Title: Page | 6


TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

operate on elements, it is a comparison sort. Although the algorithm is simple, most


of the other sorting algorithms are more efficient for large lists.

Selection Sort:
selection sort is a sorting algorithm, specifically an in-place comparison sort. It has
O(n2) time complexity, making it inefficient on large lists, and generally performs
worse than the similar insertion sort. Selection sort is noted for its simplicity, and it
has performance advantages over more complicated algorithms in certain
situations, particularly where auxiliary memory is limited. The algorithm divides the
input list into two parts: the sublist of items already sorted, which is built up from
left to right at the front (left) of the list, and the sublist of items remaining to be
sorted that occupy the rest of the list. Initially, the sorted sublist is empty and the
unsorted sublist is the entire input list. The algorithm proceeds by finding the
smallest (or largest, depending on sorting order) element in the unsorted sublist,
exchanging it with the leftmost unsorted element (putting it in sorted order), and
moving the sublist boundaries one element to the right.

Insertion sort:
Insertion sort is a simple sorting algorithm that builds the final sorted array (or list)
one item at a time. It is much less efficient on large lists than more advanced
algorithms such as quicksort, heapsort, or merge sort. However, insertion sort
provides several advantages:
Efficient for (quite) small data sets Adaptive (i.e., efficient) for data sets that are
already substantially sorted: the time complexity is O(n + d), where d is the number
of inversions More efficient in practice than most other simple quadratic (i.e., O(n2))
algorithms such as selection sort or bubble sort; the best case (nearly sorted input)
is O(n) Stable; i.e., does not change the relative order of elements with equal keys
In-place; i.e., only requires a constant amount O(1) of additional memory space
Online; i.e., can sort a list as it receives it When humans manually sort something
(for example, a deck of playing cards), most use a method that is similar to insertion
sort.[1]

Quick sort:
Quicksort, or partition-exchange sort, is a sorting algorithm developed by Tony
Hoare that, on average, makes O(n log n) comparisons to sort n items. In the worst

Training Title: Page | 7


TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

case, it makes O(n2) comparisons, though this behavior is rare. Quicksort is often
faster in practice than other O(n log n) algorithms.Additionally, quicksort's
sequential and localized memory references work well with a cache. Quicksort is a
comparison sort and, in efficient implementations, is not a stable sort. Quicksort can
be implemented with an in-place partitioning algorithm, so the entire sort can be
done with only O(log n) additional space used by the stack during the recursion.

2.1 Introduction & Working Principle

Binary Search Tree:


Binary Search Tree is a node-based binary tree data structure which has the following
properties:
 The left subtree of a node contains only nodes with keys lesser than the node’s
key.
 The right subtree of a node contains only nodes with keys greater than the
node’s key.
 The left and right subtree each must also be a binary search tree.

Binary Tree Traversa:


In this traversal method, the left subtree is visited first, then the root and
later the right sub-tree. We should always remember that every node may

Training Title: Page | 8


TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

represent a subtree itself. If a binary tree is traversed in-order, the output will
produce sorted key values in an ascending order.

Linked List:
A linked list is a linear data structure, in which the elements are not stored at
contiguous memory locations. The elements in a linked list are linked using
pointers as shown in the below image:

In simple words, a linked list consists of nodes where each node contains a
data field and a reference(link) to the next node in the list.

2.1.1 Component 1

2.1.2 Component 2

2.1.3 Component n

Design & Methodology


 Input Design
Input design include the creation of the text fields and the space required input the
data dynamically. A text box, text field or text entry box is a kind of widget used

Training Title: Page | 9


TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

when building a graphical user interface (GUI). A text box's purpose is to allow the
user to input text information to be used by the program. User-interface guidelines
recommend a single-line text box when only one line of input is required, and a
multi-line text box only if more than one line of input may be required. Non-editable
text boxes can serve the purpose of simply displaying text. A typical text box is a
rectangle of any size, possibly with a border that separates the text box from the
rest of the interface. Text boxes may contain zero, one, or two scrollbars. Text boxes
usually display a text cursor (commonly a blinking vertical line), indicating the
current region of text being edited. It is common for the mouse cursor to change its
shape when it hovers over a text box.

 User Interface Design


User interface design (UID) or user interface engineering is the design of websites,
computers, appliances, machines, mobile communication devices, and software
applications with the focus on the user's experience and interaction. The goal of
user interface design is to make the user's interaction as simple and efficient as
possible, in terms of accomplishing user goals—what is often called user-centered
design. Good user interface design facilitates finishing the task at hand without
drawing unnecessary attention to itself. Graphic design may be utilized to support
its usability. The design process must balance technical functionality and visual
elements (e.g., mental model) to create a system that is not only operational but
also usable and adaptable to changing user needs. Interface design is involved in a
wide range of projects from computer systems, to cars, to commercial planes; all of
these projects involve much of the same basic human interactions yet also require
some unique skills and knowledge. As a result, designers tend to specialize in certain
types of projects and have skills centered around their expertise, whether that be
software design, user research, web design, or industrial design.
Processes
User interface design requires a good understanding of user needs. There are
several phases and processes in the user interface design, some of which are more
demanded upon than others, depending on the project. (Note: for the remainder of
this section, the word system is used to denote any project whether it is a website,
application, or device.) Functionality requirements gathering – assembling a list of
the functionality required by the system to accomplish the goals of the project and
the potential needs of the users. User analysis – analysis of the potential users of
Training Title: Page |
10
TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

the system either through discussion with people who work with the users and/or
the potential users themselves. Typical questions involve: What would the user
want the system to do? How would the system fit in with the user's normal
workflow or daily activities? How technically savvy is the user and what similar
systems does the user already use? What interface look & feel styles appeal to the
user? Information architecture – development of the process and/or information
flow of the system (i.e. for phone tree systems, this would be an option tree
flowchart and for web sites this would be a site flow that shows the hierarchy of the
pages).
Prototyping – development of wireframes, either in the form of paper prototypes or
simple interactive screens. These prototypes are stripped of all look & feel elements
and most content in order to concentrate on the interface. Usability inspection –
letting an evaluator inspect a user interface. This is generally considered to be
cheaper to implement than usability testing (see step below), and can be used early
on in the development process since it can be used to evaluate prototypes or
specifications for the system, which usually can't be tested on users. Some common
usability inspection methods include cognitive walkthrough, which focuses the
simplicity to accomplish tasks with the system for new users, heuristic evaluation, in
which a set of heuristics are used to identify usability problems in the UI design, and
pluralistic walkthrough, in which a selected group of people step through a task
scenario and discuss usability issues. Usability testing – testing of the prototypes on
an actual user—often using a technique called think aloud protocol where you ask
the user to talk about their thoughts during the experience. Graphic interface design
– actual look and feel design of the final graphical user interface (GUI). It may be
based on the findings developed during the usability testing if usability is
unpredictable, or based on communication objectives and styles that would appeal
to the user. In rare cases, the graphics may drive the prototyping, depending on the
importance of visual form versus function. If the interface requires multiple skins,
there may be multiple interface designs for one control panel, functional feature or
widget. This phase is often a collaborative effort between a graphic designer and a
user interface designer, or handled by one who is proficient in both disciplines.

 OUTPUT DESIGN
Designing computer output should proceed in an organized, well throughout
manner; the right output element is designed so that people will find the system

Training Title: Page |


11
TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

whether or executed. When we design an output we must identify the specific


output that is needed to meet the system. The usefulness of the new system is
evaluated on the basis of their output. Once the output requirements are
determined, the system designer can decide what to include in the system and how
to structure it so that the require output can be produced. For the proposed
software, it is necessary that the output reports be compatible in format with the
existing reports. The output must be concerned to the overall performance and the
system’s working, as it should. It consists of developing specifications and
procedures for data preparation, those steps necessary to put the inputs and the
desired output, i.e. maximum user friendly. Proper messages and appropriate
directions can control errors committed by users. The output design is the key to
the success of any system. Output is the key between the user and the sensor. The
output must be concerned to the system’s working, as it should. Output design
consists of displaying specifications and procedures as data presentation. User
never left with the confusion as to what is happening without appropriate error and
acknowledges message being received.
2.1.4 Flow Chart

2.1.5 Block Diagram/ Machine Diagram

2.1.6 Design Calculation

Table 1: TEST TABLE


Figure 1: TEST FIGURE

2.1.7 Constraints, if any

2.2 Working of Project


<Guidelines: Describe details with help of various diagrams required for working of the Project.>

2.2.1 Circuit Diagram/ Assembled View

2.2.2 Hardware Description

Training Title: Page |


12
TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

Minimum Hardware Configuration


1. Pentium IV Processor
2. 512 MB RAM
3. 40GB HDD
4. 1024 * 768 Resolution Color Monitor
Note: This is not the “System Requirements”.

2.2.3 Software Programming

HTML
HTML or HyperText Markup Language is the main markup language for creating web
pages and other information that can be displayed in a web browser. HTML is
written in the form of HTML elements consisting of tags enclosed in angle brackets
(like ), within the web page content. HTML tags most commonly come in pairs like,
although some tags represent empty elements and so are unpaired, for example
Error! Filename not specified.. The first tag in a pair is the start tag, and the second
tag is the end tag (they are also called opening tags and closing tags). In between
these tags web designers can add text, further tags, comments and other types of
text-based content. The purpose of a web browser is to read HTML documents and
compose them into visible or audible web pages. The browser does not display the
HTML tags, but uses the tags to interpret the content of the page. HTML elements
form the building blocks of all websites. HTML allows images and objects to be
embedded and can be used to create interactive forms. It provides a means to
create structured documents by denoting structural semantics for text such as
headings, paragraphs, lists, links, quotes and other items. It can embed scripts
written in languages such as JavaScript which affect the behavior of HTML web
pages.

JAVA
Java is a computer programming language that is concurrent, classbased, object-
oriented, and specifically designed to have as few implementation dependencies as

Training Title: Page |


13
TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

possible. It is intended to let application developers "write once, run anywhere"


(WORA), meaning that code that runs on one platform does not need to be
recompiled to run on another. Java applications are typically compiled to bytecode
(class file) that can run on any Java virtual machine (JVM) regardless of computer
architecture. Java is, as of 2014, one of the most popular programming languages in
use, particularly for client-server web applications, with a reported 9 million
developers.[10][11] Java was originally developed by James Gosling at Sun
Microsystems (which has since merged into Oracle Corporation) and released in
1995 as a core component of Sun Microsystems' Java platform. The language
derives much of its syntax from C and C++, but it has fewer low-level facilities than
either of them. The original and reference implementation Java compilers, virtual
machines, and class libraries were developed by Sun from 1991 and first released in
1995. As of May 2007, in compliance with the specifications of the Java Community
Process, Sun relicensed most of its Java technologies under the GNU General Public
License. Others have also developed alternative implementations of these Sun
technologies, such as the GNU Compiler for Java (bytecode compiler), GNU
Classpath (standard libraries), and IcedTea-Web (browser plugin for applets).
2.2.4 Assumptions, if any

NONE

2.3 Snapshots (if any)

3 Training Module

4 Results& Findings

4.1 Results

4.2 Observations

4.3 Safety Instructions (if any)

Training Title: Page |


14
TMU-FOE&CS Version 5.0 T004C-Project/ Training Report

4.4 Assumptions (if any)

4.5 Learningafter Training

5 Suggestions & Recommendations

6 Conclusion:
From earlier classes itself,we were studying about the data structures and
algorithms. Some of us are just by hearting the code.ie, we don’t know how the
working is going on there.And also we didn’t get an idea about these things. So
our applet provides the clear and detail idea about the data structure and
algorithms,and more over how the operations are done in recursion algorithms
and data structure. And the animated representation makes more easier and
better understandability on this topic.Outcome of this applet is make easier and
simple way to understand about the algorithms.

7 References
<Guidelines: Mention details, like:

a) Provide a complete list of all documents/ Journal/ Research Paper referenced for Project
b) MentionTitle, ID (if applicable), date, and publishing organization
c) Specify the sources from which the references is obtained.

Training Title: Page |


15

You might also like