Существуют ли самый оптимальный способ
Не бывает оптимальных способов вообще.
Бывают оптимальные для конкретной ситуации.
Вам один раз надо сделать или постоянно искать, будет ли увеличиваться словарь со временем, насколько жесткие ограничения по памяти, как быстро нужно выполнять поиск, что в приоритете скорость или ресурсы?