gpt4 book ai didi

c# - 在内存中存储大量股票数据的最佳方式(变量)

转载 作者:行者123 更新时间:2023-11-30 17:13:47 24 4
gpt4 key购买 nike

我正在尝试将大量股票市场报价数据存储到一个变量中,以便在内存中进行查询。我需要能够快速找出股票 ID 的最新市场数据,并查询特定股票的特定历史长度。

例如,我可能每隔几秒收到一次关于股票 ID 5342(总是数字)的数据……我最初的想法是构建一个 SortedDictionary 数组,其中 SortedDictionary 键是报价的日期时间,其值为我自定义的市场数据结构。然后外部数组将是股票 ID...所以我可以调用:

RecentPrice = PriceData[StockID].Values.Last();

或者我可以通过该股票的 SortedDictionary 向后迭代,直到我点击一个早于我正在寻找的时间范围的键。

但是我觉得必须有更好(更有效)的方法。有什么想法吗?

编辑: 代替 SortedDictionaries 的数组... SortedDictionaries 的字典可能更好。例如:

public static Dictionary<int, SortedDictionary<DateTime, StockData>> PriceData = 
new Dictionary<int, SortedDictionary<DateTime, StockData>>();

然后:

RecentPrice = PriceData[StockID].Values.Last();

谢谢!

最佳答案

一般而言,字典和哈希表适用于精确匹配。但是当你想要“第一个日期/时间不早于 X”时,排序列表的性能最好,因为查找是二分查找。特别是因为您只是附加数据,而不是插入数据。

关于c# - 在内存中存储大量股票数据的最佳方式(变量),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9475179/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com