No BSD License  

Highlights from
SubSets

from SubSets by H. Sh. G.
SubSets(m,n) returns all m dimension subsets of an n member set.

S=subsets(m,n,k,a)
function S=subsets(m,n,k,a)
%SubSets   SubSets(m,n) returns all m dimension subsets of an n member set.
%         Subsets(m,n,k) starts from k'th member.
%         This routine works recursively. Results are arranged column-wise 
%         in a matrix. See SUBSETSN, COMBIN.

%     H. Shakouri G.

if nargin<3, k=1; end
if nargin<4, a=1; end
if n<m, t=n; n=m; m=t; end
if m==1
  S=[k:n];
  return
else
  S=[];
  if a
    for i=k:n-m+1
      ss=subsets(m-1,n,i+1);
      ii=i*ones(1,col(ss));
      S=[S, [ii; ss]];
    end
  else
    ss=subsets(m-1,n,k);
    kk=k*ones(1,col(ss));
    S=[kk; ss];
  end
end

Contact us at files@mathworks.com