Math Fundamentals18 sections · 814 units
Open in Course

Permutation Sequence Pseudocode

(Greedy construction)

function getPermutation(n, k):

numbers = [1, 2, ..., n]

k = k - 1 // Convert to 0-indexed

result = []

for i from n down to 1:

factorial = (i-1)!

index = k / factorial

result.append(numbers[index])

numbers.remove(numbers[index])

k = k % factorial

return result