今日はかなり崖っぷちなのでどんどん質問します、すみません。
今回はdoubly linked listの質問です。
Consider the doubly linked list below. After each of the following statements, redraw the list to show the changes that have been made. Process the statements in sequence, that is, each statement should make changes in the list modified by the previous statement.
head->|10| |/|
↓ ↑
| 5| | |
↓ ↑
|20| | |
↓ ↑
tail ->|30| | |
1. head.next.next.prev.info = 100;
2. head.next.next.next = tail.prev.prev;
3. heat.next.prev = head.next.next.next.next;
※/はヌル(=Null)の意味です。
(これで分かってくださるといいんですが)
1.と2.は正解だそうです:
1.は上から二番目の5を100に変えました。
2.は上から三番目のnextが今変えたばかりの100を参照するようにしました。
そして問題の3.です。
head.next.prevですからnext(一番目)が二番目を参照して、
prevが今度は一番目を参照するので今現在"/"があるところを…
head.next.next.next.nextに変更ですから
最初のnext(一番目)が二番目を参照して、
二番目のnextが三番目を参照して、
三番目のnextは2.で変更したとおり、二番目を参照して、
四番目のnextは三番目を参照するので…
"/"のprevがずーーーっと伸びて20を参照するように書きました。
でも、間違っているらしいです。
どこがおかしいのでしょうか?
プログラミングの神様、どうかお助け下さい。m(__)m
No.1ベストアンサー
- 回答日時:
ぱっと見、あっているように思いますが、
>"/"のprevがずーーーっと伸びて20を参照するように書きました。
は、「1番目のデータのprevが(を)3番目のデータを参照するように変更」
(つまり、1番目のデータのprevの値であったnullを変更)
の意味にとれます。(ずーーーっと伸びては少々意味不明)
だとすると、たしかに間違ってますね。
更新されるのは、1番目のデータじゃないです
それにしても、2と3の操作の意味って??
ご回答、ありがとうございます。
あ、自分で書いたのをよくよく読んでみると
仰る通り、更新されるのは一番目じゃなくて
二番目のprevですね。
更新する場所は参照先じゃなくて参照元でした。
これで正解です…よね?
2.と3.の操作の意味は本当に謎ですね。
最初見たときは四番目のデータでも消すのかと思いました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 英語の記事で意味が取りきれません。助けてください 4 2023/07/20 08:00
- 英語 the fee is a bit too large considering our interne 3 2022/06/18 14:02
- 英語 中2 英語の問題 1 2023/06/04 18:59
- 英語 「彼は次の電車に乗っているかもしれない。」を英語に訳す問題で、 He may be taking a 3 2022/04/17 13:23
- 英語 下記の英文を日本語に訳してください。 1 2023/03/10 13:04
- HTML・CSS VS.NETのコードを色合いも含めてHtmlに貼り付けたい。 1 2023/02/02 14:15
- Excel(エクセル) vbaで列幅について 1 2022/11/15 08:31
- 英語 when I describe people I often want to say nice th 1 2023/06/04 13:31
- アニメ 仮面ライダーthe firstとthe nextは脚本が良かったら評価は変わってましたか? 1 2022/09/05 15:20
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バグの原因がわかりません(c言...
-
C言語 dequeue
-
リスト構造
-
C言語 二分木探索
-
【C言語教えてください】sin波...
-
2÷3などの余りについて
-
C言語についてです。 アスタリ...
-
へんな現象
-
EXCELの分散分析表のP-値が....
-
*をユーザーが入力した数字の数...
-
「Aに対するBの割合」と「Aに対...
-
信頼区間の1.96や1.65ってどこ...
-
ガンマ変換 C言語でプログラ...
-
Aの値からBの値を除するとは??
-
C言語で内積、、、わかりません。
-
std::set<int> で、ある値が何...
-
三角比の俯角の計算
-
C言語の質問です
-
三角比の問題です。
-
Enterキーを押されたら次の処理...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
InvokeMemberメソッドとは何を...
-
構造体のリスト削除
-
C# ref引数のnull判定
-
双方向リストのバブルソートに...
-
コールバック関数はnullになら...
-
今度はdoubly linked listの問...
-
C♯ 2段構造のcontextMenuStrip?
-
「Nz」は何て読むのでしょうか?
-
C#でのEXCEL出力に関して
-
空のカラムを挿入
-
ポインタを使った連結リストへ...
-
バブルソートを使って文字列を...
-
ソートを自作
-
API 録音 MCI
-
ばばぬきプログラムについて
-
C言語 dequeue
-
マイナスからプラスへ転じた時...
-
Enterキーを押されたら次の処理...
-
2÷3などの余りについて
-
C言語での引数の省略方法
おすすめ情報