AlgoSort
Command line and Web
This node package is for all javascript developers who are interested in sorting algorithms. This package gives you the possibility to choose between many different sorting algorithms. This package will output a two dimensional array of all numbers in different sorting states.
Installation
npm i algosort
Command line
Code
const algosort = require("algosort");
var sortedNumbers = algosort.algosort({
algorithm: 'bubblesort',
numbers: [1, 3, 2, 7, 3, 9, 5, 6],
output: 'afterEachNumber'
});
console.log(sortedNumbers);
Options
AlgoSort supports 2 algorithm (at the moment), 3 different options for the output, depending on the algorithm and any length of the array, which is going to be sorted:
- algorithm - bubblesort | selectionsort (Default: bubblesort | More options are coming soon!)
- output - afterEachNumber | afterEachRun | afterAllRuns (Default: afterEachNumber!)
- numbers - array[int, int, int]
Web
Usage
To use this sorting animation on your website, you need to add a link to the graphical.js file in the head of your index.html file.
You do this with this line of code:
<script src="./node_modules/algosort/src/graphical.js"></script>
The whole code would look like this:
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>AlgoSort</title>
<script src="./node_modules/algosort/src/graphical.js"></script>
</head>
<body>
<canvas class='algosort' speed='50' bars='20' barColor='blue' algorithm='selectionsort' output='afterEachNumber' width='1000px' height='250px'></canvas>
</body>
</html>
Options
AlgoSort for Web works very similar to the CLI of this package. The only difference in this case is, that you need to add those options in a canvas.
To use this package you need to add "algosort" as the class of this element like this:
<canvas class='algosort' speed='50' bars='20' barColor='blue' algorithm='selectionsort' output='afterEachNumber' width='1000px' height='250px'></canvas>
The options you have:
- speed - 10 -> 10000
- bars - 2 -> 1000
- barColor - any color you want
- algorithm - bubblesort | selectionsort (Default: bubblesort | More options are coming soon!)
- output - afterEachNumber | afterEachRun | afterAllRuns (Default: afterEachNumber!)
Run your index.html file
parcel index.html
Open your index.html file
http://localhost:1234