В настоящее время я пытаюсь создать Решатель Судоку, и на этапе назначения некоторых возможных значений блоку, который еще не занят.(Немного справочной информации о том, почему я делаю этот шебанг: судоку - это игра чисел, основанная на сетке 9x9, ее контекстные правила позволяют определенным полям в сетке, которые не озабочены, содержать возможные значения в процессе решения)
Для этого я создал структуру, определил ее как двумерную и заполнил ее предопределенным списком целых чисел, используя цикл for.
Теперь, когда я попытался удалить одно целое число из спискаопределенного элемента в двумерной структуре, я обнаружил, что во всех списках элементов в структуре это целое число удалено.Вероятно, есть простое решение, но я действительно изо всех сил пытался найти его.Надеюсь, что приведенный ниже код проясняет несколько запутанное словесное объяснение.
Structure Element
Dim PossibleValues As List(Of Integer)
Dim ElementValue As Integer
End Structure
Sub Main()
Dim List as New List(Of Integer)({1,2,3})
Dim TDP(8,8) as Element
For x as integer = 0 to 8
For y as integer = 0 to 8
TDP(x,y).PossibleValues = List
Next
Next
TDP(0,0).PossibleValues.Remove(1)
End Sub
Теперь я ожидаю, что только TDP (0,0) будет иметь список «2,3» при выводе списка целых чисел, но когда я проверяю другие элементы, т.е. TDP (1,0)), его список целых чисел также "2,3"