标签: scheme time-complexity sicp
我想知道什么是时间复杂度集合车!和set-cdr!有计划吗?我认为这是不变的时间,但我可能错了,因为我不知道它们是如何在内部工作的。谁有想法?
答案 0 :(得分:2)
在任何合理的Scheme实现中,由于conses是如此常见,它们被实现为某种双字结构。在此类实施中,car,cdr,set-car!和set-cdr!都是常量时间。
car
cdr
set-car!
set-cdr!
正如Alexis King评论的那样,你必须有一个非常不正常的实现,因为它不是恒定的时间。 (例如,如果将cons细胞实施为alists。)