Допустим, у меня есть структура данных, подобная следующей:
A-B-A-B-A-B-...-A
Это выглядит как забор, с типом A
, являющимся столбами забора, и типом B
, расположенным между пробелами. Как бы вы смоделировали эту структуру данных?
Один простой способ, который мне пришел бы в голову, - это list
, принимающий оба значения A
и B
в качестве возможных значений для каждой записи list
. Тем не менее, это небезопасно, так как не гарантируется, что я найду что-то типа A
на месте myArray[0]
Что может быть лучше, так это список типа C
:
interface C {
left: A or null,
right: A or null,
center: B
}
Таким образом, вы можете построить его так:
[
{left: A1, center: B1, right: null},
{left: A2, center: B2, right: A3}
]
Это тоже немного странно. Какие еще есть варианты? Меня не волнует язык, просто опишите решение на любом языке или псевдокоде.