Снижение карты в этом случае имеет сложность O(n^2)
?
Невозможно сказать, если вы не скажете нам, что n
соответствует выражению list-of-list-3
.
Кстати, O(n^2)
или O(n*n)
- это квадратичная сложность, а не экспоненциальная сложность.Экспоненциальная сложность это O(e^n)
.
, когда я [удваиваю] входной размер
( list-of-list-6 (list (list 1 2 3) (list 4 5 6) ( list 7 8 9)
(list 8 2 3) (list 9 8 1) (list 7 6 4)) )
время увеличивается линейно, а не экспоненциально.
Исходя из этого, я предполагаю, что n
должно быть длиной внешнего списка.Если так, то reduce
на самом деле O(n)
, а не O(n^2)
.Чтобы получить квадратичный рост, вам нужно определить list-of-list-6
как:
( list-of-list-6 (list (list 1 2 3 4 5 6) (list 4 5 6 1 3 2)
(list 7 8 9 1 2 3) (list 8 2 3 2 3 4)
(list 9 8 1 2 3 4) (list 7 6 4 5 6 7)) )