Алгоритм для выбора нескольких непересекающихся последующих последствий заданной последовательностиPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Алгоритм для выбора нескольких непересекающихся последующих последствий заданной последовательности

Сообщение Anonymous »

Вам дали входные данные (последовательность элементов), например: < /p>

Код: Выделить всё

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]
< /code>
И ваша задача состоит в том, чтобы случайным образом выбрать M непересекающиеся образцы (последующие) того же размера n. < /p>
Например, если задача заключалась в том, чтобы выбрать 3 образца размера 3, одно из решений будет: < /p>
[3, 4, 5]
[8, 9, 10]
[11, 12, 13]
< /code>
Ожидается, что все решения будут иметь одинаковую вероятность выбрать. 7, 8, 9, 10] 
и [14, 15, 16] .
[*] Выберите случайную вторую выборку из оставшихся входных данных: [3, 4, 5] .
оставшиеся входные данные (достаточно большие) [6, 7, 8, 9, 10] и [14, 15, 16] Выберите случайную третью выборку из оставшихся входных данных: [8, 9, 10] < /code>. < /li>
< /ol>
К сожалению, этот алгоритм не работает, когда образцы слишком велики. Если задача заключалась в том, чтобы выбрать 3 образца размера 5, существует решение, но если вы используете мой алгоритм и выбираете случайным образом первую выборку как [3, 4, 5, 6, 7] < /code>, алгоритм потерпит неудачу. < /P>

Конечно, есть также очевидный совет. Но я надеялся на что -то более «умное» (время и пространство).

Подробнее здесь: https://stackoverflow.com/questions/795 ... n-sequence
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»