4 ms·
While I agree in principle, there are many cases where you don't care about the statistical quality of a random shuffle, where brevity has its benefit.
by yid 15y ago
While I agree in principle, there are many cases where you don't care about the statistical quality of a random shuffle, where brevity has its benefit.
- photon_off 15y agoI think there's also an issue of performance -- it's possible, though unlikely, that the sort could take forever to complete.
- bzbarsky 15y agoYou don't understant. The code cited isn't even guaranteed to terminate by the spec; browsers could just go into an infinite loop if the comparison function effectively lies to them so the array never looks sorted... and this would be perfectly reasonable behavior. So it's not that you get a bad random shuffle; it's that your code might never return from that sort() call. And to be clear, there have been cases of "hang" bugs being reported to browser vendors in situations exactly like this one because people were writing boneheaded script like this.
- tolmasky 15y agoWhen? It's not like anyone is asking you to write the shuffling code by hand, so when is time so precious, and space so constrained, that it's beneficial to use this "brief" incorrect solution over taking the 5 minutes to google a correct solution and copy-pasting that?