comb

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 30, 2026 License: MIT Imports: 3 Imported by: 0

Documentation

Overview

Package comb contains combinatorics functions

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AllCombinations

func AllCombinations[T any](items []T) iter.Seq2[int, []T]

Generator for all size Combination of items

func AllPermutationPositions

func AllPermutationPositions[T any](items []T) iter.Seq2[int, []int]

Generator for all size Permutation Positions of items (-1 if not in permutation)

func AllPermutations

func AllPermutations[T any](items []T) iter.Seq2[int, []T]

Generator for all size Permutation of items

func Combinations

func Combinations[T any](items []T, take int) iter.Seq2[int, []T]

Generator for N-combinations of items

func Factorial

func Factorial(n int) int

Compute N factorial

func NumCombinations

func NumCombinations(numItems, take int) int

Count combinations(numItems, take)

func NumPermutations

func NumPermutations(numItems, take int) int

Count permutations(numItems, take)

func Permutations

func Permutations[T any](items []T, take int) iter.Seq2[int, []T]

Generator for N-permutations of items]

func Product

func Product[T any](domains ...[]T) iter.Seq2[int, []T]

Create an iterator for the Cartesian product of given domains

func RangeProduct

func RangeProduct[T any](start, end int, domains ...[]T) iter.Seq2[int, []T]

Create an iterator for Cartesian product of given domains, from index [start, end)

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL