回答編集履歴
2
修正
answer
CHANGED
@@ -24,6 +24,9 @@
|
|
24
24
|
while(current != tail) {
|
25
25
|
if (current->birthday % 2 == 0) {
|
26
26
|
prev->next = current->next;
|
27
|
+
if (current == head) {
|
28
|
+
head = prev->next;
|
29
|
+
}
|
27
30
|
delete current;
|
28
31
|
current = prev->next;
|
29
32
|
}else{
|
@@ -35,4 +38,5 @@
|
|
35
38
|
|
36
39
|
最後にプログラム終了するときには残っているNodeをすべて削除するようにしないと、メモリーリークしてしまいます。、
|
37
40
|
|
38
|
-
※一部間違いがあったので修正しました。
|
41
|
+
※一部間違いがあったので修正しました。
|
42
|
+
※さらに修正。(headが消去対象の場合に落ちてしまう)
|
1
修正
answer
CHANGED
@@ -26,8 +26,13 @@
|
|
26
26
|
prev->next = current->next;
|
27
27
|
delete current;
|
28
28
|
current = prev->next;
|
29
|
+
}else{
|
30
|
+
prev = current;
|
31
|
+
current = current->next;
|
29
32
|
}
|
30
33
|
}
|
31
34
|
```
|
32
35
|
|
33
|
-
最後にプログラム終了するときには残っているNodeをすべて削除するようにしないと、メモリーリークしてしまいます。、
|
36
|
+
最後にプログラム終了するときには残っているNodeをすべて削除するようにしないと、メモリーリークしてしまいます。、
|
37
|
+
|
38
|
+
※一部間違いがあったので修正しました。
|