J - 34
f=:({~ ?~@#)^:(1-+/@:(=/:~)=#)^:_
eg:
f 5 4 1 3 2
1 2 3 4 5
f 'hello'
ehllo
The {~ ?~@# part shuffles the input:
({~ ?~@#) 1 9 8 4
4 8 9 1
({~ ?~@#) 'abcd'
bdca
f=:({~ ?~@#)^:(1-+/@:(=/:~)=#)^:_
eg:
f 5 4 1 3 2
1 2 3 4 5
f 'hello'
ehllo
The {~ ?~@# part shuffles the input:
({~ ?~@#) 1 9 8 4
4 8 9 1
({~ ?~@#) 'abcd'
bdca