2 Star 0 Fork 1

Coolman/learnTest

forked from 阿翔/learnTest 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Demo.java 1.59 KB
一键复制 编辑 原始数据 按行查看 历史
Coolman 提交于 2018-11-23 23:17 . 心服口服
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Arrays;
/**
* 数组移除一个元素,得到新数组即一种组合形式。
* 新数组重复上面移除操作,直到长度=2。
*
*/
public class Demo {
private static Map<String, String[]> mp = new HashMap<>();
public static void main(String[] args) {
String[] arr = { "a", "b", "c", "d" };
newArray(arr);
System.out.println(mp.size());
for (String[] item : mp.values()) {
System.out.println(Arrays.toString(item));
}
}
public static void newArray(String[] arr) {
if (arr.length > 2) {
List<String> list;
for (int i = 0; i < arr.length; i++) {
//String[] => List
// for (String s : arr) {
// list.add(s);
// }
list = new ArrayList<String>(Arrays.asList(arr));
list.remove(i);
//List => String[]
// String[] str = new String[list.size()];
// for(int j = 0; j < list.size(); j++) {
// str[j] = list.get(j);
// }
String[] str = list.toArray(new String[0]);
//去重
if (!mp.containsKey(list.toString())) {
// System.out.println(list.toString() + " " + Arrays.toString(str));
mp.put(list.toString(), str);
}
list.clear();
newArray(str);
}
}
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/Coolman/learnTest.git
git@gitee.com:Coolman/learnTest.git
Coolman
learnTest
learnTest
master

搜索帮助