Я должен написать функцию, которая принимает список строк (слова, которые различаются по длине) и int (размер набора данных, например, значение int 4 будет 4 столбца и четыре строки в таблице), и с этим я должен создать блок, похожий на кроссворд (блок, являющийся набором данных), который будет содержать как можно больше слов в списке, как кроссворд, который они могут пересекать друг с другом, если буквы совпадают в нужных местах, и все слова должны быть перепутаны Читайте в каждом направлении (как кроссворд).
Я не могу найти код, который бы помог мне с этим, пока у меня есть базовая структура набора данных, вот она, любая помощь будет оценена, спасибо.
public WordsDs WordMixer(List<string> wordList, int size)
{
if ((wordList == null) || (size < 2))
{
return null;
}
//shuffle the words in the list so that they are in a random order
Random random = new Random();
var sortedList = wordList.OrderBy(i => random.Next()).ToList();
//create a dataset for the words
DataSet ds = new DataSet();
DataTable dt = new DataTable();
//add columns and rows according to the size parameter
for (int i = 0; i < size; i++)
{
dt.Columns.Add(i.ToString(), typeof(string));
}
for (int i = 0; i < size; i++)
{
dt.Rows.Add(i);
}
for (int i = 0; i < wordList.Count; i++)
{
}//for (int i = 0; i < wordList.Count; i++)
}