Cheers - L~R@list = sort { $a->{level} <=> $b->{level} } @list; # Print code goes here
Update: After re-reading your problem I realized the issue is not in the sorting but in the printing, which I conveniently left out. Since a great solution has already been provided below, I will only point to my iterative solution by using a stack.
In reply to Re: group based array sort
by Limbic~Region
in thread group based array sort
by bageler
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |