Skip to content

Instantly share code, notes, and snippets.

@kelvin8773
Last active July 24, 2019 07:53
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kelvin8773/5d0d5b43735d0524c15de00f6c14ff08 to your computer and use it in GitHub Desktop.
Save kelvin8773/5d0d5b43735d0524c15de00f6c14ff08 to your computer and use it in GitHub Desktop.
quick sorting method in Ruby
def quicksort(array)
def partition(array)
pivot,left, right =array[0], [], []
array[1..-1].each do |x|
x > pivot ? right << x : left << x
end
[left, pivot , right]
end
return array if array.size <= 1
left, pivot , right = partition(array)
res = quicksort(left) + [pivot] + quicksort(right)
return res
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment