Most tables of critical values for the Mann-Whitney-Wilcoxon rank sum test statistic, usually known as U, are only calculated for very small samples. Presumably, this is because the test is most commonly recommended for non-normally distributed numeric data in samples too small for the central limit theorem to kick in. However, there may be other reasons for using a non-parametric test, for example when working with ordinal data. For this reason, it would be convenient to have tables of critical values for larger samples.
Calculating critical values for U is very easy in R, using the qwilcox
function. However, I find that this function becomes unusably slow when working with group sizes greater than about 250. I presume that this is because of the recursive algorithm used in the underlying C code.
What would be an efficient way of calculating critical values for U?