Sorting Visualizer
Sorting Visualizer
Belagavi-590018, Karnataka
GURU NANAK DEV ENGINEERING COLLEGE
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
“Algorithm Visualizer”
Submitted by:- Under the Guidance of:-
Akshay Kumar (3GN18CS010) Prof. Asha P.
Anmolpreet Singh (3GN18CS015)
Gurpreet Kaur (3GN18CS030)
K.S Shashank (3GN18CS037)
INTRODUCTION
Algorithm analysis and design is a great challenge for both computer and information science
students. Fear of programming, lack of interest and the abstract nature of programming
concepts are main causes of the high dropout and failure rates in introductory programming
courses. With an aim to motivate and help students, a number of researchers have proposed
various tools. Although it has been reported that some of these tools have a positive impact
on acquiring programming skills, the problem still remains essentially unresolved.
This project describes “ ALGORITHM VISUALISER ”, a tool for visualization of algorithms.
Algorithm Visualiser is an easy-to-set-up and fully automatic visualization system with step-by-
step explanations and comparison of algorithms. Design principles and technical structure of
the visualization system as well as its practical implications and educational benefits are
presented and discussed.
PROBLEM STATEMENT
Algorithms is one of a foundation concept of computer science used to prepare students
to further important concepts. Traditionally, students learn this concept by memorizing
facts of an execution process of a certain predefined algorithm resulting in having a
superficial understanding of the underlying process. The students are deprived their
opportunities to solve the problems by themselves, and having low development of
problem-solving skills, such as Computational thinking.
While computer science students have to solve many novel problems, lacking the
essential cognitive skills would be a problem since the problem-solving skills are very
crucial in computer science education.
In order to promote skills, using visualization is a good mediator because it has many
pedagogical benefits and promotes active learning and student-centered learning.
Literature Survey
A Sorting Algorithm is used to rearrange a given array or list elements according to a comparison
operator on the elements. The comparison operator is used to decide the new order of elements
in the respective data structure
Searching Algorithms are designed to check for an element or retrieve an element from any data
structure where it is stored
Path finding is the plotting, by a computer application, of the shortest route between two points.
It is a more practical variant on solving mazes.
Algorithm Visualization
Often called algorithm animation can be defined as the use of images to convey some useful
information about algorithms. That information can be a visual illustration of an algorithm’s
operation, of its performance on different kinds of inputs, or of its execution speed versus that
of other algorithms for the same problem. To accomplish this goal, an algorithm visualization
uses graphic elements— points, line segments, two- or three-dimensional bars, and so on—to
represent some “interesting events” in the algorithm’s operation.
Search Algorithm :
The searching algorithms are used to search or find one or more than one element from a
dataset. These type of algorithms are used to find elements from a specific data
structures.
Searching may be sequential or not. If the data in the dataset are random, then we need
to use sequential searching. Otherwise we can use other different techniques to reduce
the complexity
Path Finding Algorithm :
Path finding algorithms build on top of graph search algorithms and explore routes
between nodes, starting at one node and traversing through relationships until the
destination has been reached.
These algorithms find the cheapest path in terms of the number of hops or weight.
Weights can be anything measured, such as time, distance, capacity, or cost
PROPOSED SYSTEM
The proposed system involves the simulation of the different Path Finding Algorithm
type of algorithms as following,
1. Dijkstra's algorithm
Sorting Algorithm :
1. Bubble Sort 2. Depth First Search
SOFTWARE REQUIREMENTS :-
HTML5
CSS3
JavaScript
Visual Studio Code
Operating System – Windows 10
WORKING
The back-end code is comprised of HTML5, CSS, and JavaScript. All three types of code are
contained in one .html file and can be run solely from this file. One of the advantages of HTML
5 is that it is not necessary to include different types of web languages in a single file. Below in
Figure below is an illustration of how the three coding languages relate and communicate with
each other.
HTML5 and CSS are used for the interface. The HTML5 communicates with the JavaScript code
and vice versa to launch the appropriate algorithms and update the interface accordingly, as seen
with a single, bidirectional arrow.
All of the back-end interaction is abstracted to the various buttons for selecting algorithms and
running the animation.
HOME PAGE
SORTING ALGORITHM
PATH-FINDING ALGORITHM
SEARCHING ALGORITHM
THANK YOU