Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Перебор элементов из множества / 14 сообщений из 14, страница 1 из 1
11.01.2007, 11:54
    #34248113
zloy den
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
Вопрос состоит в следующем:
Для произвольных k<=n перебрать к элементов из n без учета порядка и повторений.
Например k=3,n=4
123
124
134
234
Желательно получить это в виде матрицы размерности k*(n!/(n-k)!k!)б т.е. примерно в таком виде.
У меня пока из мыслей тупой перебор всех вариантов, но он мне не нравится
...
Рейтинг: 0 / 0
11.01.2007, 16:27
    #34249454
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
zloy den
У меня пока из мыслей тупой перебор всех вариантов, но он мне не нравится
Нужен выигрыш в скорости?
можно перебирать отсутствующие элементы в строке(если их меньше)
...
Рейтинг: 0 / 0
11.01.2007, 16:36
    #34249497
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
LINUXER
можно перебирать отсутствующие элементы в строке(если их меньше)
а лучше в столбце
...
Рейтинг: 0 / 0
11.01.2007, 16:54
    #34249581
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
zloy denНапример k=3,n=4
123
124
134
234ну вот видишь, ты знаешь алгоритм, осталось только его реализовать.
...
Рейтинг: 0 / 0
11.01.2007, 16:56
    #34249588
zloy den
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
Насчет вигрыша пока не принципиально(еще не стоит задача об оптимальности).
Просто мне не нравится такое решение, хочется чего нибудь более элегантного, но я пока не соображу как
...
Рейтинг: 0 / 0
11.01.2007, 17:00
    #34249602
zloy den
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
проблема в том что нужно его реализовать для произвольных k и n
...
Рейтинг: 0 / 0
11.01.2007, 17:12
    #34249646
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
точно так же, как для трёх и четырёх.
...
Рейтинг: 0 / 0
11.01.2007, 17:21
    #34249672
zloy den
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
Что то это мне напоминает задачу про расстановку ферзей на шахматной доске(вроде по сути это обход дерева)
...
Рейтинг: 0 / 0
11.01.2007, 17:29
    #34249694
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
какие ферзи? Ты о них думал, когда решение писал?
...
Рейтинг: 0 / 0
11.01.2007, 17:52
    #34249765
zloy den
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
Нет, я вообще пишу кодировщик Рида-Маллера, возник небольшой затык с генерацией порождающей матрицы.
Ферзи вспомнились по аналогии(в прошлом году практическую делал)
...
Рейтинг: 0 / 0
11.01.2007, 17:58
    #34249785
zloy den
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
Задача про ферзи состояла в следующем-найти все возможные размещения 8 ферзей на шахматной доске так чтобы они друг друга не били.
Там помнится использовался алгоритм с возвратом(если не ошибаюсь).
Вот мне и показалось что очень даже похоже
...
Рейтинг: 0 / 0
11.01.2007, 18:52
    #34249944
Палестинец
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
...
Рейтинг: 0 / 0
12.01.2007, 13:40
    #34251571
zloy den
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
Спасибо!
А то не хотелось строить велосипед(впрочем уже почти построил:)))
...
Рейтинг: 0 / 0
13.01.2007, 16:14
    #34253509
S.G.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Перебор элементов из множества
Код: plaintext
1.
2.
select D1.N, D2.N, D3.N
from T1 D1, T1 D2, T1 D3
where (D1.N < D2.N) and (D2.N < D3.N)
здесь T1 :
Код: plaintext
1.
2.
CREATE TABLE T1 (
    N  INTEGER
);
, заполнена значениями 1,2,3,4
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Перебор элементов из множества / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]