函数 f(x,y)=z,使用蛮力我在搜索空间内拥有所有可能的 X 和 Y 值以及相应的 Z 值(20K 记录)。
我需要检索 X、Y(参数)以获得最大 Z(产量)(X、Y、Z 预先计算):“选择 X、Y,其中 Z 为最大值”
从(1 性能 2 简单性)的角度来看(无数据库),这将是最好的方法:
- 数组列表
- 多维词典
- 自定义类型的列表/数组
- 桌子
- 别的东西?
函数 f(x,y)=z,使用蛮力我在搜索空间内拥有所有可能的 X 和 Y 值以及相应的 Z 值(20K 记录)。
我需要检索 X、Y(参数)以获得最大 Z(产量)(X、Y、Z 预先计算):“选择 X、Y,其中 Z 为最大值”
从(1 性能 2 简单性)的角度来看(无数据库),这将是最好的方法:
我建议您澄清您的问题。只有在预先计算了值的情况下,您才应该谈论搜索,在这种情况下,函数 f 在您的决定中不起作用。否则,如果没有预先计算值,那么您不是在谈论搜索,而是在谈论函数 f 的逆。
无论如何,如果您谈论的是存储在特定数据结构中的预先计算的值,我会建议某种排序的集合类型。我想http://msdn.microsoft.com/en-us/library/5z658b67%28v=vs.110%29.aspx可以为您提供一些有用的信息。
希望我有所帮助!