- ベストアンサー
再帰について
ymmasayanの回答
- ymmasayan
- ベストアンサー率30% (2593/8599)
一長一短があると言うことを説明したいので例えを使います。 鶴亀算を解くのに小学生なら鶴亀算の方がよくわかります。 しかし、高校生なら、2元1次方程式の方が理解しやすいでしょう。 再帰も初心者にとっては、はなはだ難しいですし、トリッキーですが、論理的に整然としていますので、ベテランにとっては、プログラムが短くて、わかりやすいでしょう。 計算にかかる手間は、おそらく再帰の方がかかっているのでしょうね。 ただ、注意しないといけないのは、再帰で解かなくても解ける問題を、無理矢理、再帰で解いて見せている例が多いことです。検証がし易いからと言う理由は判るのですが、本当に再帰でないと解くのが難しい問題(ハノイの塔など)をもっとPRすべきなのでしょうね。バイナリーソートなども、再帰を使うととても短いステップで書けますね。
関連するQ&A
- javaの再帰呼びについてお願いします。
javaで nPn ,nCn 組み合わせ計算プログラムを 再帰呼びを使って 作成しようとしてますがとうやって書けばいいかわかりません。 初心者なんでわかりやすいコメントで お願いいたします
- 締切済み
- その他(学問・教育)
- 再帰呼び出しを使いますか?
趣味でプログラムをかじる程度なのですが、今まで自分はプログラムを作っていて再帰呼び出しを使ったことがありませんが、みなさんは良く使うのでしょうか? なかなか再帰呼び出しを考えるのが難しく自分のプログラムで適用すると良いところなど思い浮かびません。 再帰呼び出しをすると何か利点とかあるのでしょうか? 再帰呼び出しで無いと作るのが難しいプログラムなど今までありましたか?あればどんな処理だったかなど教えてください。
- ベストアンサー
- C・C++・C#
- プログラム構造の「再帰的」について
再帰的の説明に 「再帰的とは、あるプログラムがその内部から自分自身を呼び出して使用できる性質である。」「したがって再帰的であれば、必然的に再入可能でもある。」とありました。 ここで、「したがって再帰的であれば、必然的に再入可能でもある。」とは、つまり、プログラムAの中に再帰したプログラムA’が既に再入している状態にある、ということを表しているという理解かな?と思っているのですが、宜しいのでしょうか? より良い理解のために、補足説明などいただけたら、と思います。よろしくお願いいたします。
- ベストアンサー
- その他([技術者向] コンピューター)
- 再帰アルゴリズム
再帰アルゴリズムの練習のため問題に取り組んでいるのですが、問題集に解答がついておらずイマイチ理解できていないので教えていただけると助かります。 d個の毎インデックスで(0,0,...,0)から(n,n,...,n)まで反復させるアルゴリズムを反復アルゴリズムと再帰アルゴリズムの両方考えよ です。 (0,0,0,...,0) (1,0,0,...,0) (1,1,0,...,0) (1,1,.....,1) ... (n,n,.....,n) と表示を繰り返すプログラムでいいのかな、と思い反復の方は二十ループを用いてプログラムかけたんですが、再帰の法がアルゴリズムがどうも理解できていません。 ご教授願えればと思い、お願いします。
- 締切済み
- 科学
- javaの再帰関数のフローチャート
再帰プログラムを組むために、まずフローチャートを書こうと思ったのですが、再帰プログラムのフローチャートの書き方がわからなくなりました。 よかったら、わかりやすく回答よろしくお願いします!!
- 締切済み
- Java
お礼
どうもありがとうございました