Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 18.08.2016
Сообщений: 6

Поиск максимального элемента в файле

20.09.2017, 14:11. Показов 3028. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времеи суток. Не подскажие, как осуществить поиск максимального элемета из записаных в файл. В файле 5 столбиков чисел типа double, нужно найти наибольший в четвертом (и только в нем). Я бы записал числа в массив, но проблема в том, что объем файла 10ГБ, а именно, в каждом столбике по миллиарду чисел (10^9), но файл может быть и больше. У меня всего оперативной памяти 2ГБ, так что за раз все не обработать, разве что перебором по одому числу, но это сильно не эффективно по времени.
Буду призателен, если будут примеры на C или C++ или ссылки на методы оптимального поиска.
И попутно - можно ли считать сразу четвертое число из файла, чтобы не перебирать их все?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.09.2017, 14:11
Ответы с готовыми решениями:

Поиск максимального числа в текстовом файле
Всем привет! Нужна помощь по поиску максимального числа в тестовом файле. Искал в нете и ничего путного не нашел или того-что мне...

Поиск максимального элемента
Нужна сделать поиск максимального элемента массива путем деления пополам не через рекурсию, а через цикл. #include <stdio.h> ...

Поиск максимального элемента массива
Задание из ОГЭ , требуется написать, какое число выведет программа. Почему выводит 41 а не 20, ведь 20 не больше 20, по идее цикл должен...

4
 Аватар для COKPOWEHEU
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,921
20.09.2017, 16:08
Если скорость доступа настолько критична, можно использовать отображение файла на память (memory mapping, команда mmap() ).
Если ширина столбиков фиксирована и известна (я бы не стал на такое полагаться), вместо этого можно использовать fseek().
0
 Аватар для worldown
189 / 177 / 111
Регистрация: 22.06.2009
Сообщений: 533
20.09.2017, 19:56
Цитата Сообщение от JonyCage Посмотреть сообщение
Доброго времеи суток. Не подскажие, как осуществить поиск максимального элемета из записаных в файл. В файле 5 столбиков чисел типа double, нужно найти наибольший в четвертом (и только в нем).
то ли я тормоз то ли лыжи ни едут.. Как это "столбики" эксель ???

прикрепите маленький пример файла..


А так, я бы разбил все по небольшим порциям, потом из каждой порции взял бы максимальное значения, которые заного превратил в порции, и так до конца..
0
0 / 0 / 0
Регистрация: 18.08.2016
Сообщений: 6
20.09.2017, 21:16  [ТС]
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
можно использовать отображение файла на память (memory mapping, команда mmap() ).
Спасибо, почтаю подробней, может поможет.
Цитата Сообщение от worldown Посмотреть сообщение
прикрепите маленький пример файла..
Вот пример на 5 чисел. То, что в четвертом максимальным является именно последний - случайно.
Вложения
Тип файла: txt example.txt (535 байт, 14 просмотров)
0
 Аватар для worldown
189 / 177 / 111
Регистрация: 22.06.2009
Сообщений: 533
20.09.2017, 22:32
JonyCage, Т.е в таком формате будут данные идти, верно??
В таком случае можно
Создаем две переменные
double current = 0
double max = 0
1) считываем строку начиная с 66 позиции по 117
2) заносим данные в переменную current
3) сравниваем if(current>max) max = current;
4) переносим коретку на новую строку,
5) начинаем с пункта 1)

В конце концов получим max, как результат максимального значения..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.09.2017, 22:32
Помогаю со студенческими работами здесь

Поиск максимального элемента по модулю
Дана целочисленная прямоугольная матрица А. Составить новую матрицу В из тех строк матрицы А, первым элементом в которых является...

Поиск максимального элемента массива
Всем вечер добрый Вот моя ситуация: дано два одномерных массива А и Б допустим как мне найти максимальный G если G=a*a+b*b как...

Поиск максимального элемента вектора
Написала программу поиска максимального элемента вектора, только теперь её надо переделать немного с использованием указателей... ...

Поиск максимального элемента дерева
Добрый день! Помогите пожалуйста реализовать поиск максимального элемента в дереве.

Осуществить поиск индекса максимального элемента
Нужно найти индекс макс. эл-та. Ошибку я нашел, а вот как ее исправить - не знаю. #include <iostream> #include <string> ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
[В процессе разработки] SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru