Often I have written: {Min@#, Max@#} &
Yet this seems inefficient, as the expression must be scanned twice, once to find the minimum value, and once to find the maximum value. Is there a faster way to do this? The expression is often a tensor or array.
This beats it by a bit.
I think it’s a little faster than Leonid’s version because
Dois a bit faster thanFor, even in compiled code.Ultimately, though, this is an example of the kind of performance hit you take when using a high level, functional programming language.
Addition in response to Leonid:
I don’t think that the algorithm can account for all the time difference. Much more often than not, I think, both tests will be applied anyway. The difference between
DoandForis measurable, however.