Застежка-молния - это метод представления структуры данных, так что она удобна для обхода и обновления, особенно в чисто функциональных языках.

застежка-молния - это метод представления совокупной структуры данных, так что она удобна для написания программ, которые произвольно пересекают структуру и обновляют ее содержимое, особенно на чисто функциональных языках программирования. .

Основная идея заключается в том, что существующая структура данных в виде списка или дерева дополняется представлением «фокуса» на одном элементе в дереве таким образом, который обеспечивает эффективный поиск и обновление в точке фокусировки.

Простой пример - застежка-молния для списка, состоящего из пары двух списков. Например, позиция 3 в списке (1,2,3,4,5) представлена ​​парой ((2,1), (3,4,5)). Вставить новый элемент или заменить 3 другим элементом с этим представлением можно в постоянное время, поскольку 3 находится во главе второго списка пары. Просматривать список также легко: удалите заголовок любого списка и cons его с другим списком.

Вы можете прочитать больше о молнии в Haskell в Haskell Wikibook .