Algorithm visualizer made with React, Material UI and P5JS.

Overview

Made with React, P5JS and Material UI.

Link

https://andresrodriguez55.github.io/algorithmsVisualizer/#/

Description

The purpose of doing this was to learn to make animations and at the same time strengthen the knowledge of some classic algorithms.

For now the page contains the visualizations of:

  • Deep first search
  • Breadth first search
  • Shortest path (using Dijkstra's algorithm)
  • Minimum spanning tree (using Kruskal's algorithm)
  • Bubble sort
  • Selection sort
  • Insertion sort
  • Quick sort
  • Merge sort
  • Sieve of eratosthenes
  • Linear algebra methods

and the proofs of:

  • Extended eucledian algorithm

How to use visualizations

Graphs

  • In the section of vertices you can eliminate the vertices that are in the graph or you can add new vertices in the empty places, the application will not allow you to add a vertex very close to the sides of the screen or very close to another vertex, this was done with the purpose of giving a better user experience

  • In the edges section you can at first choose an initial vertex to add a new edge or delete an existing one, you can also directly touch on an edge value to be able to change it.

    If you chose a first vertex you should then choose a second vertex, when choosing it if there is no edge between the two chosen vertices, an edge of an average value will be added to the distance of the two vertices, if an edge already exists it will be eliminated.

  • if you choose the dfs or bfs option you will be prompted to choose an initial vertex for the algorithm to start.

  • If you choose the dijkstra algorithm, you must choose an initial vertex and a destination vertex.

  • The kruskal algorithm will work as soon as you press the minimum spanning tree button.

Simple & advanced sort

  • You can at any time manipulate the array with the inputs section given below the screen.

  • After pressing on the algorithm you want, you can put it to work by pressing the play button, at any time you can reset the screen obtaining the state in which the input array is.

Sieve of eratosthenes

  • Choosing the final number in the slider, you can start the algorithm whenever you want by pressing the play button, to reset everything press the reset button.

Linear Algebra

  • By clicking on the method you want to use, depending on that method you will be asked for the required inputs, giving the calculate button you will be shown step by step how the result was reached.

Screenshots

You might also like...

This project will be using various AI and Rule Engine algorithm to detect various attack against a company!

This project will be using various AI and Rule Engine algorithm to detect various attack against a company!

πŸ“Œ Introduction This project will be using various AI and Rule Engine algorithm to detect various attack against a website! πŸ“Œ Mission After starting

Apr 29, 2022

JS_GAME/Algorithm

πŸš€ JS_GAME JavaScript λ₯Ό μ΄μš©ν•˜μ—¬ 각쒅 κ²Œμž„μ„ λ§Œλ“€μ–΄λ³΄μž. (μžλ°”μŠ€ν¬λ¦½νŠΈλ₯Ό μ‚¬μš©ν•΄μ„œ κ²Œμž„μ„ λ§Œλ“€ 수 있음.) μ›ΉνŽ˜μ΄μ§€λ₯Ό λ§Œλ“œλŠ” 것도 μ’‹μ§€λ§Œ, JS λ₯Ό μ΄μš©ν•˜μ—¬ κ°„λ‹¨ν•œ κ²Œμž„μ„ λ§Œλ“€λ©΄μ„œ μƒκ°μ˜ μ „ν™˜μ„ ν•΄λ³΄μž. 클둠 코딩도 μ’‹λ‹€! ν•˜μ§€λ§Œ, 클둠 μ½”λ”© 후에

Nov 5, 2021

NodeJS Implementation of Decision Tree using ID3 Algorithm

Decision Tree for Node.js This Node.js module implements a Decision Tree using the ID3 Algorithm Installation npm install decision-tree Usage Import

Dec 12, 2022

A deterministic object hashing algorithm for Node.js

Deterministic-Object-Hash A deterministic object hashing algorithm for Node.js. The Problem Using JSON.stringify on two objects that are deeply equal

Nov 30, 2022

Dominating set solver using quantum algorithm Grover

Solution for dominating set problem using improved quantum algorithm Grover, which uses Schoning algorithm for k-SAT problem to accomplish this improvement

Aug 31, 2022

⭐️ my baekjoon algorithm

Baekjoon Algorithm Python3 import sys # 곡백으둜 κ΅¬λΆ„λœ 2개 숫자 μž…λ ₯ λ°›κΈ° N, M = map(int, sys.stdin.readline().split()) # μ—¬λŸ¬ 쀄 μž…λ ₯ λ°›κΈ° n = int(sys.stdin.readline

Jul 22, 2022

k-means algorithm module for n-dimensional data

K-Means Algorithm This module allows you to compute the k-Means algorithm with n-dimensional data. You simply put in your data as a list and the k you

Jan 31, 2022

A Flood-Fill Algorithm written in JavaScript

flood https://magnogen.net/flood A Flood-Fill Algorithm for Creative Coders This is the source code for a section of my website. You're welcome to sno

Dec 22, 2022

Deno's first lightweight, secure distributed lock manager utilizing the Redlock algorithm

Deno-Redlock Description This is an implementation of the Redlock algorithm in Deno. It is a secure, lightweight solution to control resource access i

Dec 31, 2022
A graphical web-based audio visualizer which reads music data using Pure JavaScript, and draws a graphical view in Canvas.

Audio Visualizer JS A graphical web-based audio visualizer which reads music data using Pure JavaScript, and draws a graphical view in Canvas. Demo: h

Max Base 9 Aug 9, 2022
Lumos is an AWS Lambda visualizer and open source alternative to AWS CloudWatch.

Lumos Lambda Metrics Visualizer Table of Contents About Lumos Techologies Used Getting Started Key Lambda Metrics How to Contribute License Contributo

OSLabs Beta 36 Nov 5, 2022
The visualizer is a tool developped by the cheminformatics department of the Swiss Federal Institute of Technology

Concept The visualizer is a tool developped by the cheminformatics department of the Swiss Federal Institute of Technology. We promote the development

Norman Pellet 31 Sep 13, 2022
Path-finding & Sorting algorithms Visualizer

Update - Changelog ?? 09.05.2022 AlgoVision is now fully mobile-responsive for all its features ! On mobile, the 'Mouse Chase' option in Dynamic Mode

Eliya Shalom 23 Dec 18, 2022
A SolidJS signal tracking dependency & structural visualizer developer tool

Solid JS DevTool Developer tool that visualizes Solid's signal architecture, including the components. It can be added to any Solid JS application. In

OSLabs Beta 58 Nov 5, 2022
A quick start Create React App template with react-router-dom, material-ui, gh-pages and firebase

A quick start Create React App template with react-router-dom, material-ui, gh-pages and firebase. With google authentication, routing and deployment capabilities built in.

Hussain Pettiwala 5 Feb 22, 2022
A personal semantic search engine capable of surfacing relevant bookmarks, journal entries, notes, blogs, contacts, and more, built on an efficient document embedding algorithm and Monocle's personal search index.

Revery ?? Revery is a semantic search engine that operates on my Monocle search index. While Revery lets me search through the same database of tens o

Linus Lee 215 Dec 30, 2022
Fast and robust triangle-triangle intersection test with high precision for cross and coplanar triangles based on the algorithm by Devillers & Guigue.

fast-triangle-triangle-intersection Fast and robust triangle-triangle intersection test with high precision for cross and coplanar triangles based on

Technology and knowledge for interaction 10 Nov 15, 2022
Non-interactive publicly verifiable distributed key generation and resharing algorithm over BLS12-381

NPVDKG-RS This repository contains a mathematical presentation and some code to demonstrate our developed non-interactive publicly verifiable distribu

NATRIX Official 8 May 19, 2022
πŸ€–A Tic-Tac-Toe solver that uses the minimax algorithm and alpha-beta pruning to make it unbeatable

Tic-Tac-Toe AI A Tic-Tac-Toe solver that uses the minimax algorithm and alpha-beta pruning to make it unbeatable How it Works Tic-Tac-Toe is what is k

Martin 4 May 20, 2022