Я прочитал о реализации копирования при записи для Array в Swift здесь.
Массивы, как и все коллекции переменного размера в стандартной библиотеке, используют оптимизацию копирования при записи. Несколько копий массива используют одно и то же хранилище, пока вы не измените одну из копий. Когда это происходит, изменяемый массив заменяет свое хранилище собственной уникальной копией, которая затем модифицируется на месте. Иногда применяются оптимизации, которые могут уменьшить объем копирования.
Мне интересно, есть ли у вас какая-либо информация о том, какая структура поддерживает копирование при записи.