, поэтому я написал код для построения dawg.я хочу узнать, существует ли слово в языке или нет?после многих поисков я выясняю, что лучший способ - использовать Доуг. здесь
public class DawgNode
{
public DawgNode(int id)
{
Id = id;
}
public int Id { get; set; }
public bool Final { get; set; }
public Dictionary<char, DawgNode> Edges { get; set; } = new Dictionary<char, DawgNode>();
public string Str()
{
var arr = new List<string>();
if (Final) arr.Add("1");
else arr.Add("0");
foreach (var e in Edges)
{
arr.Add(e.Key.ToString());
arr.Add(e.Value.Id.ToString());
}
return string.Join("-", arr);
}
}
Как лучше всего искать, если слово существует.Подумайте, я хочу реализовать игру в скрэббл в собственном приложении.я понимаю, что количество узлов может быть сведено к минимуму, но в чем дело.1- сохранение узлов и ребер в отдельных файлах?как?2- конвертировать каждый раз большой текст в dawg и искать в нем?пожалуйста помогите