Span над массивом в C#
Окно Span<T> смотрит на ячейки массива и не копирует их. Правка через окно меняет тот же массив.
Длина окна не больше длины исходного массива: за его край выйти нельзя.
Запишем 9 в первую ячейку окна и прочитаем её из массива:
int[] data = { 3, 1, 4 };
Span<int> view = data;
view[0] = 9;
Console.WriteLine(data[0]);
Для массива weights из двух чисел удвойте первый элемент через окно и выведите его.