Алгоритми та структури даних · Senior · Запитання 53 з 75
Рекурсивне рішення коректне, але не вкладається в час через повторні підзадачі з трьома параметрами. Яке звичне перше виправлення?
- ✓Правильна відповідь: Мемоізувати кожен кортеж параметрів, наприклад у
Map - 2Переписати на швидшій компільованій мові
- 3Збільшити ліміт рекурсії рушія JS
Пояснення
Коли кожен стан кешовано, кількість різних станів обмежує роботу. У JavaScript підійде ключ на кшталт ${i},${j},${k} або 3D-масив. Далі варто розглянути порядок знизу вгору, щоб уникнути глибокої рекурсії.