【发布时间】:2015-09-29 17:57:44
【问题描述】:
我正在尝试做的是将内置于字典中的测试数据集与也内置于字典中的学习数据集进行比较。我尝试了多种方法,要么在所有检查中得到 0,要么得到不可能的答案(我认为它对所有 int 测试集都计数),而不是看起来应该做的事情,哪个(所以我一直在思考)在训练集中的每个键/值对之后重置计数。
这是执行此操作的代码示例。帮忙?
public static void theTestingAlgorithm()
{
foreach (var testrecipe in Testing.sortedTestingData)
{
Dictionary<string, int> runningNumbers = new Dictionary<string, int>();
foreach(var learningRecipe in MakeData.SortedData)
{
runningNumbers.Add(learningRecipe.Key, 0);
}
foreach(var testIngredient in testrecipe.Value)
{
foreach(var learningRecipe in MakeData.SortedData)
{
if (learningRecipe.Value.Contains<string>(testIngredient))
{
runningNumbers[learningRecipe.Key]++;
}
}
}
string answer = evaluatetest(runningNumbers);
runningNumbers.Clear();
Answers.Add(testrecipe.Key, answer);
}
}
【问题讨论】:
-
比较两组是什么意思?您想要不在两个集合中的值,或者在集合 A 但不在集合 B 中的值,反之亦然?你能解释一下(用例子)这两个集合的输入数据和预期的输出吗?
-
我想要做的是计算一个测试食谱中有多少项目也存在于一个学习食谱中。然后注意到这一点,然后继续下一个学习秘诀。针对每个 learningRecipe 评估每个 testrecipe。例如:测试食谱有(在列表中)“奶酪”“土豆”“鸡蛋”学习食谱一有“鸡蛋”“苹果”“白面粉”学习食谱二有“香草”“香蕉”“米饭”“牛奶”预期的输出将是字典
,
标签: c# dictionary compare