1 个不稳定版本
0.3.3 | 2023年6月7日 |
---|---|
0.3.2 |
|
0.3.1 |
|
0.3.0 |
|
1539 在 数据结构 中
每月 下载量 184
645KB
11K SLoC
Shiftnanigans
此包包含通过“移动”顺序前后迭代的有用、通用、常用功能、数据结构和算法。这些“移动器”允许以允许更容易检测快速失败场景的方式遍历树形数据结构,而不是检查项目集合。
功能
移动器
- SegmentPermutationShifter
- 将未定位的线段转换为局部化线段
- IndexShifter
- 遍历项的树形结构,对这些项进行索引
- ScalingSquareBreadthFirstSearchShifter
- 逐步遍历整数内部树的所有可能深度,仅在遍历所有更接近根的子项的排列后,才允许到达更深的孩子
- ShiftingSquareBreadthFirstSearchShifter
- 类似于ScalingSquareBreadthFirstSearchShifter,但现在整数是相应索引的项
- HyperGraphClicheShifter
- 返回提供的超图中存在的完全连接的陈词滥调图,但每个状态节点在遍历移动器时都单独提供
增量器
- BinaryDensityIncrementer
- 返回一个布尔值集合,每个后续迭代都逐步增加1的总数,从零真值开始,到所有真值
- BinaryValueIncrementer
- 返回从零到提供的最大二进制幂的所有整数的二进制表示,基于提供的长度
- LimitedIncrementer
- 另一个增量器的包装器,只允许构造函数提供的特定次数的迭代
- RoundRobinIncrementer
- 其他增量器的包装器,遍历内部每个增量器,给每个增量器一个返回项目序列的机会
- ShifterIncrementer
- 移动器的包装器,以深度优先搜索模式迭代遍历
- ShiftingCellGroupDependencyIncrementer
- 一个相当复杂的增量器,比较单元格(像素)组彼此之间,不允许重叠(特定和一般),并确保非墙壁单元格组与墙壁单元格组之间的相邻性
PixelBoard
- PixelBoardRandomizer
- 当提供PixelBoard时,它会随机确定像素(单元格组)的位置,同时避免重叠并保持检测到的单元格组之间的相邻性。
用法
即将推出
示例
无(目前)
依赖项
~1.5MB
~34K SLoC