情况:模拟环境中有几个实体,它们有一个人为的时间概念,称为“滴答声”,与实时没有联系。每个实体轮流移动,但有些比其他实体更快。这以延迟表示,以滴答为单位。所以实体 A 可能有 10 的延迟,而 B 可能有 25 的延迟。在这种情况下,轮流顺序将变为:
AABAA
我想知道使用什么数据结构。起初我自动想到“优先队列”,但延迟与“当前时间”相关,这使事情变得复杂。此外,会有更大延迟的实体,并且程序将运行数百万个滴答并不是不可预见的。当延迟本身保持相对较小且不增加时,内部计数器越来越高似乎很愚蠢。
那么你将如何解决这个问题?