かんたん合格基本情報技術者予想問題集③科目B問6
匿名さん
(No.1)
空欄aがcurr←curr.nextになる理由がわかりません...
その前の行でprev←currとあるので、curr←curr.nextでもcurr←prev.nextでもやってることは変わらないと思うんですが、なぜcurr←curr.nextに限定されるのでしょうか。
解説見てもわからないので教えてくださると助かります。
その前の行でprev←currとあるので、curr←curr.nextでもcurr←prev.nextでもやってることは変わらないと思うんですが、なぜcurr←curr.nextに限定されるのでしょうか。
解説見てもわからないので教えてくださると助かります。
2023.07.05 18:14
電タックさん
★FE ブロンズマイスター
(No.2)
その本を持っていないので正確には分かりませんが
直前 prev = curr
その後 curr = curr.next
であれば「curr = curr.next」を「curr = prev.next」にしても同じ結果です。
ただ「その後」の部分が複数回行われるような場合には意味が変わってきます。
curr = prev.next
は何回やってもprevの次の要素を指します。
※[0, 1, 2, 3, 4] prevが1の場所であった場合、何回やってもprevは変わらないので次の2を指します。
curr = curr.next
を何回もやると、currを次の要素に順繰りに進めていきます。
※[0, 1, 2, 3, 4]
1回目:currが1の場所であった場合、2を指す。
2回目:currが2になるので,3を指す。
3回目:currが3になるので・・・と進んでいきます。
直前 prev = curr
その後 curr = curr.next
であれば「curr = curr.next」を「curr = prev.next」にしても同じ結果です。
ただ「その後」の部分が複数回行われるような場合には意味が変わってきます。
curr = prev.next
は何回やってもprevの次の要素を指します。
※[0, 1, 2, 3, 4] prevが1の場所であった場合、何回やってもprevは変わらないので次の2を指します。
curr = curr.next
を何回もやると、currを次の要素に順繰りに進めていきます。
※[0, 1, 2, 3, 4]
1回目:currが1の場所であった場合、2を指す。
2回目:currが2になるので,3を指す。
3回目:currが3になるので・・・と進んでいきます。
2023.07.05 22:33
匿名さん
(No.3)
とても分かりやすい説明感謝します
一周目のトレースでつっかえてしまってもその先に進むのが大事なんですね
本当にありがとうございます
一周目のトレースでつっかえてしまってもその先に進むのが大事なんですね
本当にありがとうございます
2023.07.05 23:23
広告
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
広告