Алгоритм для выбора нескольких непересекающихся последующих последствий заданной последовательности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]
My algorithm:
  • Select randomly first sample: [11, 12, 13]
  • Remaining input data are [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] and [14, 15, 16] .
  • Выберите случайно вторую выборку из оставшихся входных данных: [3, 4, 5] .
  • Оставшиеся входные данные (достаточно большие), [6, 7, 8, 9, 10] и [14, 15, 16] .
  • .
К сожалению, этот алгоритм не работает, когда образцы слишком велики. Если задача заключалась в том, чтобы выбрать 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»