Я недавно изучал вещи и встретился с Дональдом Кнутом. Но я не нашел правильный алгоритм для моей проблемы.
Проблема У нас есть лига с n игроками. каждую неделю у них есть матч друг с другом. Через n-1 недели каждая команда сражалась друг против друга. Есть n / 2 матчей в день. но одна команда может бороться только один раз в неделю. если мы генерируем (n / k) комбинацию, мы получаем все комбинации ... (предполагая, что k = 2), но мне нужно привести их в правильном порядке.
Мое первое предложение было ... не самым лучшим. Я только что сделал массив, а затем позвольте компьютеру попробовать, если он найдет правильный путь. если нет, вернитесь к началу, перетасуйте массив и сделайте это снова, ну, я запрограммировал его на PHP (n = 8), и то, что получается, работает, но занимает много времени, а для n = 16 это дает мне тайм-аут а также.
Так что я подумал, что если мы найдем алгоритм или кто-нибудь знает книгу, посвященную этой проблеме.
А вот мой код:
http://pastebin.com/Rfm4TquY