RosettaCodeData/Task/Best-shuffle/Mathematica/best-shuffle.math
Ingy döt Net d066446780 langs a-z
2013-04-10 22:43:41 -07:00

5 lines
290 B
Text

BestShuffle[data_] :=
Flatten[{data,First[SortBy[
List[#, StringLength[data]-HammingDistance[#,data]] & /@ StringJoin /@ Permutations[StringSplit[data, ""]], Last]]}]
Print[#[[1]], "," #[[2]], ",(", #[[3]], ")"] & /@ BestShuffle /@ {"abracadabra","seesaw","elk","grrrrrr","up","a"}