文章目錄

原文链接 http://projecteuler.net/problem=24

Lexicographic permutations

A permutation is an ordered arrangement of objects. For example, 3124 is one possible permutation of the digits 1, 2, 3 and 4. If all of the permutations are listed numerically or alphabetically, we call it lexicographic order. The lexicographic permutations of 0, 1 and 2 are:

012 021 102 120 201 210

What is the millionth lexicographic permutation of the digits 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9?

 

字典排列

排列是指将一些东西进行有序排列。例如,3124就是数字1,2,3和4的一种排列。如果将所有排列按照数字序或者字母序列出,我们称之为字典序排列。0,1和2的字典序排列是:

012 021 102 120 201 210

求0,1,2,3,4,5,6,7,8和9的字典序排列中第一百万个排列。

解法:

写一个函数,用非递归方法生成下一个排列,具体方法到算法书找。有了这个函数后,一个循环就可以搞定。

 

打赏作者

文章目錄