Einer umstrittenen Geschichte zufolge ist der Unterschied zwischen den Buchstaben in einem Schriftstück nicht viel für das Wort, ebenso wenig wie die ersten und letzten Buchstaben mit dem ursprünglichen Schriftstück.
Also, zum Spaß, was wäre die kürzeste Funktion, um die Buchstabenreihenfolge in einem Wort zufällig zu ordnen, während der erste und der letzte Buchstabe an Ort und Stelle bleiben?
Hier ist mein Versuch mit JavaScript. Alle Leerzeichen entfernt es ist bei 124 130 Zeichen.
function r(w) {
var l=w.length-1;
return l<3?w:w[0]+w.slice(1,l).split("").sort(function(){return Math.random()-.5}).join("")+w[l];
}
Kürzere JavaScript immer willkommen.
- Bearbeiten: Längenprüfung hinzugefügt. Die Funktion sollte für kurze Wörter nicht fehlschlagen.
id
ist die Identitätsfunktion. Ich würde immer noch gerne sehen, dass Haskell dieses Problem in weniger als 100 Zeichen löst.
r=id
.