Generic Initializer

init(_:)

Creates a new collection difference from a collection of changes. 新しいコレクション差異を、変更それらからなるあるコレクションから作成します。

Declaration 宣言

init?<Changes>(_ changes: Changes) where Changes : Collection, Changes.Element == CollectionDifference<ChangeElement>.Change

Parameters パラメータ

changes

A collection of changes that represent a transition between two states. 2つの状態の間の推移を表す変更いくつからなるあるコレクション。

Discussion 解説

To find the difference between two collections, use the difference(from:) method declared on the BidirectionalCollection protocol. 2つのコレクションの間の差異を見つけるには、BidirectionalCollectionプロトコル上で宣言されるdifference(from:)メソッドを使ってください。

The collection of changes passed as changes must meet these requirements: changesとして渡される変更いくつかからなるこのコレクションは、3つの要件に合わなければなりません:

Complexity: O(n * log(n)), where n is the length of the parameter. 計算量:O(n * log(n))、ここでnはパラメータの長さです。

  • All insertion offsets are unique 全ての挿入オフセットは、特有である。

  • All removal offsets are unique 全ての除去オフセットは、特有である。

  • All associations between insertions and removals are symmetric 挿入それらと除去それらの間の全ての関係は、対照的である。