B2.4.1 · 效率与内存

辅助空间

Python · 逐步执行

辅助空间

比较持续累加的总和与不断增长的输入副本。

选择“播放”或“下一行”,跟踪 Python 的执行过程。

Python 实现

高亮表示下一条将执行的语句。数值显示执行该行之前的状态。

def auxiliary_space(items, copy_input):    total = 0    working = []    for value in items:        total = total + value        if copy_input:            working.append(value)    return total

给定列表占用的是输入空间。在课堂模型中,total 和 value 占用固定数量的存储位置,而副本会增长到 n 个元素。不创建副本时,辅助空间为 O(1);创建副本时为 O(n)。两种遍历的时间复杂度均为 O(n)。

继续探索

返回算法效率课程 →

所有 B2.4 动画 →

所有练习与资源 →