Skip to content

Instantly share code, notes, and snippets.

@trappist
Created December 3, 2013 00:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save trappist/7761947 to your computer and use it in GitHub Desktop.
Save trappist/7761947 to your computer and use it in GitHub Desktop.
Consume a 2d array in a "spiral"
#!/usr/bin/env ruby
def spiral(array,ans=[])
return ans unless array.any?
ans += array.shift
spiral(array.transpose.reverse, ans)
end
array = [
[1,2,3,1],
[4,5,6,4],
[7,8,9,7],
[7,8,9,7]
]
puts spiral(array).inspect
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment