private Dictionary<string, double> GetDistributionOfStringsForCharReuse(OptChar c, Classification classification)
{
OptChar key = c;
Dictionary<string, double> distribution;
//if we have already generated a distribution for this character, return it
if (_char_distributions_dict.TryGetValue(key, out distribution))
{
return distribution;
}
//otherwise generate the distribution and then return it
else
{
distribution = GenerateDistributionForChar(key, classification);
//If our dictionary does not have any information about this character, we return the character with probability 1.0
if (distribution.Count == 0)
{
distribution.Add("" + c.Value, 1.0);
}
_char_distributions_dict.Add(key, distribution);
return distribution;
}
}