Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Коллекции объектов Добавлено: 07.10.04 16:00  

Автор вопроса:  Barulya
Подскажите пожалуйста какие из коллекций наиболее оптимальны при работе с большим колличеством объектов?

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
  Артём Л.



ICQ: 280044491 

Вопросов: 43
Ответов: 227
 Профиль | | #1 Добавлено: 07.10.04 16:37
HashTable


Ответить

Номер ответа: 2
Автор ответа:
 Barulya



Вопросов: 29
Ответов: 55
 Профиль | | #2 Добавлено: 07.10.04 17:02
По скорости обработки???

Ответить

Номер ответа: 3
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #3
Добавлено: 08.10.04 08:38
Пожалуйста, конкретнее поясните задачу.
Если к объектам необходимо обращаться по ключу, то лучший выбор -
HashTable.
Если же по индексу, то вместо коллекций разумнее использовать массивы:
они на порядок быстрее работают, и отнимают меньше места в оперативной
памяти (подробнее смотрите в моей статье "Массивы и коллекции в
.NET").

Ответить

Номер ответа: 4
Автор ответа:
 Barulya



Вопросов: 29
Ответов: 55
 Профиль | | #4 Добавлено: 08.10.04 11:19
У меня следующая задача: я заполняю в TreeView структуру административно-территориальных образований: страна, область (штат, регион), населенный пункт (город, село, поселок). Последние подразделяются на районные центры и просто населенные пункты (классификация осуществляется по почтовому индексу). Страны, области и населенные пункты хранятся в соответствующих таблицах базы данных, привязаны по ключевым полям. Сначаля я все населенные пункты заполняю простым списком в алфавитном порядке. Потом начинаю группировать по почтовому индексу, т.е. просматриваю все населенные пункты (ноды), если их индекс соответствует цифровому набору районного центра оставляю, если нет- копирую в коллекцию и так до последнего. Потом просматриваю все элементы коллекции (населенные пункты- ноды) и ищу соответствие в основной ноде (область) индекса районного центра, если подходит- добаляю в районный центр населенный пункт.
В качестве структуры использую свой класс унаследованный от TreeView, страны, области и населенные пункты классы унаследованные от TreeNode, в которые добавлены определенные свойство (как-то индексы, параметры индексации населенные пунктов и т.д.). Так вот на примере Украины (содержит 27 регионов и 15223 населенных пунктов) загрузка данного компонента требует очень больших временных затрат и ресурсов машины. Для временного содержания населенных пунктов (не районных центров) я использую обычную коллекцию, использую обычные циклы For each ... in .. Next. Группировку населенных пунктов выполняю для каждой области отдельно. Если у кого-нибудь есть мнение на этот счет, то предложите как можно поступить чтобы ускорить работу приложения. Заране спасибо.

Ответить

Номер ответа: 5
Автор ответа:
 ШевТ



ICQ: 165728420 

Вопросов: 1
Ответов: 96
 Профиль | | #5 Добавлено: 08.10.04 23:39
ArrayList

Ответить

Номер ответа: 6
Автор ответа:
 Barulya



Вопросов: 29
Ответов: 55
 Профиль | | #6 Добавлено: 09.10.04 13:10
Мда, попробовал использовать массивы- скорость увеличилась на несколько порядков. Спасибо за внимание..

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам