|
1 / 1 / 1
Регистрация: 20.09.2014
Сообщений: 310
|
|||||||||||
Создание вектора или массива большой длины24.01.2018, 21:48. Показов 2246. Ответов 37
Метки нет (Все метки)
Ребят, помогите, пожалуйста выбрать правильный размер вектора, пытаюсь как-то так:
При таком значении вылетает
0
|
|||||||||||
| 24.01.2018, 21:48 | |
|
Ответы с готовыми решениями:
37
|
|
277 / 226 / 93
Регистрация: 27.06.2016
Сообщений: 639
|
||
| 26.01.2018, 20:08 | ||
|
Андей, скажите, какая у вас платформа, разрядность компилируемой программы.
Добавлено через 6 минут Андей,
0
|
||
|
1 / 1 / 1
Регистрация: 20.09.2014
Сообщений: 310
|
|
| 26.01.2018, 20:36 [ТС] | |
|
Мне нужен контейнер, где я могу хранить очень много значений. X86.
0
|
|
|
277 / 226 / 93
Регистрация: 27.06.2016
Сообщений: 639
|
|
| 26.01.2018, 20:47 | |
|
Андей, эм, а зачем вы сидите на x86, если у вас 8 гигов?
0
|
|
|
1 / 1 / 1
Регистрация: 20.09.2014
Сообщений: 310
|
|
| 26.01.2018, 21:01 [ТС] | |
|
Это так сильно влияет?)
0
|
|
|
277 / 226 / 93
Регистрация: 27.06.2016
Сообщений: 639
|
|
| 26.01.2018, 21:09 | |
|
Андей, ну, ваша система не может использовать больше 4гб. Плюс еще лимит на 2гб виртуальной памяти, вероятно объясняющий падение.
0
|
|
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|
| 26.01.2018, 21:20 | |
|
Андей, Если ваш алгоритм требует памяти на пределе возможности компьютера, есть несколько путей.
1. Пересмотреть алгоритм. 2. Если уверены, что ваш алгоритм никак не оптимизируется по памяти, используйте дисковую память. Все-таки ТераБайт немножко больше ГигаБайта. (подчеркиваю слово - немножко. Для задач экспотенциального типа 1000 - это и правда - ерунда) 3. Если предыдущие попытки решить задачу не к чему не привели, тут есть тоже варианты 3.1) Эта задача и впрямь сложна 3.2) Вы пока еще - никакой программист. Тут тоже есть варианты. 3.2.1) Учитесь 3.2.2) Бросьте это дело. Не ваше.
0
|
|
|
1 / 1 / 1
Регистрация: 20.09.2014
Сообщений: 310
|
|
| 26.01.2018, 21:23 [ТС] | |
|
Поменял на 64 бита, помогло). Вот просто какой контейнер лучше использовать для больших размеров? в динамическом массиве и векторе надо заранее указывать размер, а в map не надо. Значит map использует не по порядку куски памяти?
0
|
|
|
277 / 226 / 93
Регистрация: 27.06.2016
Сообщений: 639
|
|
| 26.01.2018, 21:26 | |
|
Андей, вы так и не пояснили, для чего вам ваш контейнер. Вектор тоже не требует размер указывать. У него есть методы push_back, insert, emplace_back и др, которые расширяет вектор если места на вставку нового элемента не хватает.
0
|
|
|
1 / 1 / 1
Регистрация: 20.09.2014
Сообщений: 310
|
|
| 26.01.2018, 21:47 [ТС] | |
|
Мне нужен для того, чтобы заполнить его разными значениями и потом в нем искать элемент
0
|
|
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|
| 26.01.2018, 21:51 | |
|
Андей, Все идет к тому, что кроме пункта 3.2.2 вам уже посоветовать нечего.
0
|
|
|
277 / 226 / 93
Регистрация: 27.06.2016
Сообщений: 639
|
|
| 26.01.2018, 22:04 | |
|
0
|
|
|
1 / 1 / 1
Регистрация: 20.09.2014
Сообщений: 310
|
|
| 26.01.2018, 22:06 [ТС] | |
|
большой длины, очень. А есть разница что заранее выделить память под контейнер или в процессе заполнения его увеличивать?
0
|
|
|
277 / 226 / 93
Регистрация: 27.06.2016
Сообщений: 639
|
|||
| 26.01.2018, 22:15 | |||
|
У вас в открывающем посту вы пишете "уже вылетает", ну ладно, на 190+ миллионов меньше сделаем (при этом оставив себе какие-то жалкие 21 миллиона)... Добавлено через 1 минуту Ну и отсюда следует, что в момент увеличения тратится как минимум в два раза больше памяти, чем необходимо (ибо присутствуют два массива в памяти одновременно)
0
|
|||
|
1 / 1 / 1
Регистрация: 20.09.2014
Сообщений: 310
|
|||
| 26.01.2018, 22:20 [ТС] | |||
|
Добавлено через 1 минуту
0
|
|||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|
| 26.01.2018, 22:40 | |
|
Не по теме: Вся беда моя в том, что в памяти моей застревает куча всякой ерунды. И вот такую историю мне она подложила. ![]() Добавлено через 5 минут Чтобы понятнее было широкой публике. скажу. Алгоритм ТС, которым он пытается решить свою задачу, явно - бредов. И в этом бреде никакие Мапы его не спасут. И обсуждать возможности хороших инструментов тут не имеет никакого смысла. Впрочем, если кому-то интересно на эту тему лясы поточить - какие могут быть возражения?
0
|
|
|
1 / 1 / 1
Регистрация: 20.09.2014
Сообщений: 310
|
|
| 26.01.2018, 22:46 [ТС] | |
|
не бредов, если конкретнее, то вот пытаюсь реализовать алгоритм:шаг младенца шаг великана
Там размер массива, где будем хранить элементы sqrt(n), где n-простое число. Оно может быть очень большое вплоть до 60-ти битное. Вот мне и надо, хорошенько разобраться с таким массивом.
1
|
|
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|||
| 26.01.2018, 23:55 | |||
|
Тогда остается самый интересный вариант Впрочем, если вас интересуют именно эти 2 секунды - ищете! Но, имхо, подобные задачи оперируют с вечностью... ![]() Добавлено через 13 минут Андей, меня тоже интересовали простые числа (как впрочем, и многих), но, конечно, не на таком уровне. Однако, мне удалось придумать небольшую упаковку эратосфенова решета. 1 байт на 30 чисел. Все там весьма простенько, и идея в том, что ровно 8 чисел в тридцатке смеют быть простыми. Опять же, по отношению к вечности - это слюни и сопли... ![]() Добавлено через 16 минут Андей, Если мои предыдущие замечания показались вам обидными, искренне прошу меня извинить. Но ведь то, что ваша задача принадлежит к классу 3.1, я узнал только из предыдущего вашего поста
0
|
|||
|
1 / 1 / 1
Регистрация: 20.09.2014
Сообщений: 310
|
|
| 27.01.2018, 09:24 [ТС] | |
|
0
|
|
| 27.01.2018, 09:24 | |
|
Инициализация глобального вектора мусором или создание общих данных Создание числового массива произвольной длины Создание массива чисел неизвестной длины Переменной R присвоить значение 1, если длина вектора А больше длины вектора В, и значение 0 в противном случае
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|