【发布时间】:2018-04-29 19:57:10
【问题描述】:
我正在解决一个问题,我必须获得数字数组列表的所有排列。唯一的限制是任何数字都不能以 0 开头,所以如果我们有 [0,1,2] 我们将获得
[1,2,0]
[1,0,2]
[2,0,1]
[2,1,0]
我知道如何使用 3 个循环来执行此操作,但问题是我必须对不同大小的不同数字集重复此操作,所以我需要一种可以应用于不同数字集的方法,但我不知道关于如何做到这一点。我想我必须使用某种递归函数,但我不知道如何实现它,所以数字不能以 0 开头。有什么想法吗?请不要只发布我想了解问题的代码,谢谢!
【问题讨论】:
-
分享您的实现(即使它以 0 开头),以便我们帮助您对其进行微调
-
将排列(最好使用递归获取)放入 ArrayList。在返回 ArrayList 之前,遍历它并删除所有以 0 开头的元素。
标签: java arraylist combinations permutation