HOME»基本情報技術者試験掲示板»かんたん合格基本情報技術者予想問題集③科目B問6
投稿する

かんたん合格基本情報技術者予想問題集③科目B問6 [4930]

 匿名さん(No.1) 
空欄aがcurr←curr.nextになる理由がわかりません...
その前の行でprev←currとあるので、curr←curr.nextでもcurr←prev.nextでもやってることは変わらないと思うんですが、なぜcurr←curr.nextに限定されるのでしょうか。
解説見てもわからないので教えてくださると助かります。
2023.07.05 18:14
電タックさん(No.2) 
FE ブロンズマイスター
その本を持っていないので正確には分かりませんが

直前    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日経過したスレッドへの投稿はできません。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop