Skip to content

otomer/comy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation



Comy - A sort of glorified dice-throwing

Comy - a sort of glorified dice-throwing

npm npm bundle size (minified) npm dependents Downloads


Introduction

Combinatorial algorithms are computational procedures which are designed to help solve combinatorial problems.

Install

$ npm install comy

Usage

const comy = require("comy");

// Specific example:
const { priorityGroups } = require("comy");
const arr = [
  { name: "Michael", priority: 1 },
  { name: "Murphy", priority: 2 },
  { name: "Capone", priority: 3 },
  { name: "Donnie", priority: 1 },
  { name: "Koby", priority: 2 },
  { name: "Felis", priority: 3 }
];

//Split the arr into 2 balanced groups by priority
console.log(priorityGroups(arr, 2, "priority"));
/* Possible output:
[
  [ { name: 'Donnie', priority: 1 },
    { name: 'Koby', priority: 2 },
    { name: 'Felis', priority: 3 }
  ],
  [
    { name: 'Michael', priority: 1 },
    { name: 'Murphy', priority: 2 },
    { name: 'Capone', priority: 3 }
  ]
]
*/

Methods

pickNumbers: (from: any, to: any, size: any) => any[]
pickRandom: (arr: any, n?: number) => any
pickHexColor: () => string
priorityGroups: (arr: any, numOfGroups: any, attr?: string) => any[][]
groups: (arr: any, numOfGroups: any) => any
generateString: () => string

ForTheBadge built-with-love Enjoy

About

Comy - Combinatorics, a sort of glorified dice-throwing

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published