HeckelDiff:快速的Swift差异库

时间:2024-03-16 04:30:06
【文件属性】:

文件名称:HeckelDiff:快速的Swift差异库

文件大小:28KB

文件格式:ZIP

更新时间:2024-03-16 04:30:06

swift diffing batched-updates uicollectionviews Swift

赫克尔·迪夫 Paul Heckel的一种隔离文件之间差异的技术的纯Swift实现 特征 这是一个简单的差异算法,提供了将一个集合转换为另一个集合所需的最少步骤。 转换列为离散操作: 插入-应该将哪些项目插入数组,以及在什么索引处插入。 删除-应该从数组中删除哪些项目,以及从什么索引处删除。 移动-应该移动哪些项目,以及它们的起点和终点索引。 更新-应该使用新的上下文以及在什么索引下更新/替换哪些项目。 这些操作是使用描述的算法以线性时间计算的。 知道这组操作对于有效地更新UITableViews和UICollectionViews特别方便。 例子 考虑一个比较整数列表的简单示例: let o = [ 1 , 2 , 3 , 3 , 4 ] let n = [ 2 , 3 , 1 , 3 , 4 ] let result = diff (o, n) // [.move(1,


【文件预览】:
HeckelDiff-master
----.gitignore(1KB)
----Package.swift(306B)
----README.md(5KB)
----.swiftpm()
--------xcode()
----Examples()
--------HeckelDiffExample()
----LICENSE(1KB)
----Source()
--------Diff.swift(7KB)
--------UITableView+Diff.swift(2KB)
--------UICollectionView+Diff.swift(1KB)
--------ListUpdate.swift(1KB)
--------Info.plist(753B)
--------HeckelDiff.h(518B)
----HeckelDiff.xcodeproj()
--------project.xcworkspace()
--------project.pbxproj(18KB)
--------xcshareddata()
----Tests()
--------DiffTests.swift(4KB)
--------HeckelDiffTests.swift(986B)
--------Info.plist(680B)
----HeckelDiff.podspec(861B)
----HeckelDiff.xcworkspace()
--------contents.xcworkspacedata(263B)
--------xcshareddata()

网友评论