|
Название: Вычисление комбинаций по факториалу Отправлено: adw0rd от 12 Май, 2009, 04:31:44 Есть ли в JavaScript готовая ф-ия для вычисления всех комбинаций по факториалу?
Мне надо, например из 3-х слов раз, два, три составить комбинации
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 04:35:58 почти уверен что такой штуки в яваскрипте нету ..
Название: Вычисление комбинаций по факториалу Отправлено: adw0rd от 12 Май, 2009, 04:39:35 helldude, тоже так думаю, интересно а в фреймворках...? Я сейчас сам напишу конечно, но просто интересно...
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 04:42:42 такие задачи .. ну оооочень уж редки имхо и в фрейм выносить просто нерационально, поэтому думаю нету) Название: Вычисление комбинаций по факториалу Отправлено: adw0rd от 12 Май, 2009, 04:54:28 helldude, ну возможно есть плагины... ну ладно, сейчас напишу и выложу... пока что еклипс апдейтится...
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 04:57:13 КОД В СТУДИЮ! ждем! :) Название: Вычисление комбинаций по факториалу Отправлено: Убийца от 12 Май, 2009, 04:57:42 писал такое года 4 назад на x86 ассемблере)
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 05:08:02 выкладывай)) Название: Вычисление комбинаций по факториалу Отправлено: mario от 12 Май, 2009, 05:36:39 +1 очень интересно глянуть на асу :) Название: Вычисление комбинаций по факториалу Отправлено: Убийца от 12 Май, 2009, 05:45:13 старый код не нашел, но идея здесь: http://www.wasm.ru/article.php?article=cycle_pwd
Название: Вычисление комбинаций по факториалу Отправлено: adw0rd от 12 Май, 2009, 10:14:19 ссылки в помощь http://tvsh2004.narod.ru/alg08.html и http://symmetrica.net/algorithms/combinations.htm
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 10:44:33 обе ссылки - ужас
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 10:58:34 PHP <?$data = array("Раз","Два","Три"); $wdata = array_merge($data,$data); $count = count($data); $result = array(); foreach($data as $i=>$v) { $c = $wdata; unset($c[$i],$c[$i+$count]); $c = array_values($c); for($j=0;$j<$count-1;$j++) { $return[] = $v."-".join("-",array_slice($c,$j,$count-1)); } } echo join("\n",$return); ну и у мну пиздец код конечно, но как вариант может и пойдет :)) имхо главное - прозрачность кода. Раз-Два-Три Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 10:59:48 Раз-Два-Три-Четыре-Пядь Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 11:00:36 Раз-Два-Три-Четыре-Пядь-Жесдь-Семь-Восемь-Девядь-Десядь Название: Вычисление комбинаций по факториалу Отправлено: CTAPbIu_MABP от 12 Май, 2009, 11:11:49 скрипт в студию
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 11:13:30 Название: Вычисление комбинаций по факториалу Отправлено: CTAPbIu_MABP от 12 Май, 2009, 11:15:35 куль
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 12 Май, 2009, 11:16:10 можно и без массивов, но я люблю массивы. Название: Вычисление комбинаций по факториалу Отправлено: CTAPbIu_MABP от 12 Май, 2009, 11:28:36 я люблю скорость
если работает быстро (и код читабелен) то все ништяк Название: Вычисление комбинаций по факториалу Отправлено: ghost от 17 Май, 2009, 08:38:59
код пойдёт только для 1,2,3 для 1,2,3,4 - видим 1 - 2 - 3 - 4очевидно комбинации 1-2-4-3 нет, и еще нескольких Название: Вычисление комбинаций по факториалу Отправлено: CTAPbIu_MABP от 17 Май, 2009, 08:53:06 ghost, кул! никто больше похоже не проверял
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 17 Май, 2009, 09:10:13 ghost, понимаешь, эдво такие результаты и просил. мне то похуй что генерить
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 17 Май, 2009, 09:10:33 Мне надо, например из 3-х слов Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 17 Май, 2009, 09:11:15 PHP <?$data = array("Раз","Два","Три"); $wdata = array_merge($data,$data); $count = count($data); $result = array(); foreach($data as $i=>$v) { for($j=0;$j<$count;$j++) { $return[] = $v."-".join("-",array_slice($wdata,$j,$count-1)); } } echo join("\n",$return); -1 убери из второго фора + ансет вытри и будет тебе как ты говоришь :) Название: Вычисление комбинаций по факториалу Отправлено: ghost от 17 Май, 2009, 09:21:21 не, не будет.. тут либо рекурсию нужно, либо лишние циклы.. универсальной формулы в комбинаторике нет, и 2-я циклами ( множество размерности n^2) всех перестановок (множество размерности n!) ты не получишь
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 17 Май, 2009, 09:30:20 ghost, ты права наверно
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 17 Май, 2009, 09:30:39 думать не хочется, устал за сегодня уже)))
может завтра вернусь покопать эту тему) Название: Вычисление комбинаций по факториалу Отправлено: ghost от 17 Май, 2009, 10:25:37 че тут думать? тут трясти надо :)
PHP <?php$arr = array(1, 2, 3, 4, 5); function shift($arr, $str) { $rez = ''; if (count($arr)==1) return $str.($str ? ' - ' : '').array_shift($arr)."<br />"; foreach ($arr as $key=>$val) { $arr1 = $arr; unset($arr1[$key]); $str1 = $str.($str ? ' - ' : '').$val; $rez .= shift($arr1, $str1); } return $rez; } $rez = shift($arr, ''); print $rez; ?> Название: Вычисление комбинаций по факториалу Отправлено: ghost от 17 Май, 2009, 11:03:46 да, пардон, не размерности а мощности. размерность это из другой оперы) Название: Вычисление комбинаций по факториалу Отправлено: CTAPbIu_MABP от 17 Май, 2009, 11:05:42 ghost, не грузи математикой тут все только первых три класса закончили
Название: Вычисление комбинаций по факториалу Отправлено: Baboot от 17 Май, 2009, 11:15:55 да и не все... Я вот 1,258 класса.
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 17 Май, 2009, 11:18:05 уху, гост умная ....
Название: Вычисление комбинаций по факториалу Отправлено: phpdude от 17 Май, 2009, 11:18:13 я вот уже нихуя не соображаю)
Название: Вычисление комбинаций по факториалу Отправлено: Baboot от 17 Май, 2009, 11:34:54 состояние тупняка, причом полного.
Название: Вычисление комбинаций по факториалу Отправлено: ghost от 17 Май, 2009, 11:49:27 CTAPbIu_MABP, извини, больше не буду:)
Название: Вычисление комбинаций по факториалу Отправлено: adw0rd от 18 Май, 2009, 12:26:10
да если мне только для трех, то я бы делал так: i++ 123 i-- 321 Тут ничего сложного... А вот далее... ps. смотреть вертикальные столбы Название: Вычисление комбинаций по факториалу Отправлено: adw0rd от 19 Май, 2009, 12:07:08 ghost, огромное спасибо!
|