Elixir Combination Save

A simple combinatorics library providing combination and permutation.

Project README

Combination

Build Status Hex.pm Version

Elixir library to generate combinations and permutations from Enumerable.

See Examples.

Documentation

API documentation is available at http://hexdocs.pm/combination

Adding Combination To Your Project

To use Combination with your projects, edit your mix.exs file and add it as a dependency:

defp deps do
  [
    {:combination, "~> x.x.x"},
  ]
end

Examples

To generate combinations,


iex> 1..3 |> Combination.combine(2)
[[3, 2], [3, 1], [2, 1]]

To generate permutations,


iex> 1..3 |> Combination.permutate
[[1, 2, 3], [2, 1, 3], [3, 1, 2], [1, 3, 2], [2, 3, 1], [3, 2, 1]]

iex> 1..3 |> Combination.permutate(fn p -> Enum.at(p, 0) == 1 end)
[[1, 2, 3], [1, 3, 2]]

LICENSE

This software is licensed under MIT License.

Open Source Agenda is not affiliated with "Elixir Combination" Project. README Source: seantanly/elixir-combination
Stars
32
Open Issues
0
Last Commit
6 years ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating