时间复杂度设车! /设置CDR!在计划中

Time-complexity set-car! / set-cdr! in scheme

我想知道什么是时间复杂度集车!和设置CDR!在计划?我会认为这是恒定的时间,但我可能是错的,因为我不知道它们在内部是如何工作的。任何有想法的人?

在 Scheme 的任何合理实现中,由于 cons 如此普遍,它们被实现为某种双字结构。在这样的实现中,carcdrset-car!set-cdr! 都是恒定时间。

正如 Alexis King 评论的那样,您必须有一个非常反常的实现才能使其不是常数时间。 (例如,如果 cons 单元被实现为列表。)