Well, there's more to an algorithm than its run-time complexity.
You also need to prove the algorithm is correct. That is in
this case show that the resulting array is a permutation of
the original one (fairly trivial), and that each permutation
has an equal chance of being selected (a bit more work, but
still not to hard, if you can assume your random generator
produces real random numbers).
For details, see the Knuth reference I made in another post
in this thread.