File tree Expand file tree Collapse file tree 1 file changed +13
-6
lines changed
src/me/ramswaroop/linkedlists Expand file tree Collapse file tree 1 file changed +13
-6
lines changed Original file line number Diff line number Diff line change @@ -73,7 +73,7 @@ public LinkedList<E> clone() {
73
73
74
74
@ Override
75
75
public boolean contains (E item ) {
76
- return getNode (item ) = = null ;
76
+ return getNode (item ) ! = null ;
77
77
}
78
78
79
79
@ Override
@@ -104,20 +104,27 @@ public E remove() {
104
104
105
105
@ Override
106
106
public E remove (int index ) {
107
+ isLinkedListEmpty ();
108
+
107
109
Node <E > prevNode = getPredecessorNode (index );
110
+ Node <E > delNode ;
108
111
if (prevNode == null ) { // index = 0
112
+ delNode = head ;
109
113
head = head .next ;
110
114
size --;
111
- return head .item ;
115
+ return delNode .item ;
112
116
} else {
113
- prevNode .next = prevNode .next .next ;
117
+ delNode = prevNode .next ;
118
+ prevNode .next = delNode .next ;
114
119
size --;
115
- return prevNode . next .item ;
120
+ return delNode .item ;
116
121
}
117
122
}
118
123
119
124
@ Override
120
125
public boolean remove (E item ) {
126
+ isLinkedListEmpty ();
127
+
121
128
if (!contains (item )) return false ;
122
129
123
130
Node <E > prevNode = getPredecessorNode (item );
@@ -232,8 +239,8 @@ private void isLinkedListEmpty() {
232
239
}
233
240
234
241
private void isIndexOutOfBounds (int index ) {
235
- if (index < 0 && index > size ) {
236
- throw new IndexOutOfBoundsException ("Index must be less than or equal to: " + size );
242
+ if (index < 0 || index > size ) {
243
+ throw new IndexOutOfBoundsException ("Index must be less than " + size );
237
244
}
238
245
}
239
246
You can’t perform that action at this time.
0 commit comments