Of course there is. You can either change the format of the HTML such that you can still emit them in order, or you can do some math on the current loop index in order to pick and choose which array element gets emitted for each iteration.
Clues for the latter approach: varStatus gives you information on the current status of each iteration, including the loop index, and the  operator can be used to index into the array or list. You might also ponder on the begin and end attributes to the <c:forEach> action. [ March 14, 2008: Message edited by: Bear Bibeault ]