На этом коротком уроке мы рассмотрим два способа оптимизации нашей программы, в результате которых работать она станет просто молниеносно!!!
Дата отправки отчёта:
31 августа 2015 г.
Задание выполнено: за
1 час. 15 мин.
Чему научился:
Оптимизации алгоритмов путем изменения структур данных. Узнал о System.Diagnostics.
Что было сложным:
Понять почему вылетал алгоритм с 4-х мерным массивом. (OutOfRange) Оказалось только он не принимает мои лабиринты без стен. Когда добавил стены все получилось.
Комментарии:
Урок маленький, да удаленький! Я в восторге от результатов оптимизации. Спасибо за эту наглядную демонстрацию! Мышка стала соображать быстрее ;) в 14тысяч раз
Научился: Теперь мне думается, что коллекции не так эффективны ..... как хотелось бы.
Хитрый получился массив :) Классно придумано :) Трудности: Понять, что наши координаты - это номера индексов у массива :)
Изначально думается: "Ну как булевский массив может хранить координаты?" )))) А вообще странно ... поиск по индексам, по идее, должен быть такой же моментальный, как и мы обращаемся к массиву напрямую....
Научился: Использовать 4-мерные массивы, он представляет собой перечень комбинаций положений мышки и яблока относительно друг друга (x, y),a
мы не перебираем все варианты (как было до этого со списком List и Dictionary)
При использовании Dictionary было 12000 мс. После применения массива время уменьшилось до 7-11 мс.