利用java怎么对集合的子集进行求解?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
java求解集合的子集的实例
方式1:我们知道子集个数 2的n次方
比如a,b,c的子集
* 000 0 {}
*001 1 a
*010 2 b
*011 3 a,b (b,a)
*100 4 c
* 101 5 a,c (c,a)
* 110 6 b,c (c,b)
* 111 7 a,b,c
利用二进制的对应关系
@Test public void test1() throws Exception { Set<ArrayList<Integer>> subsets = getSubsets( Arrays.asList(1,2,6)); Set<ArrayList<String>> subsets2 = getSubsets( Arrays.asList("a","b","c")); Set<ArrayList<Character>> subsets3 = getSubsets( Arrays.asList('b','c','d')); System.out.println(subsets); System.out.println(subsets2); System.out.println(subsets3); } //集合接受各种类型数据 public <T> Set<ArrayList<T>> getSubsets(List<T> subList) { //考虑去重 Set<ArrayList<T>> allsubsets = new LinkedHashSet<>(); int max = 1 << subList.size(); for (int loop = 0; loop < max; loop++) { int index = 0; int temp = loop; ArrayList <T> currentCharList = new ArrayList<T>(); //控制索引 while (temp > 0) { if ((temp & 1) > 0) { currentCharList.add(subList.get(index)); } temp >>= 1; index++; } allsubsets.add(currentCharList); } return allsubsets; }
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1142
183.71 KB下载数642
644.84 KB下载数2755
相关文章
发现更多好内容猜你喜欢
AI推送时光机利用java怎么对集合的子集进行求解
后端开发2023-05-31
怎么在java中对集合进行排序
后端开发2023-06-14
java中的集合元素怎么利用foreach进行遍历
后端开发2023-05-31
利用java怎么计算一个集合的对称差
后端开发2023-05-31
Java中HashSet集合怎么对自定义对象进行去重
后端开发2023-06-16
利用java 怎么对文件进行切割与合并
后端开发2023-05-31
利用java怎么对xml文件进行解析
后端开发2023-05-31
java使用lambda表达式对List对象集合的某个属性进行排序
后端开发2021-07-02
java中怎么利用7zip对压缩包进行解压的
后端开发2023-05-31
SpringBoot中的消息队列怎么利用redis进行集成
后端开发2023-05-31
java中的json怎么利用post请求进行发送
后端开发2023-05-31
利用Java怎么对文件进行压缩与解压缩
后端开发2023-05-31
利用java怎么对两个对象的属性进行比较
后端开发2023-05-31
利用Java怎么获取集合中相同与不同的元素
后端开发2023-05-30
Java中的子文本怎么利用正则表达式进行获取
后端开发2023-05-31
Java中的excel文件怎么利用POI进行解析
后端开发2023-05-31
利用Java怎么对数组中的元素进行填充与替换
后端开发2023-05-31
Java中的xml文件怎么利用正则表达式进行解析
后端开发2023-05-31
咦!没有更多了?去看看其它编程学习网 内容吧