如何在Java中使用集合创建链表 vector ? 到目前为止我已经编写了以下代码:
Vector <LinkedList <Integer> > adj = new Vector<>();
但是我无法弄清楚如何用链表的头节点初始化 vector 。
我想要的是给定一个整数N
,我希望用值0
到N-1
作为头来初始化 vector 节点:
e.g given N = 4
vector ---> 0
1
2
3
以便稍后我可以在需要时将成员添加到列表中,例如:
vector ---> 0->2->3
1->3
2->0->1
3->1
最佳答案
使用您编写的代码,您创建了一个空 vector - 您必须用所需数量的 LinkedList实例 填充它(我猜您是一名 C++ 程序员,其中 vector 将初始化“自动地”?)。例如。像这样初始化你的 vector :
int N = 4;
Vector<LinkedList<Integer>> adj = new Vector<>(N); // N here isn't really needed, but it sets the initial capacity of the vector
for (int i = 0; i < 4; i++) {
ajd.add(new LinkedList<>());
}
此外,正如 Turing85 指出的那样,如果不需要同步,则应该使用 ArrayList
。
关于java - 链表 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43527800/