![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
![]() ![]()
Сообщение
#1
|
|
![]() Продвинутый пользователь ![]() ![]() ![]() Группа: Posters Сообщений: 231 Регистрация: 5.7.2007 Из: не важно Пользователь №: 7,555 ![]() |
Вообщем есть довольно большой текстовый файл (400mb), нужно его прочитать, перемешать в нем строчки и сохранить назад...
То бишь например текст: 1 2 3 перемешать в: 1 3 2 Скриптом не получается ![]() Заранее спасибо! Сообщение отредактировал Skelt - Nov 6 2008, 17:22 -------------------- аццкий сотона! не зли меня - и так трупы складывать негде)))
|
|
|
![]() |
![]()
Сообщение
#2
|
|
![]() Мега постер ![]() Группа: Local moder Сообщений: 1,712 Регистрация: 21.8.2006 Пользователь №: 1,269 ![]() |
Как именно перемешиваются строки важно?
-------------------- |
|
|
![]()
Сообщение
#3
|
|
![]() Продвинутый пользователь ![]() ![]() ![]() Группа: Posters Сообщений: 231 Регистрация: 5.7.2007 Из: не важно Пользователь №: 7,555 ![]() |
Как именно перемешиваются строки важно? в рандомном порядке. но форматирование исходного текста нужно сохранить (символ переноса строки в конце каждой строчки) например текст 123 можно перемешать как угодно: 132, 312, 213.., но в столбик) -------------------- аццкий сотона! не зли меня - и так трупы складывать негде)))
|
|
|
![]()
Сообщение
#4
|
|
![]() Мега постер ![]() Группа: Local moder Сообщений: 1,712 Регистрация: 21.8.2006 Пользователь №: 1,269 ![]() |
Читать сэмплами, например, по 1000 строк, порождать случайную перестановку, в соответствии с этой перестановкой записывать перемешанные сэмплы из строк в файл. Проблема лишь в том, что случайность будет лишь в пределах блоков по 1000 строк. Но повторные прогоны алгоритма на выходных данных с увеличенным в 2-3 раза размером сэмпла решат эту проблему. В чем проблема написание этого?
-------------------- |
|
|
![]()
Сообщение
#5
|
|
![]() Продвинутый пользователь ![]() ![]() ![]() Группа: Posters Сообщений: 231 Регистрация: 5.7.2007 Из: не важно Пользователь №: 7,555 ![]() |
Читать сэмплами, например, по 1000 строк, порождать случайную перестановку, в соответствии с этой перестановкой записывать перемешанные сэмплы из строк в файл. Проблема лишь в том, что случайность будет лишь в пределах блоков по 1000 строк. Но повторные прогоны алгоритма на выходных данных с увеличенным в 2-3 раза размером сэмпла решат эту проблему. В чем проблема написание этого? если бы не было проблем я бы не спрашивал ![]() p.s проблему решил, тему можно закрывать... Сообщение отредактировал Skelt - Nov 7 2008, 23:29 -------------------- аццкий сотона! не зли меня - и так трупы складывать негде)))
|
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 15th June 2025 - 15:05 |