【发布时间】:2014-11-09 21:42:26
【问题描述】:
我必须编写一个程序来给出一个数字的所有排列。例如,用户输入数字 4。我必须返回数字 1、2、3、4 的所有可能组合。我对获取所有排列的好方法有疑问。我有它,所以我的程序将数字 1-n 放入一个数组中。但是,我想不出一种获得排列的好方法。我知道我需要使用递归,但我的问题是首先获得排列的方法。我知道切换数字可能是最好的方法,但最好的方法是什么?
【问题讨论】:
-
您可能想阅读 Sedgewick 的论文:homepage.math.uiowa.edu/~goodman/22m150.dir/2007/…
-
排列是在一组对象上执行的,而不是在单个数字上。
-
如果这与要求推荐或查找书籍、工具、软件库、教程或其他非现场资源无关,那么先生,我是荷兰人。
-
我正在从事的项目中也需要此功能。不幸的是,我无法在此处发布答案,因为该问题已关闭。但这里是我用于解决方案的想法的链接:math.stackexchange.com/q/240762/78044 和 geeksforgeeks.org/…
标签: java algorithm int permutation