# What is the probability that all priorities are unique for Permute-By-Sorting algorithm?

I hope someone can help me answer the following question. Thanks!

Here is a pseudo code of Permute-By-Sorting algorithm:

Permute-By-Sorting (A)

    n = A.length

let P[1..n] be a new array

for i = 1 to n

P[i] = Random (1,n^3)

sort A, using P as sort keys


In the above algorithm, the array P represents the priorities of the elements in array A. Line 4 chooses a random number between 1 and n^3.

The question is what is the probability that all priorities in P are unique? and how do I get the probability?

-
By "all priorities are unique" I think you mean "all priorities are different." "Unique" does not mean "different." – bof May 15 at 23:31

You generate $n$ numbers in a range of $n^3$ numbers. There are

$$\frac{n^3!}{(n^3-n)!}$$

favourable outcomes and a total of

$$\left(n^3\right)^n$$

outcomes, so the probability is

$$\frac{n^3!}{(n^3-n)!\left(n^3\right)^n}\;.$$

-