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

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

Страниц: 1 2 [3]   Вниз
  Печать  
Автор Тема: Дубликаты файлов  (Прочитано 21704 раз)
spectre71
Гость
« Ответ #30 : Сентябрь 10, 2009, 09:49 »

Вот мой вариант (примерно 300 строк). Вполне возможно где-то наврал + нужно добавить индикатор (progress bar).
http://www.2shared.com/file/7661840/6595e4cd/filedupcpp.html(не смог приаттачить здесь).
Если есть желание - делайте Ваш вариант и сравним. А то слово за слово - только людей утомляем  Улыбающийся

Edit: так и есть, наврал Улыбающийся В CloseFile нужно добавить mFile->close()

Edit2: Отрихтовал, убрал пару баговhttp://www.2shared.com/file/7672990/fe2c76e9/filedup_fixcpp.html
Имеем 2 разных файла - 250bytes и 37.6KB
1) 2*2500 =  5000 файлов - 8 секунд
2) 2*5000 = 10000 файлов - 38 секунд
3) 2*10000 = 20000 файлов - 228 секунд

Имеем зависимость С1*O(n*n) + С2*O(n*log(n))  вместо С1*O(n) + С2*O(n*log(n)), где C1 - для чтения файлов, а C2 - для сортировок списков, C2 в типичном случае много меньше C1.

Записан
Страниц: 1 2 [3]   Вверх
  Печать  
 
Перейти в:  


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