nchoosek

Биномиальный коэффициент или все комбинации

Описание

пример

b = nchoosek(n,k) возвращает биномиальный коэффициент, заданный как

Cnk=(nk)=n!(nk)!k!.

Это количество комбинаций n элементы, взятые k за раз. n и k должны быть неотрицательными целыми числами.

пример

C = nchoosek(v,k) возвращает матрицу, содержащую все возможные комбинации элементов вектора v взятые k за раз. Матричные C имеет k столбцы и m !/( (m - k)! k!) строки, где m length(v).

Примеры

свернуть все

b = nchoosek(5,4)
b = 5
v = 2:2:10;
C = nchoosek(v,4)
C = 5×4

     2     4     6     8
     2     4     6    10
     2     4     8    10
     2     6     8    10
     4     6     8    10

v = uint16([10 20 30]);
C = nchoosek(v,uint16(2))
C = 3x2 uint16 matrix

   10   20
   10   30
   20   30

Входные параметры

свернуть все

Количество возможных элементов для выбора, заданное как неотрицательный целочисленный скаляр. n может быть любым числовым типом, но должен быть вещественным.

Пример: 10

Пример: int16(10)

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Количество выбранных элементов для выбора, заданное как неотрицательный целочисленный скаляр. k может быть любым числовым типом, но должен быть вещественным. nchoosek(n,k) требует, чтобы n и k быть того же типа или, по крайней мере, одного из них double.

Нет ограничений на объединение входов различных типов для nchoosek(v,k).

Пример: 3

Пример: int16(3)

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Множество всех элементов для выбора, заданный как вектор.

Пример: [1 2 3 4 5]

Пример: [1+1i 2+1i 3+1i 4+1i]

Пример: int16([1 2 3 4 5])

Пример: [true false true false]

Пример: ['abcd']

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char
Поддержка комплексного числа: Да

Выходные аргументы

свернуть все

Биномиальный коэффициент, возвращенный как неотрицательное скалярное значение. b является тем же типом, что и n и k. Если n и k имеют различные типы, тогда b возвращается как тип nondouble.

Все комбинации v, возвращен как матрица того же типа, что и v. Матричные C имеет k столбцы и n !/( (n - k)! k!) строки, где n length(v).

Каждая строка C содержит комбинацию k элементы, выбранные из v. Элементы в каждой строке C перечислены в том же порядке, в котором они указаны v.

Если k > numel(v), затем C - пустая матрица.

Ограничения

  • Когда b = nchoosek(n,k) достаточно велик, nchoosek отображает предупреждение о том, что результат может быть неточным. В этом случае результат точен только до 15 цифр для входов с двойной точностью или до 8 цифр для входов с одной точностью.

  • C = nchoosek(v,k) практично только для ситуаций, когда length(v) меньше чем около 15.

Расширенные возможности

.

См. также

Представлено до R2006a