in reply to splitting arrays
Yes, this has a memory cost twice that of the original array, but you're going to need that even with the spliced solution, since I don't believe the extra space is returned to the script as the array is reduced in size?use strict; use warnings; my (@arr, @arr2, $i); $arr[$_] = $_ for 0..357; for ($i = 0; $i <= $#arr; $i += 50) { push @arr2, [@arr[$i..($i+49)]]; } $#{$arr2[$#arr2]} = $#arr % 50; print join(' ', @$_), "\n" for @arr2;
|
|---|