#SmileBASIC, <s>104</s> 81 bytes DEF B A@D SWAP A[0],A[RND(LEN(A))]FOR I=0TO LEN(A)-2IF A[I]<A[I+1]GOTO@D NEXT END