Отслеживание посещенных состояний в поиске в ширину

Поэтому я пытался реализовать BFS для головоломки Sliding Blocks (тип числа). Теперь главное, что я заметил: если у вас есть 4*4доска, количество состояний может быть таким большим, что 16!я не могу заранее перечислить все состояния. Итак, мой вопрос: как я могу отслеживать уже посещенные...