Russian Qt Forum
Ноябрь 23, 2024, 11:30 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Сортировка файлов.  (Прочитано 4239 раз)
jurtal
Гость
« : Сентябрь 11, 2012, 09:55 »

Всем привет!
Есть задача - 10 хранилищ файлов ограниченного и заданного размера. И допустим 100 файлов известного размера. Суммарный объем хранилищ равен суммарному объему файлов. Вопрос в том какой алгоритм можно применить для сортировки файлов по папкам?
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #1 : Сентябрь 11, 2012, 11:02 »

Если в одном хранилище целое число файлов, то остаются "хвостики", поэтому суммарный объем хранилищ должен быть больше, а не равен. Также "сортировка" предполагает ключ/условие, напр по "по дате". Наверное Вы хотели сказать - как разместить файлы чтобы все они вписались в хранилища (что-то типа "задачи о ранце")

В общем - изложите более внятно

 
Записан
jurtal
Гость
« Ответ #2 : Сентябрь 11, 2012, 11:04 »

Да - совершенно верно - размер хранилища чуть больше. И файлы надо просто туда поместить...
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #3 : Сентябрь 11, 2012, 12:18 »

Тогда Ваш вопрос никакая не сортировка, и место ему в разделе "Алгоритмы", а не в "пользовательский интерфейс"  Улыбающийся Ладно, будем надеяться модератор перенесет.

Более того, я так вижу Вы спрашиваете о вещи которая может и не имеет точного решения (см напр Вику "Задача об упаковке в контейнеры"). Если не подымать фундаментальную теорию, я предлагаю сделать так:

- сортируем все файлы и берем файл за файлом от начиная с самого большого к самому малому.
- пытаемся положить файл в первый контейнер. Влез - хорошо, берем след файл. Не влез - пробуем следующее хранилище. Никуда не влазит - ошибка, поместить невозможно.

Это конечно "не оптимально", и в каких-то случаях мы получим отказ хотя решение существует. Зато это пишется ха полчаса и в 95% случаях будет нормально работать.
Записан
jurtal
Гость
« Ответ #4 : Сентябрь 11, 2012, 13:07 »

Да - видимо с пользовательским интерфейсом погорячился. Ключевое слово про упаковку рюкзака помогло - спасибо, нашел где поискать как это решается - действительно очень быстро если не усложнять...
Записан
jurtal
Гость
« Ответ #5 : Сентябрь 13, 2012, 14:24 »

Это конечно "не оптимально", и в каких-то случаях мы получим отказ хотя решение существует. Зато это пишется ха полчаса и в 95% случаях будет нормально работать.

Надо мне добавить возможность еще и "оптимального решения"... Допустим есть два контейнера размером 12 и 10 и помещаемые элементы размером 6,6,7 и 3. Хочу рассмотреть возможность простого перебора всех возможных варианов размещения. Как для такого простого примера составить возможные состояния?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.078 секунд. Запросов: 23.