![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Вот смысл: есть файл с числами, записанными по одному на строке. В ходе исполнения этот файл пополняется новыми данными (новая строка с новым числом).
Это число может быть больше поледнего( наименьшего). Задача: отсортировать сей список, чтобы числа стояли в порядке убывания. Числа - integer -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Chrisstoff |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 28.5.2005 Где: Hell... жудкое ме сто Репутация: нет Всего: 1 |
Один вопрос ... файло типизированное или просто текстовое ..?
|
|||
|
||||
| vadims |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 8.6.2005 Репутация: нет Всего: 17 |
В чем сложность то ???
Сортировка файла который потенциально нельзя закачать в память ??? Для этого существует 'ленточная' сортировка - файл разбивается на блоки - каждый из которых сортируется в памяти и сохраняется во временном файле. Сохраняем максимальное значение для каждого блока, по которым выбираем блок с которого начинаем записывать в результирующий файл Каждое число из 'рабочего' блока сравниваем со списком максимальных, если больше - записываем в 'результат', если меньше - меняем рабочий блок Или в чем то другом проблема ??? -------------------- Cpu not found ! Press any key for software emulation. |
|||
|
||||
| Yanis |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2937 Регистрация: 9.2.2004 Где: Москва Репутация: 72 Всего: 111 |
2 Femida
А почему бы сразу не реализовать добавление числа перед самым большим числом в файле?
|
|||
|
||||
| vadims |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 8.6.2005 Репутация: нет Всего: 17 |
-------------------- Cpu not found ! Press any key for software emulation. |
|||
|
||||
| Yanis |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2937 Регистрация: 9.2.2004 Где: Москва Репутация: 72 Всего: 111 |
Просто с самого начала в файл записывать числа по порядку, т.е. по убыванию. Что непонятного? |
|||
|
||||
| Петрович |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 25 Всего: 55 |
Сказанно же что:
-------------------- Все знать невозможно, но хочется |
||||
|
|||||
| vadims |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 305 Регистрация: 8.6.2005 Репутация: нет Всего: 17 |
Петрович
ИМХО: В этом варианте только перезаписывать весь файл - иначе как еще ты после строк 4 356 879 всунешь строку 400 Тогда вообще проблемы не вижу - простая реализация руьинных опреаций -------------------- Cpu not found ! Press any key for software emulation. |
|||
|
||||
| Петрович |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1000 Регистрация: 2.12.2003 Где: Москва Репутация: 25 Всего: 55 |
Вот и я о том же -------------------- Все знать невозможно, но хочется |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Как говорится - утро вечера мудренее
Решил действовать так: записывать числа в Мемо, там сортировать, а потом это писать в файл. Это просто мысля стукнула - пошел реализовывать -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
постаивим вопрос по другому: КАК отсортировать? (пробовал через массив - нифига), как только не извращался
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: нет Всего: 454 |
Femida
Давай поставим вопрос так - а сколько их, этих твоих integer-ов, может быть по максимуму? И второй вопрос - чем оправдано требование что это ОДИН файл? Возможен вариант, скажем, сотни файлов, при слепливании которых в нужном порядке получится требуемый? -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| CosmoMan |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 110 Регистрация: 12.7.2005 Где: Харьков Репутация: 1 Всего: 0 |
Мало пробовал. Предлагаю уникальный алгоритм на Delphi с использованием массивов.
|
||||
|
|||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
||||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Это типа статистики, т.е. сыграл игру - записался результат. Добавлено @ 17:26 CosmoMan, сэнкс -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Chrisstoff |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 28.5.2005 Где: Hell... жудкое ме сто Репутация: нет Всего: 1 |
Нда пузырьковая сортирофка массива это должно быть круто или я ничего не понимаю в программировании
Ведь я так понимаю это самое количество элементоф заранее неизвестно и брать массиф "побольше на фсякий случай ... авось не переполнится" отнють не самый оптимальный вариант товарыщи ... Как вам идея использовать память динамически ... односвязный список ... попросту говоря
Зато под любое количество выделяй себе память для нового елемента да и добавляй в список однажды отсортированный в нужное место ... а потом фсё в файло слить еси надо ... |
|||
|
||||
| Quadr0 |
|
|||
|
Unregistered |
...
Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 00:39 |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |