Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
1-2-3 мая - Создай online игру!

Коллекция графов / Hashtable

  • На этом уроке мы поработаем с Hashtable - каким именно
    образом в неё складываются значения и почему она будет
    работать, даже если хеш-функция вернёт одинаковые значения.
    Также мы увидим, что порядок элементов путается,
    а сами значения хранятся в очень хитром виде.
    В конце урока мы сделаем всё то же самое с гибридным классом.
    Самостоятельное задание: сравнить скорость работы этих коллекций.
    1 этап: создать МНОГО коллекций по 8 и по 9 элементов (ОТДЕЛЬНО).
    2 этап: создать ОДНУ коллекцию из ОГРОМНОГО количества элементов.
    Подвести итоги и в отчёте написать вывод.
  • Дата отправки отчёта: 8 октября 2016 г.
  • Задание выполнено: за 30 мин.
  • Чему научился: ListDictionary рекомендуется для коллекций не более 10 элементов
    Hashtable коллекция упорядоченная по хэш коду, рекомендуется использовать для быстрого поиска
    HybridDictionary до небольшого кол-ва элементов это ListDictionary, после прохождения контрольной точки (по умолчанию 8) , работает как HashTable
  • Что было сложным: не было
  • Комментарии: по добавлению элементов самый медленный ListDictionary,
    Hashtable c HybridDictionary примерно одинаково, но Hashtable немного-немного медленнее
    (пробовал при кол-ве элементов 60 000)
  • Оценка видео-уроку:
Отчёт от 8959 за Коллекция графов / Hashtable




Оцени работу

 
Сохранить страницу:

10494. Алексей В.
Алексей В.
ответить
→  Максим Саратов  # Коллекция графов / Hashtable / 2016-10-09 11:07

Отлично Максим!!!



Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: HybridDictionary - WIN!!! Я думал что ListDictionary будет быстрей, но оказалось что HybridDictionary лучше :)
Трудности: С размещением в Hashtable и HybridDictionary элементов в будущем разберу, сейчас главное суть понять.

Научился: Ознакомился со словарями. Выполнил все задания.
Для тестирования я выбрал коллекцию HybridDictionary, в 1 варианте создается массив из 1 000 000 HybridDictionary по 9 элементов в каждом, во 2 варианте создается один HybridDictionary с 9 000 000 элементами. Результаты тестирования, которые вы можете видеть на скриншоте показывают, что лучше использовать второй вариант (один экземпляр коллекции с множеством элементов), при этом время создания во 2м случаем примерно на 40-50% меньше. Соответственно 2й вариант работает быстрее.