编程语言
首页 > 编程语言> > 在c#中表示此查找表的最佳方法

在c#中表示此查找表的最佳方法

作者:互联网

我需要在C#中表示一个查找表,这里是基本结构:

Name    Range   Multiplier

Active  10-20   0.5

你们有什么建议?

我需要查找范围并检索乘数.
我还需要使用名称进行查找.

更新
它总共可能有10-15行.
范围是整数日期类型.

解决方法:

你实际拥有的是两个查找表:一个是Name,另一个是Range.有几种方法可以在内存中表示这些,具体取决于表的大小.

“按名称”查找最有可能适合的是字典:

var MultiplierByName = new Dictionary<string, double>() { {"Active",.5}, {"Other", 1.0} };

范围比较棘手.为此,您可能只想存储最小或最大项目,具体取决于您的范围的工作方式.您可能还需要编写一个函数来将任何给定的整数减少到相应的存储键值(提示:使用整数除法或mod运算符).

从那里你可以选择另一个字典(Dictionary< int,double>),或者如果它正确,你可以使你的reduce函数返回一个顺序int并使用List< double>这样你的’钥匙’就成了一个索引.

但就像我说的那样:要确定我们真正需要了解查找中数据的范围和性质以及您将用于访问它的方案.

标签:c,lookup-tables
来源: https://codeday.me/bug/20190722/1499484.html