JuliaCollections / IterTools.jl

Common functional iterator patterns
Other
152 stars 28 forks source link

fast partition #108

Closed pepijndevos closed 1 year ago

pepijndevos commented 1 year ago

Implements suggestions, fixing #39

Current master: https://github.com/JuliaCollections/IterTools.jl/issues/39#issuecomment-535612808

On this branch, which is similar to SlidingWindow with support for arbitrary step sizes:

julia> @btime g(1:100000)
  38.671 μs (2 allocations: 144 bytes)
(4999850001, 4999949999, 5000049997)

julia> @btime g2(1:100000)
  36.638 μs (1 allocation: 80 bytes)
(4999850001, 4999949999, 5000049997)