我在决定如何表示某个问题时遇到了很多问题。基本上,我需要一个来自args[1]
的给定数字的列表/向量。他们每个人都有0到一些args[2]
。
我需要制作一个算法来搜索第一个元素中所有可能的参数组合。
举个例子:
1 -> 3 5
2 -> 1 3 4 5
3 -> 2
4 -> 2 5 1
5 -> 1 3 4
从这个例子中,我将不得不生成所有路径的组合,比如1,你可以去3或5等等,不能回到同一个迷你路径所以我猜我会有找出一些完全搜索所有路径的递归方式。
我的第一个尝试是为每个元素创建一个带有arraylist的1到5的向量,但是我在初始化和使用列表访问值时遇到了问题。
for (int i=0; i < total; i++) {
matrix[i] = new ArrayList<int>(total);
}
for (int i=0; i < total_paths; i++) {
matrix[Integer.parseInt(args[i])].add(Integer.parseInt(args[i]));
}
欢迎任何建议。
答案 0 :(得分:0)
你不能拥有ArrayList<int>
;只有一个ArrayList<Integer>
。但是,在大多数情况下,Java会自动在int
和Integer
之间进行转换。
答案 1 :(得分:0)
你不能拥有ArrayList<int>
- 它必须是ArrayList<Integer>
。
列表只能存储对象,例如整数,字符串等。在Java中,int
是基本类型,而不是真正的对象。
您的第二个代码块将归结为:
matrix[1].add(1);
(例如 - 与数组索引和列表条目相同的值) - 这是你的意思吗?你不知道如何传递......中的价值观。