Structure 包在 Swift 5.x 中定义了代数结构和数据结构,以及对其执行的算法。
此 Swift 包的内容被分为四个模块。
解构 Sequence 类型,以用于函数式递归算法。
用于定义诸如 Semigroup、Monoid 和 Group 等类型的协议和结构。
Stack、Queue、LinkedList、Matrix、SortedArray 等)OrderedDictionary、SortedDictionary)Tree、BinarySearchTree、AVLTree)Graph、WeightedGraph、DirectedGraph、WeightedDirectedGraph)用于重构 Sequence 和 Collection 类型中元素的算法,例如 subsets 和 combinations。
要将 Structure 包包含到您自己的项目中,请将其添加到 Package.swift 文件的 dependencies 部分
let package = Package(
name: ...,
products: [ ... ],
dependencies: [
...,
.package(url: "https://github.com/dn-m/Structure", from: "0.19.0")
],
targets: [ ... ]
)
要在您自己的项目中使用给定的模块,请导入所需的模块
import Algebra
import Destructure
import DataStructures
import Algorithms
要为 Structure 包做出贡献,请克隆 git 存储库
git clone https://github.com/dn-m/Structure && cd Structure
构建包
swift build
运行测试
swift test
如果您使用 Xcode IDE,请使用 Swift Package Manager 生成一个 .xcodeproj 文件
swift package generate-xcodeproj