パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

再帰呼び出し、よく使う?使わない?」記事へのコメント

  • public void listRecurse(File directory) {
            for (File file: directory.listFiles()) {
                    System.out.println(file.getPath());
                    if (file.isDirectory()) listRecurse(file);
            }
    }

    • by Anonymous Coward on 2015年02月11日 19時09分 (#2759501)

      キューを使う方法も知っておくと、今後の人生とメモリ使用量が豊かになるでしょう。

      親コメント
      • by Anonymous Coward

        まて。スタックを使うのではなく?

        • by Anonymous Coward

          あ、いや、FILOなコレクションを使うのではなく?という意味で。

        • by Anonymous Coward

          幅優先探索のこと言ってるんじゃね?
          キューのメモリはヒープに取る希ガス。

        • by Anonymous Coward

          ディレクトリツリーの幅優先か深さ優先かだから
          どちらもありだね。

        • by Anonymous Coward

          典型的な再帰は実行位置も保存するスタックだけど、この手の再帰はタスクキューとしてループ化した方が実行位置の復元処理なんかが省略できてシンプルになります。
          サブの処理結果を呼び出し側の後続処理に使う場合はダメな場合が多いですが、そうでなければキューがおすすめです。
          キューからの取り出し順はFIFO(キュー)でもFILO(スタック)でも優先度付き云々でもぶっちゃけ構いません。

「科学者は100%安全だと保証できないものは動かしてはならない」、科学者「えっ」、プログラマ「えっ」

処理中...