Taking another approach, depending on the requirements of your algorithm you might just confine your @flowers in blocks using my like so:
in reply to How to empty an array ???
Mind you, from a readability point of view, re-use of variable names is not generally a good idea in my opinion, as it can be quite confusing to others unless your array is always used for the same purpose (e.g. as working space for some subroutine).
my @flowers = qw(rose daisy buttercup);
# arrange your flowers here
print @flowers; # prints nothing as these flowers were never assigned
I'd like to be able to assign to an luser