public static Stack<Integer> stack = new Stack<Integer>();
private static List<String> listint = new ArrayList<String>(); public static void main(String[] args) {
int nums[] = { 1, 2, 3, 4 };
for (int i = 2; i <= nums.length; i++) {
groupData(nums, i, 0);
} } private static void groupData(int[] nums, int targ, int cur) {
// TODO Auto-generated method stub
if (cur == targ) {
Object[] shu1 = stack.toArray();
Arrays.sort(shu1);
if (!listint.contains(Arrays.toString(shu1))) {
System.out.println(Arrays.toString(shu1));
}
listint.add(Arrays.toString(shu1));
return;
} for (int i = 0; i < nums.length; i++) {
if (stack.contains(nums[i])) {
continue;
}
stack.add(nums[i]);
groupData(nums, targ, cur + 1);
stack.pop(); }
} 输出:

[1, 2]
[1, 3]
[1, 4]
[2, 3]
[2, 4]
[3, 4]
[1, 2, 3]
[1, 2, 4]
[1, 3, 4]
[2, 3, 4]
[1, 2, 3, 4]

  

最新文章

  1. C++高精度计时器&mdash;&mdash;微秒级时间统计
  2. github 多个项目共用同一个key的方法
  3. C#读写Json
  4. JS自定义事件之选项卡
  5. GridView分页排序
  6. Arduino从基础到实践第三章练习题
  7. android studio的lib和jniLibs
  8. 在CentOS linux上通过yum安装JDK&lt;转&gt;
  9. 剑指offer_数组中的逆序对
  10. LeetCode 40. Combination Sum II (组合的和之二)
  11. Holding Bin-Laden Captive!(1.多重背包 2.母函数)
  12. SDOI2017 相关分析
  13. git如何移除某文件夹的版本控制
  14. 用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建二:配置MyBatis 并测试(2 配置spring-dao和测试)
  15. Day9--Python--函数入门
  16. invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
  17. windows安装centos7子系统
  18. php之$_SESSION的理解
  19. Lucene 学习-安装 Elasticsearch 服务器
  20. java 23种设计模式 深入浅出

热门文章

  1. 二、python介绍
  2. [bzoj 4176] Lucas的数论 (杜教筛 + 莫比乌斯反演)
  3. webpack的loader的原理和实现
  4. 微软安全技术Shim
  5. 洛谷 P4316绿豆蛙的归宿
  6. 【后缀数组】【SP1811】 LCS - Longest Common Substring
  7. C++通过迭代修改字符串本身(auto类型说明符)
  8. Spring Cloud Eureka源码分析 --- client 注册流程
  9. 网络公开课和MOOC资源
  10. Activiti task claim