Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (defn lazy-qs [[pvt & rst]] ; deconstruct array, first element is pivot
- (when pvt ; if pivot is not nil
- (let [smaller #(< % pvt)] ; define helper function
- (lazy-cat
- (lazy-qs (filter smaller rst)) ; re-run fn with all elements smaller than pivot
- [pivot] ; center of list is pivot
- (lazy-qs (remove smaller rst)))))); re-run fn with all elements bigger than pivot
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement