在实践中如果知道变动将要发生的地方, 那么向链表插入或从链表中删除一项的操作不需要移动很多的项, 而只涉及常熟个节点链的改变;
双链表:
对于ArrayList:
1.get()2.set()3.add(index,value)4.remove()add(index,value):进行如下操作new [] newArrs = new int[length+1];for(int i=0;i<length+1;i++){ if(i<index){ newArrs[i] = oldArrs[i]; }else if(i==index){ newArrs[index] = value; }else{ newArrs[i] = oldArrs[i-1]; }}所以对于一项的插入,需要时间为O(N);对于get和set方法:get(index);return arrays[index];set(index,value):arrays[index] = value;LinkedList:
新闻热点
疑难解答