一般に、再帰を使ったコードは、再帰を使わないで書くことができます。 やろうとすると非常に大変なんですけどね。 もしやるのであれば、まず再帰版を作ってアルゴリズムの妥当性を確認してから、非再帰版を起こすってのがいいかなあ?? いずれにせよ後ろ向きの解決なんですよね。 プチコンが再帰呼び出しの深度を深くすれば済むところを、 こっちサイドで処理系の穴を回避して面倒なことしなければならないという・・・ (お仕事ではよくある話ですww) 目標が「9x9解けるソルバーを作る」であればそういう努力が必要になりますし、 「バックトラックソルバーを書いてみる」であれば、4x4まででいいんじゃないかな?