これからの季節に親子でハイキング! >>

2分木の問題

みごとに全問不正解
結構まじめに午後問題を取り組んできたつもりですが
ショックでした

回答をみながら構造を解析するのに4時間もかかりました
(このままでは 合格は程遠い)

このような問題を短時間に 解析するにはいったどのように
取り組めばよいのでしょうか?
アドバイスお願いします

このQ&Aに関連する最新のQ&A

A 回答 (4件)

この問題に関して言えば、


"ソースコード読む前に"、
「図3の状態のツリーを、どのように処理すれば、整列できるか」
ということを考える必要があるのかもしれません。
(※何の誘導もなく、
そういうことを暗に要求すること自体がすでに難問だと思いますが)
---

「rootノードよりも小さいモノを部分木の左、大きいモノを右へ」
という発想が最初にあれば、
掲載ソースコードの流れにも必然性が見えてきて、
解答するのもそんなに大変じゃないと思います。
逆に、
「"虫食いの"ソースコード」をがんばって読んでいるだけでは、
上記の発想にたどりつかないと思います。

Cは難問が多いですね・・・。とほほ。
でも「確実に半分正答」(※この問題でいえば、4問中2問正答)は目指しましょう。
---

話は変わりますが、
仮に上記の
「rootノードよりも小さいモノを部分木の左、大きいモノを右へ」
という発想をあらかじめ「知らされていた」場合、
この問題、とけますか?
とけないようだと、
基礎力が足りてないと思います。

設問(d)が解けてないとのことなので、
問題文にかかれている「木構造」がよくわかっていなかったのでしょうか?

この回答への補足

ご指摘のとおりです
仕様 この場合 木構造 についての理解が
足らないようでした

補足日時:2007/07/31 08:01
    • good
    • 0

#3です。


この問題に関して言えば、
まず「問題文の意味」がスラスラわかる必要があります。
「ああ、二分木ね。
それを配列で表現しようとしてるのか・・・。ふーん。
で、その二分木を整列するのね。
そのときに『なんらかの再帰』を使うのね」
というふうに、つまずくことなくスラスラと。

それができない場合、あきらかに基礎力が欠如してます。
基本情報処理のC言語問題・アルゴリズム系問題で
問題に左右されず、(ほぼ確実に)合格ラインの点数を取りたいなら、

・この本のレベルの「プログラミング技術・知識」は必須。
http://www.context.co.jp/~cond/books/algo/mokuji …
(あと「C言語特有の文字列操作」
「簡単な図形処理」
あたりの知識が必須)
---

たとえばこの問題の場合、
「(連結リストなどへの)要素の挿入の仕方」
という『基礎イメージ』と『基礎技術』が身についてないと、
b,cがお手上げです。
    • good
    • 0
この回答へのお礼

いかに自分が簡単な論理しか 扱っていなかったが
思い知らされます

お礼日時:2007/08/01 08:00

先ほどこの問題(初めて)チャレンジしました。


答え:a,b,c,d 全問正解でした。
ただ、文章把握に1分、リスト把握に18分、
さらに、a,b,d は5分で解けましたが、
c は70分もかかってしまいました…(汗)
実は c には、
「ルートと現在値を比較し同等か大きいなら」
に着目し、
1.upper[root]に現在値を退避、
2.upper[data]の次の候補にupper[root]値を格納、
つまり入れ替える処理です。
しかし1の時点でupper[root]値は消えているので
以前upper[root]値を格納しておいたNEXTが答えだ!...
と思ったのですが、気になってこのプログラム完全解析(私の悪い癖)
してしまい内容は完全にわかりましたが70分もかかりました。

つまり何が言いたいのかというと例えば、
C_is_Best さんはこのように冗長な問題を解き解説を読んで
終わり、でしょうか…?
実はプログラム設計のポイントはイメージです。
文章だけでやろうとするとある問題を解説で理解できても
解っていながらも柔軟に捕らえることが困難になります。
ですから午後プログラム問題解説で理解できたら
それを図で書き表してみるのです。
(フロンチャート、トレースチャート、何でもOK)

ところでC_is_Bestさん、今年秋の基本情報試験を
お受けになるのですか?
私も受けますので(再挑戦)お互いがんばりましょう。
    • good
    • 0
この回答へのお礼

今年初めて受験します
リスト把握に18分ですか
頭脳明晰ですね

頭の構造の違いなら もうあきらめるしかなさそうです
努力でむくわれるなら なんとかがんばります

トレースが大事なんですね
こつこつやります

お礼日時:2007/07/30 08:00

午後の問題に関して、他の問題が順調に解けるならば前向きに考えましょう。

誰しも苦手なパターンのひとつやふたつ、あっても仕方がありません。
こうした類題を見つけて、問題演習の場数を増やしてこのパターンに慣れましょう。そうした問題集を手に入れるのが大変かもしれませんが、書店で探したり専門学校・パソコンスクールなどで相談してみるといいでしょう。そしてこの手の問題演習をすることにより、さらに変化のある問題にも対応できる(つまり幅を利かせるということです)ようにして下さい。それが応用力というものです。
    • good
    • 0
この回答へのお礼

やはり逃げてはいけないのですね

お礼日時:2007/07/27 12:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング