我正在寻找加速合并两个SortedLists
.
C# 4.0 通用SortedList
: http: //msdn.microsoft.com/en-us/library/ms132319 (v=vs.100).aspx
public Trait getTrait(decimal thisValue)
{
if (ParentStructure != null && ParentStructure.RankedTraits.Count > 0)
{
SortedList<decimal, Trait> tempTraits = this.RankedTraits;
// Improve here (union?)
foreach (KeyValuePair<decimal, Trait> kvp in (ParentStructure.RankedTraits))
{
if (!tempTraits.ContainsKey(kvp.Key))
{
tempTraits.Add(kvp.Key, kvp.Value);
}
}
return _getTrait(tempTraits, thisValue);
}
}
return _getTrait(_rankTraits, thisValue);
}
我认为联合而不是foreach
循环会更快,但我不知道如何在SortedList
. 如果有人可以帮助我解决这个问题,我将不胜感激。
此外,如果总体上有更好的方法,我愿意接受建议。