Я новичок в рандомизированных алгоритмах и изучаю сам, читая книги. Я читаю книгу «Структуры данных и анализ алгоритмов» Марка Аллена Вессиса .О генерации последовательности случайных чисел
Предположим, нам нужно всего лишь перевернуть монету; таким образом, мы должны генерировать 0 или 1 случайным образом. Один из способов сделать это - проверить системные часы. Часы могут записывать время как целое число, которое подсчитывает количество секунд с 1 января 1970 года (по крайней мере, в системе Unix). Тогда мы могли бы использовать младший бит . Проблема в том, что это не работает, если нужна последовательность случайных чисел. Одна секунда - долгое время, и часы могут вообще не меняться во время работы программы. Даже если время было записано в единицах микросекунды, если программа была запущена на , то последовательность чисел, которые были сгенерированы, будет далека от , так как время между вызовами генератора будет , по существу, идентичное на каждом вызов программы. Мы видим, что действительно нужна последовательность случайных чисел. Эти цифры должны отображаться независимо. Если монета переворачивается и появляются головки, следующий флип с монетами должен быть в равной степени вероятен, чтобы подняться на головы или хвостов.
Ниже приведены вопросы по фрагменту текста выше.
В выше фрагменте текста «для подсчета количества секунд, мы могли бы использовать младший бит», автор упоминает, что это не работает, как один второе долгое время, и часы не могут измениться на всех», мой вопрос в том, почему одна секунда - это долгое время, и часы меняются каждую секунду, и в каком контексте автор упоминает , что часы не меняются? Просьба помочь разобраться с простым примером.
Как автор упоминает, что даже для микросекунд мы не получаем последовательность случайных чисел?
Спасибо!
Все, что он подразумевает по обоим комментариям, состоит в том, что компьютер делает свои операции так быстро по отношению к часам, что для компьютера второй - это долгое время. Между вызовами, выполненными программой, часы, вероятно, не изменятся. – hackartist
Это напоминает мне генератор случайных чисел Дильберта ... 9,9,9,9,9,9,9,9,9,9,9,9,9 ... http://dilbert.com/strips/комиксы/2001-10-25 / – Seph