Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/markmusic27/permutant
🧠 Permutant finds every possible permutation of an array using Heap's Algorithm.
https://github.com/markmusic27/permutant
factorial heapsort-algorithm permutate permutation-algorithms recursion
Last synced: about 2 months ago
JSON representation
🧠 Permutant finds every possible permutation of an array using Heap's Algorithm.
- Host: GitHub
- URL: https://github.com/markmusic27/permutant
- Owner: markmusic27
- License: mit
- Created: 2020-10-19T18:06:17.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2020-12-08T21:09:38.000Z (about 4 years ago)
- Last Synced: 2024-08-08T16:11:58.381Z (5 months ago)
- Topics: factorial, heapsort-algorithm, permutate, permutation-algorithms, recursion
- Language: JavaScript
- Homepage:
- Size: 90.8 KB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Permutant Framework `1.0.16`
Permutant is a JavaScript/TypeScript and Dart framework to find every possible permutation of an array _(or list in Dart)_ of data.
Created with ❤️ by [@markmusic2727](https://twitter.com/MarkMusic2727) and [@filippofonseca](https://twitter.com/FilippoFonseca)
## Table of Content
- [Why Permutant](#why-permutant)
- [Multi Language Integration](#multi-language-integration)
- [Get Started](#get-started)
- [Learn More](#learn-more)# Why Permutant?
Permutant allows for seamless and easy use of complex algorithms (like Heap's Algorithm) to find every possible permutation of an array/list. Algorithms like these usually take a general understanding of computer science and mathematical concepts, like recursion and factorials, to recreate. Instead of spending valueble time grasping these conceps, simply create a Permutant instance. That is all it takes.
# Multi Language Integration
Permutant is not limited to single language architecture. It was designed and optimized to work with TypeScript, and Dart. With cohesive imports and fuctionality, Permutant keeps both codebases consistent, allowing for Permutant to remain the same on all languages.
# Get Started
Ensure that you have the latest version of [Node](https://nodejs.org/en/) and [npm](https://www.npmjs.com/) (if using TS) or [Dart](https://dart.dev/) installed.
### Using Permutant with Dart
__1. Add Permutant to Dependancies__
In your `pubspec.yaml` file, add the following to your dependancies:
```yaml
dependencies:
...
permutant: ^1.0.15
```__2. Initiaization__
At the top of your Dart file, import the `permutant` package, as shown:
```dart
import 'package:permutant/dart/permutant.dart';
```### Using Permutant with TypeScript
__1. Installation with npm__
```
npm i permutant
```__2. Initiaization__
At the top of your TypeScript file, import `permutant`, as shown:
```ts
import Permutant from "permutant";
```NOTE: The name Permutant after import is arbitrary; it can be replaced with whatever you'd like and the code will still run properly:
```ts
import Foo from "permutant";
```# Learn More
Want to know more about what goes behing the scenes in Permutant? We, at Permutant, have made a comprehensive lesson on all of the math behind Heap's Algorithm. Check out the lesson [here](https://github.com/markmusic2727/permutate/blob/master/extras/lesson.md).
If you want to know more about the functions and the different methods that can be called with Permutant, view the documentation [here](https://github.com/markmusic2727/permutate/blob/master/extras/documentation.md).