nchoosek_enum

Version 1.0.1 (1.88 KB) by Bruno Luong
nchoosek with enumerate selection. This function never build the full combination array in memory
11 Downloads
Updated Tue, 27 Apr 2021 06:24:50 +0000

View License

This function can be used ti process all subset of cardinal k of set of cardinal k without having them stored in the memory. Typical call would be as following

n = 10;
k = 3;
chunksize = 10;
i = 1:chunksize;
norepetition = false;
while true
if norepetition
c = nchoosek_enum(n, k, i);
else
c = nchoosek_enum(n+k-1, k, i);
c = c - (0:k-1);
end
for r=1:size(c,1)
cr = c(r,:);
endcomb = any(isnan(cr));
if endcomb
break
end
% do somthing with cr
fprintf('%s\n', mat2str(cr))
end
if endcomb
break
end
i = i + chunksize;
end

Cite As

Bruno Luong (2024). nchoosek_enum (https://www.mathworks.com/matlabcentral/fileexchange/91060-nchoosek_enum), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2021a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.1

Optimization implementation (generate smaller rectangular Pascal triangle)

1.0.0