ArrayList<Integer> list = new ArrayList<>();
LinkedList<Integer> linkedList = new LinkedList<>();
int i = 0;
while (i < list.size()){
if (list.get(i) == 3){
list.remove(i);
}
i++;
}
int j = 0;
while (j < linkedList.size()){
if (linkedList.get(j) == 3){
linkedList.remove(j);
}
j++;
}
//使用linkedList迭代器
Iterator<Integer> iterator = linkedList.iterator();
while (iterator.hasNext()){
if (iterator.next() == 3){
iterator.remove();
}
}
如果要删除一个 数
如果简单使用ArrayList 和 LinkedList 那么时间复杂度都是 O(n2)
while (i < list.size()){
if (list.get(i) == value){
list.remove(i);
}
i++;
}
ArrayList 搜索删除时间复杂度的原因是因为 外层的while 循环 和 Array的remove()方法 形成O(n2)