Exemplo n.º 1
0
 public WordMapping(string word)
 {
     _letters = new LetterMapping[word.Length];
     for (int i = 0; i < _letters.Length; i++)
     {
         _letters[i] = new LetterMapping(word[i], 0);
     }
 }
Exemplo n.º 2
0
        internal WordMapping[] GetNexts(KeyValuePair <string, double>[][] distribution)
        {
            var list = new List <WordMapping>();

            for (int i = 0; i < _letters.Length; i++)
            {
                if (_letters[i].HaveNext(distribution[i].Length))
                {
                    var newLetters = new LetterMapping[_letters.Length];

                    for (int j = 0; j < newLetters.Length; j++)
                    {
                        newLetters[j] = new LetterMapping(_letters[j].Letter, _letters[j].State);
                    }

                    newLetters[i] = newLetters[i].GetNext(distribution[i].Length);
                    list.Add(new WordMapping(newLetters));
                }
            }

            return(list.ToArray());
        }