Я узнал, что пространственная сложность быстрой сортировки без трюка Седжвика по устранению хвостовой рекурсии составляет O (n). Но если мы отследим вызовы в стеке, которые сохранены, это будет O(log n) шагов для любого вызова, как показано на рисунке.
На рисунке
при вычислении значения (1,1) мы сохраняем вызовы [(1,8), (1,4), (1,2)] ,
при вычислении значения (3,3) мы сохраняем вызовы [(1,8), (1,4), (3,4)] и т.д.
которые составляют только O (log n) пространства в муравьиный момент времени. Тогда становится ли сложность O(n) ?