Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Биномиальные коэффициенты (https://javascript.ru/forum/offtopic/47740-binomialnye-koehfficienty.html)

Tim 05.06.2014 14:04

Биномиальные коэффициенты
 
В комбинаторике биномиальный коэффициент означает, число всех возможных вариантов выборки k элементов из множества элементов n.



Пример:

Из множества n {1,2,3,4}, выбираем все возможные комбинации из двух элементов, k=2

{1,2} {1,3} {1,4} {2,3} {2,4} {3,4}

Получается шесть возможных вариантов.


----------------------------------------


Как написать алгоритм перебирающий все эти варианты?

l-liava-l 05.06.2014 14:25

Цитата:

Получается шесть возможных вариантов.
Как написать алгоритм перебирающий все эти варианты?
Ну по идее сочетание определяет совокупности элементов не на всем множестве когда порядок не важен, и дает ток кол-во возможных исходов..

Если хочешь их посмотреть то нужно строить таблицу элементарных исходов
В цикле наверное пробегаться

Берешь первый элемент, и подставляешь к нему оставшиеся по очереди(в данном случае 2 оставшихся)
Потом делаешь то же самое с другими.

Если юзаешь не сочетание а размещение (где порядок важен)
То там получается все остальные добавляешь

nerv_ 05.06.2014 14:34

если в лоб, то так
var input = [1, 2, 3, 4];
var output = [];
var len = input.length;

for(var i = 0; i < len; i++) {
    var j = i + 1;
    for(; j < len; j++) {
        output.push([
            input[i],
            input[j]
        ]);
    }
}

console.log(output);
console.log(JSON.stringify(output));

но я не проверял :no:

Tim 05.06.2014 14:36

nerv_,
будет с повтрениями 1,2 2,1 и тп. в моём случае порядок не важен

Tim 05.06.2014 14:37

я так подумал, что мне проще один раз этот массив вычислить (пусть не самым рациональным способом) и запихать куда нибудь в базу

l-liava-l 05.06.2014 14:37

nerv_,
Да)

Цитата:

будет с повтрениями 1,2 2,1 и тп. в моём случае порядок не важен
Как раз без повторений порядок же не важен)
Есть 2 цифры и пофиг в каком они положении

Tim 05.06.2014 14:58

l-liava-l,
Цитата:

Пусть имеется n различных объектов.
Будем выбирать из них m объектов все возможными способами (то есть меняется состав выбранных объектов, но порядок не важен). Получившиеся комбинации называются сочетаниями из n объектов по m, а их число равно


http://www.matburo.ru/tv_komb.php


p.s.: вы достали, я думал поможете, а вы тока моск насилуете :D :)

cyber_ua 05.06.2014 15:14

Tim, я не совсем пойму причем тут эта формула,

Она поможет найти общее кол-во возможных комбинаций, а не их самих.

рони 05.06.2014 15:19

Tim,
k всегда 2?

Tim 05.06.2014 15:25

Цитата:

Сообщение от cyber_ua
Она поможет найти общее кол-во возможных комбинаций, а не их самих.

Верно, в этом и проблема


Цитата:

Сообщение от рони
k всегда 2?

не, у меня покер. 52 карты в колоде и 5 нужно выбрать. те к = 5

http://pokercardplay.net/articles/13...naciy_v_pokere


Часовой пояс GMT +3, время: 06:16.