回答編集履歴
2
修正
test
CHANGED
@@ -50,6 +50,12 @@
|
|
50
50
|
|
51
51
|
prev->next = current->next;
|
52
52
|
|
53
|
+
if (current == head) {
|
54
|
+
|
55
|
+
head = prev->next;
|
56
|
+
|
57
|
+
}
|
58
|
+
|
53
59
|
delete current;
|
54
60
|
|
55
61
|
current = prev->next;
|
@@ -73,3 +79,5 @@
|
|
73
79
|
|
74
80
|
|
75
81
|
※一部間違いがあったので修正しました。
|
82
|
+
|
83
|
+
※さらに修正。(headが消去対象の場合に落ちてしまう)
|
1
修正
test
CHANGED
@@ -54,6 +54,12 @@
|
|
54
54
|
|
55
55
|
current = prev->next;
|
56
56
|
|
57
|
+
}else{
|
58
|
+
|
59
|
+
prev = current;
|
60
|
+
|
61
|
+
current = current->next;
|
62
|
+
|
57
63
|
}
|
58
64
|
|
59
65
|
}
|
@@ -63,3 +69,7 @@
|
|
63
69
|
|
64
70
|
|
65
71
|
最後にプログラム終了するときには残っているNodeをすべて削除するようにしないと、メモリーリークしてしまいます。、
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
※一部間違いがあったので修正しました。
|