@combinatorics/n-combinations
Version:
Set n-combinations for JavaScript
3 lines (2 loc) • 489 B
JavaScript
import{list as r}from"@iterable-iterator/list";import{forwardRangeIterator as t}from"@iterable-iterator/range";import{map as e,pick as i}from"@iterable-iterator/map";function*o(e,i){if(i>e)return;const o=r(t(0,i,1));for(yield o;;){let r=i-1;for(;;){if(r<0)return;if(o[r]!==r+e-i){let t=++o[r];for(++r;r<i;++r)o[r]=++t;break}--r}yield o}}var a=(t,a)=>{const n=r(t);return e(t=>r(i(n,t)),o(n.length,a))};export{o as _combinations,a as combinations};
//# sourceMappingURL=index.modern.js.map