回答編集履歴

1

追記

2020/06/03 05:57

投稿

yudedako67
yudedako67

スコア2047

test CHANGED
@@ -55,3 +55,13 @@
55
55
  (もう一つ小さなミスとしては引数のnが残ったカードの数ではなく、実際は進めるカードの数になっているということ)。ところがreverse内での実際の使用法を見ると、分割される前提で元の山に積み上げていっているので、どんどんカードの枚数が増えていきます(pileupの実装次第ではループした単方向リストになる)。
56
56
 
57
57
  pileupとsplit以外は与えられてるということなので、実際にsplitするような実装に変えるべきなんでしょう。
58
+
59
+
60
+
61
+ ---
62
+
63
+ split関数の理想的な動作としては[1-> 2-> 3-> 4-> 5-> Null]というようなリストが与えられたとき、[1-> Null]と[2-> 3-> 4-> 5-> Null]の二つのリストができる関数です。つまりどこかでnextにNullを代入するはずです。
64
+
65
+
66
+
67
+ コメントのsplit関数については最初のsplit関数と同じ動作です。もしかしたらポインターの働きを勘違いしてるんじゃないでしょうか。