dict vs lists
Стало интересно, в какой момент имеет переходить с простых списков на dict.
Проверил.
Из за того, что timer:tc точнее 1 микросекунды не считает, пришлось
для каждого варианта считать время выполнения 100 одинаковых операций.
Каждая такая итерация делалась 100000 раз и бралось среднее.
dict:find: при любом размере время выполнения 50-70 микросекунд
(напоминаю, это на 100 подряд вызовах, т.е. один вызов — где-то 0,5 -
0,7).
lists:keyfind:
номер элемента — время (здесь тоже помним про 100 вызовов).
1 — 4
10 — 8
20 — 12
30 — 15
100 — 46
150 — 67
200 — 87
300 — 130
Вобщем, где-то начиная с 300 элементов в списке имеет смысл переходить
на dict (если, конечно, нам не нужен постоянно последний элемент).