Skip to content

This is a full-stack application used for visualizing different types of Algorithms

Notifications You must be signed in to change notification settings

Arijit1000/Algorithm-Visualizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SEARCHING-ALGORITHMS-VISUALIZER-PART 🤩 📂 💻

Generic badge Generic badge Generic badge

About 👇

It is a part of functionality 1 of my project. Algorithm Visualizer is an online platform that visualizes algorithms from as per user choice. Algorithm-visualizer is a web app written in React. It contains UI components and interprets commands into visualizations. Here are two types of algorithms, searching and sorting. Here user will get a tutorial for using this web application. Here we can set the size, speed, name of algorithm them it will show how the algorithm actually works.

FEATURES IN SEARCHING VISUALIZER 👇

  1. Algorithms
  • Breadth-First Search
  • Dijkstra's Algorithm
  • Bidirectional Swam Algorithm
  • Convergent Swam Algorithm
  • Swam Algorithm
  • Depth-First Search
  1. Patterns
  • Simple Stair Pattern
  • Basic Weight Maze
  • Recursive Division
  • Recursive Division(Vertical Skew)
  • Recursive Division(Horizental Skew)
  1. Adding Bomb
  2. Visualize
  3. Clear Board
  4. Clear Walls & Weights
  5. Clear Path
  6. Speed
  • Fast
  • Average
  • Slow

Purpose 👇

Algorithms are used in every part of computer science. They form the field's backbone. In computer science, an algorithm gives the computer a specific set of instructions, which allows the computer to do everything, be it running a calculator or running a rocket. Algorithmic thinking, or the ability to define clear steps to solve a problem, is crucial in many different fields. Even if we’re not conscious of it, we use algorithms and algorithmic thinking all the time. Algorithmic thinking allows students to break down problems and conceptualize solutions in terms of discrete steps. Being able to understand and implement an algorithm requires students to practice structured thinking and reasoning abilities. I have made this website to easily study algorithms. I have made this to make learning algorithms an interesting, facinating and easy work.

Use 👇

Clicking on Visualize Algorithms user can see searching visualizer and there in the drop down menu user has to choose sorting algorithms to watch and understand working of some specific algorithms. User can read the tutorial which describes how to use that web application. User can change the values to see different working way. User just has to follow the tutorials to use this.

Importance 👇

There are two principal applications of algorithm visualization: research and education. Potential benefits for researchers are based on expectations that algo-rithm visualization may help uncover some unknown features of algorithms. For example, one researcher used a visualization of the recursive Tower of Hanoi algo-rithm in which odd- and even-numbered disks were colored in two different colors. He noticed that two disks of the same color never came in direct contact during the algorithm’s execution. This observation helped him in developing a better non-recursive version of the classic algorithm. The application of algorithm visualization to education seeks to help students learning algorithms. The available evidence of its effectiveness is decisively mixed. Although some experiments did register positive learning outcomes, others failed to do so. The increasing body of evidence indicates that creating sophisticated software systems is not going to be enough. In fact, it appears that the level of student involvement with visualization might be more important than specific features of visualization software. In some experiments, low-tech visualizations prepared by students were more effective than passive exposure to sophisticated software systems.
Searching Algorithms are designed to check for an element or retrieve an element from any data structure where it is stored. Based on the type of search operation, these algorithms are generally classified into two categories:
Sequential Search: In this, the list or array is traversed sequentially and every element is checked. For example: Linear Search.
Interval Search: These algorithms are specifically designed for searching in sorted data-structures. These type of searching algorithms are much more efficient than Linear Search as they repeatedly target the center of the search structure and divide the search space in half. For Example: Binary Search.
Learning sorting algorithms get much easier with visualizing it. So it is a great way to study and understand algotihms.

Folder Structure 👇

Searching-Visualizer
        ├── public
        |      ├── browser
        |      |      ├── animations
        |      |      ├── mazeAlgorithms
        |      |      ├── pathfindingAlgorithms
        |      |      ├── board.js
        |      |      ├── bundle.js
        |      |      ├── getDistance.js
        |      |      └── node.js
        |      └── styling
        |             ├── fonts
        |             ├── cssBasic.css
        |             ├── cssPokemon.css
        |             └── svgs and imgs
        ├── server.js
        └── index.html

Making 👇

It has been created using advance JavaScript, advance CSS3, SCSS, ReactJS, advance HTML5, nodejs. It is fully responsive.
For references for algorithms I have used geeksforgeeks and wikipedia.

Screenshots 👇

About

This is a full-stack application used for visualizing different types of Algorithms

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published