nchoose2

all combinations of two elements
2.7K Downloads
Updated 28 Feb 2019

View License

NCHOOSE2 - all combinations of two elements

Y = NCHOOSE2(X) returns all combinations of two elements of the array X. It is the fast, vectorized version of NCHOOSEK(X,2). X can be any type of array. When X is a scalar integer > 1, it returns X*(X-1)/2.

Example:
nchoose2([10 20 30 40])
% -> 10 20
% 10 30
% 10 40
% 20 30
% 20 40
% 30 40

nchoose2({'a','b','c','d','e'})
% -> 'a' 'b'
% 'a' 'c'
% ...
% 'c' 'e'
% 'd' 'e'

See also nchoosek, perms
combn, nchoose, allcomb (on the File Exchange)

Cite As

Jos (10584) (2026). nchoose2 (https://ch.mathworks.com/matlabcentral/fileexchange/20144-nchoose2), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2018b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on Argument Definitions in Help Center and MATLAB Answers
Acknowledgements

Inspired by: nCtwo

Inspired: nchoose3, VChooseK

Version Published Release Notes
3.2.0.1

added image

3.2.0.0

edited internal comments

3.1.0.0

fixed bug for scalar input

3.0.0.0

When X is a scalar integer > 1, it returns X*(X-1)/2.

2.2.0.0

checked for R2017b, fixed comma's

1.0.0.0

fixed error with input having less than 2 elements