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

Формула программиста
основатель — Волосатов Евгений Витольдович

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

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


Отчёт от 4467 за Коллекция графов / Hashtable




Оцени работу

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

4467. Alcatraz
Alcatraz
ответить

1. Евгений Витольдович
Евгений Витольдович
ответить
→  Alcatraz  # Коллекция графов / Hashtable / 2016-04-15 11:53

Попробуй ещё с 8 элементами, это очень важно.


  • Отчёт оценивали:
    9286Petuško Julija+1   1Евгений Витольдович+1   7276Ильшат+1   9263Андрей Н.+1   6458Илья+1   9369Tautavičiūtė Anastasija+1   9541Сергей Валерич0   6452Lik_Kirill+1   4395Денис+1   9285Bogdaškaitė Erika+1   8380zhikharevav+1   9288Pučko Antonina+1   459Сергей Сергеевич+1   8886Михаил Ермишин+1   9332Dima+1   9567Максим+1   3506Алексей|BrisK|Кривицкий+1   4992Николай+1   7652Петя+1   689Igorenzia+1   6861Denchik+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Узнал про HibrydDictionary. И понял как работает HashTable и для чего он нужен
Трудности: ---------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------
Научился: Научился работать со словарями ListDictionary, HashTable и HybrideDictionary
Трудности: Самым сложным сделать тест. Я сначала не понял задание - я создавал массив коллекций и в каждый элемент добавлял по 10 элементов - понятное дело на 100 млн записях у вылетело с exception Out of memory. Потом я начал создавать словарь и добавлять по 10 элементов и так 100 млн раз - в результате получилось.
У меня очень долго работал тест добавления 100 млн записей - пришлось сначала сократить до 10 млн, потом до 100 000 записей и то со скрина видно, что очень долго добавляются записи и примерно одинаковое время работает. А в первом случае намного быстрее - 100 млн раз по 10 записей.