Форум программистов, компьютерный форум, киберфорум
HCL Notes: Программирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/101: Рейтинг темы: голосов - 101, средняя оценка - 4.78
Kortosss

Как обойти ограничение на кол-во элементов в массиве?

18.07.2010, 13:07. Показов 18835. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Тема про массивы. Идея такая. Есть некие текстовые файлы некой системы , которые я разбираю построково. В каждой строке есть запись, которая может повторяться в других строках. Задача. Надо посчитать уникальное кол-во таких записей в этих строках. То есть такая запись может повторится во всех строках 10,20.. и т.д. раз, но мы считаем как 1 раз.
Сделал через массивы. Но в массиве есть ограничение на кол-во элементов 32000.
Помогите обойти это ограничение. Спасибо.

Dim x() As String
Dim xx As Long
--------------------
Redym Preserve x(xx)
x(xx)=mm – добавляем в массив след. Элемент- запись из строки
xx=xx+1 - счетчик поднимаем на +1
-------------------
resultArr = Arrayunique(x,0) - массив уникальных значений
oo=Ubound(resultArr) - показывает уникальное кол-во записей в массиве.
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.07.2010, 13:07
Ответы с готовыми решениями:

Как обойти ограничение в WinXP на кол. подключений к VPN-сервер?
Известно что развернутый на WinXP VPN-сервер принимает подключение только одного пользователя. Второго пользователя он уже не принимает. ...

Как узнать кол-во заполненных элементов в массиве, чья длина больше чем кол-во?
#include <iostream> using namespace std; int main() { char N; cin >> N; system("pause"); } Вот код, нужно вывести...

Как обойти ограничение провайдера?
Здравствуйте. Я живу в студенческом общежитии, в котором интернет провайдер заблокировал все порты, кроме 22 (SSH). Соответственно, я не...

12
1 / 1 / 0
Регистрация: 04.08.2006
Сообщений: 2,950
18.07.2010, 13:16
List заюзайте
0
0 / 0 / 0
Регистрация: 04.11.2007
Сообщений: 3,019
18.07.2010, 13:26
List заюзайте
+1
0
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
18.07.2010, 13:33
1) не 32000, если мне память не изменяет, а в пределах integer: -32768 ... 32767 (включительно)
2) можно использовать массивы многомерные, например, массив одномерный 65535 элементов, то двумерный 65535*65535 = 4294836225 элементов


LotusScript
1
2
3
4
5
6
7
    -32768 :   -32768 ... 32767
-32767 :   -32768 ... 32767
...
0       :   -32768 ... 32767
...
32766  :   -32768 ... 32767
32767  :   -32768 ... 32767
0
Kortosss
18.07.2010, 13:40
Цитата Сообщение от Akupaka
1) не 32000, если мне память не изменяет, а в пределах integer: -32768 ... 32767 (включительно)
2) можно использовать массивы многомерные, например, массив одномерный 65535 элементов, то двумерный 65535*65535 = 4294836225 элементов


LotusScript
1
2
3
4
5
6
7
    -32768 :   -32768 ... 32767
-32767 :   -32768 ... 32767
...
0       :   -32768 ... 32767
...
32766  :   -32768 ... 32767
32767  :   -32768 ... 32767
1) Согласен, я просто не стал точно писать.
2) Думал об этом , но практически не знаю как это реализовать и потом не знаю так же как найти в двумерном (например) массиве кол-во уникальных элементов.

Щас покурю функцию list , может что и выйдет
0 / 0 / 0
Регистрация: 12.01.2009
Сообщений: 246
18.07.2010, 13:44
Проверяй на IsElement
0
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
18.07.2010, 14:10
Цитата Сообщение от Karlosss
Щас покурю функцию list
Это не функция, а структурный тип данных.



Цитата Сообщение от Karlosss
Думал об этом , но практически не знаю как это реализовать и потом не знаю так же как найти в двумерном (например) массиве кол-во уникальных элементов
Да не особо сложнее, можно свой класс нарисовать, который позволит работать с таким массивом, как с одномерным, с размерностью в Long.
0
0 / 0 / 0
Регистрация: 04.08.2008
Сообщений: 408
18.07.2010, 14:14
а зачем оно в лотусях делается?
0
Kortosss
18.07.2010, 15:03
Цитата Сообщение от xalet
:offtop: а зачем оно в лотусях делается?
Дык база то в лотусе писана

Добавлено:


Цитата Сообщение от Akupaka
Это не функция, а структурный тип данных.


Да не особо сложнее, можно свой класс нарисовать, который позволит работать с таким массивом, как с одномерным, с размерностью в Long.


Если бы я мог рисовать классы в лотусе я бы такие глупые вопросы на форуме не писал
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
18.07.2010, 15:04
Цитата Сообщение от Karlosss
Если бы я мог рисовать классы
А что мешает? )) Учись, пригодится.
0
Kortosss
18.07.2010, 15:15
а я что? учусь вот...
не все сразу
Tyo
18.07.2010, 18:15
При большом объёме анализируемых данных ни List, ни массив, ни какой другой способ, запоминающий в памяти почти всё содержимое файлов не годится. Гораздо надёжнее работать непосредственно с файлом. Например так. Через первый файловый указатель считываем очередную строку. Вторым указателем проходим от начала файла до текущей позиции первого в поисках дубля. Как только нашли, поиск прерываем и счётчик не увеличиваем. Если не нашли, значит строка встретилась впервые счётчик увеличиваем.

Так мы сможем обработать любой по объёму файл. Количество проходов по файлу конечно увеличивается многократно, но не факт что будет медленнее, т.к. система не уйдёт в своп.
0 / 0 / 0
Регистрация: 23.08.2008
Сообщений: 6,252
18.07.2010, 21:04
для "упрощения" есть класс http://www.java-examples.com/java-pushback...tstream-example
позволяет читать и "откатывать" позицию в файле
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.07.2010, 21:04
Помогаю со студенческими работами здесь

Как обойти ограничение ШИМ?
Задача состоит в следующем. Нужен сигнал на подобии ШИМ. С возможностью изменения частоты и ширины импульса. Но при этом частоту нужно...

Как обойти ограничение переменных
Добрый день. С помощью поиска решений на основе симплекс-метода решаю транспортную задачу Максимальное количество переменных должно не...

Как обойти ограничение таймера?
Здравствуйте! Встал вопрос о том, как обойти ограничение таймера (1000*60). Пользователь вводит 2 значания: кол-во минут и кол-во секунд....

Ограничение на кол-во элементов в форме ?!
Собираю форму в конструкторе, форма большая много элементов как вдруг, после попытки добавить очередной TextBox получаю сообщение от VB,...

Как обойти ограничение размера P O S T запросов?
Требуется отправить большей объем данных на сервер методом POST через ajax. Но массив приходит не в полном объеме. Я поначалу грешил на...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru