Софт для генерации буквенных перестановок - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB93.4409
BTC/USD64086.7720
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 29.08.2018, 18:25   #1
smsupport
Senior Member
 
Аватар для smsupport
 
Регистрация: 12.07.2009
Сообщений: 1,581
Бабло: $361065
Question Софт для генерации буквенных перестановок

Задача сгенерировать все возможные двухбуквенники, затем 3-х, затем 4-х и так далее.

Очень важно получить все уникальные возможные варианты для каждого диапазона. Планка до 10 букв.

Чем такое можно сделать?
__________________
Swissdoc heavy spec
smsupport вне форума  
Старый 29.08.2018, 20:20   #2
веломан
сыроед
 
Аватар для веломан
 
Регистрация: 01.10.2015
Сообщений: 15,859
Бабло: $1861015
По умолчанию

надо пример приводить
веломан вне форума  
Старый 29.08.2018, 20:52   #3
Drow
Senior Member
 
Регистрация: 21.03.2008
Сообщений: 690
Бабло: $128400
По умолчанию

На пхп, токма зачем тебе больше 4х букв?

PHP код:
//$blah = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
$blah =  array ('0','1','2','3','4','5','6','7','8','9');
$extension '.com';

//for ($a=0; $a<10; $a++)
//{
for ($b=0$b<10$b++)
{
for (
$c=0$c<10$c++)
{
$domain =  $blah[$a] . $blah[$b] . $blah[$c] . $extension ;

        
$fpz=fopen("lll.txt","a");
        @
chmod("lll.txt",0666);
        
fputs($fpz,"$domain\n");
        
fclose($fpz);
        echo 
"$domain<br>";
}
}
//} 
Drow вне форума  
Старый 29.08.2018, 21:46   #5
веломан
сыроед
 
Аватар для веломан
 
Регистрация: 01.10.2015
Сообщений: 15,859
Бабло: $1861015
По умолчанию

Drow, без массива быстрее
PHP код:
$aZ09 '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';

$str_len = (strlen($aZ09) -1);
$result '';
while (
$size--)    {$result .= $aZ09[mt_rand(0$str_len)];} // тест на время: строка = 1.000s; массив = 1.390s; 
веломан вне форума  
Старый 29.08.2018, 23:53   #6
smsupport
Senior Member
 
Аватар для smsupport
 
Регистрация: 12.07.2009
Сообщений: 1,581
Бабло: $361065
ТС -->
автор темы ТС По умолчанию

Затупил с примером . Все, что выше не подходит…

Допустим, есть диапазон 1,2,3 (тут могут быть и буквы в нижнем регистре)
Нам нужно получить все возможные для двух комбинаций, пример:

11
12
13
11
21
31
21
22
23
12
22
32
31
32
33
13
23
33
__________________
Swissdoc heavy spec
smsupport вне форума  
Старый 30.08.2018, 00:01   #7
sim0n
zenno.pro
 
Аватар для sim0n
 
Регистрация: 29.05.2014
Сообщений: 961
Бабло: $138858
По умолчанию

Цитата:
Сообщение от smsupport Посмотреть сообщение
Затупил с примером . Все, что выше не подходит…

Допустим, есть диапазон 1,2,3 (тут могут быть и буквы в нижнем регистре)
Нам нужно получить все возможные для двух комбинаций, пример:

11
12
13
11
21
31
21
22
23
12
22
32
31
32
33
13
23
33
11
22
33
поидее быть не может
sim0n вне форума  
Старый 30.08.2018, 00:20   #8
Lord_Alfred
Хитрожопый
 
Аватар для Lord_Alfred
 
Регистрация: 15.07.2008
Сообщений: 599
Бабло: $93800
По умолчанию

Цитата:
Сообщение от Drow Посмотреть сообщение
На пхп, токма зачем тебе больше 4х букв?

PHP код:
//$blah = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
$blah =  array ('0','1','2','3','4','5','6','7','8','9');
$extension '.com';

//for ($a=0; $a<10; $a++)
//{
for ($b=0$b<10$b++)
{
for (
$c=0$c<10$c++)
{
$domain =  $blah[$a] . $blah[$b] . $blah[$c] . $extension ;

        
$fpz=fopen("lll.txt","a");
        @
chmod("lll.txt",0666);
        
fputs($fpz,"$domain\n");
        
fclose($fpz);
        echo 
"$domain<br>";
}
}
//} 
Очень плохой код. Да ещё и не рабочий.
Каждую итерацию цикла (ещё и вложенного) - долбить ФС. Ужас.

Цитата:
Сообщение от веломан Посмотреть сообщение
Drow, без массива быстрее
PHP код:
$aZ09 '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';

$str_len = (strlen($aZ09) -1);
$result '';
while (
$size--)    {$result .= $aZ09[mt_rand(0$str_len)];} // тест на время: строка = 1.000s; массив = 1.390s; 
И ещё один кусок нерабочего кода. Откуда ж вы такие беретесь?

2ТС:
https://planetcalc.ru/4242/


__________________
Мой блог в Telegram: https://tglink.ru/Lord_Alfred
Тесты производительности VPS: https://tglink.ru/VPSBench - присылайте с рефкой
Lord_Alfred вне форума  
Старый 30.08.2018, 00:37   #9
smsupport
Senior Member
 
Аватар для smsupport
 
Регистрация: 12.07.2009
Сообщений: 1,581
Бабло: $361065
ТС -->
автор темы ТС По умолчанию

Lord_Alfred, Штука быстрая, но с цифрами лажает по моей задаче, не проверял, но предполагаю что и с буквами та же шляпа будет.

Выдает такой диапазон:

12
13
21
23
31
32

Вместо
Offtopic


Пофиг на дубли, их просто подчистить другим софтом...
__________________
Swissdoc heavy spec
smsupport вне форума  
Старый 30.08.2018, 00:40   #10
Lord_Alfred
Хитрожопый
 
Аватар для Lord_Alfred
 
Регистрация: 15.07.2008
Сообщений: 599
Бабло: $93800
По умолчанию

Цитата:
Сообщение от smsupport Посмотреть сообщение
Lord_Alfred, Штука быстрая, но с цифрами лажает по моей задаче, не проверял, но предполагаю что и с буквами та же шляпа будет.

Выдает такой диапазон:

12
13
21
23
31
32

Вместо
Offtopic


Пофиг на дубли, их просто подчистить другим софтом...
Потому что она выдаёт без повторов. Зачем тебе они? Если уж так нужны, то поищи аналог с повторами (может и там на сайте есть).
Это ж простая комбинаторика, основа теорвера.
__________________
Мой блог в Telegram: https://tglink.ru/Lord_Alfred
Тесты производительности VPS: https://tglink.ru/VPSBench - присылайте с рефкой
Lord_Alfred вне форума