我想使用 System.Collections.Generic.Queue,但有一个区别:我希望 Queue.Peek 返回放入的最后一项而不是第一项。我仍然希望项目以相同的方式进入和退出。
我正在考虑使用 Queue.Last() 作为 Queue.Peek() 的替代品(我认为它与 Queue.First() 基本相同)但我想知道这是否意味着枚举器将逐字地枚举整个在到达最后一个元素之前排队。由于我的队列将非常大,这可能是一个问题。
编辑:
透视我正在尝试做的事情:假设我想逐分钟保存过去 20 年的股票价格数据库。这将是许多数据点。为了做到这一点,我想每分钟将最新价格排入队列,并在队列大小超过 20 年时将最早价格出列。但是,我还想要一种方便的方法来从队列中获取最新价格。我知道 Queue.Last(),它可以解决问题,但我只想知道它是否会非常低效。