再帰関数(再帰)解題(1~2回)


さいきかんすう
🙋「‐‐‐再貴重関数」とは何ですか.
自分を呼ぶ関数です.複文を回すように、自分を呼び続け、特定の条件になると身を引く関数.スタックという資料構造を書きます.
1.再帰関数とスタックフレーム(重要)
自然数Nを入力した後,再帰関数を用いて1からNを出力するプログラムを記述する.
1 2 3の順序で出力するべきです.
function solution(n) {
   function DFS(L) {
     if (L === 0) return;
     //L :level
     else {
       DFS(L - 1);
       console.log(L);
     }
   }
   DFS(n);
 }
 console.log(solution(3));
」重要点)再帰関数の動作原理
スタックには、下から上へDFS(3)-DFS(2)-DFS(1)の順にスタックされます.後で実行できない再帰関数のconsole.log(L)コードを上から下へ実行します.だから1 2 3の順番で出力!したがって、実行したいコードを置く場所に注意してください.
2.バイナリ出力(再帰)
十進法Nを入力し、バイナリ出力に変換するプログラムを作成します.単一の再帰関数を使用して出力する必要があります.
 function solution(n) {
     let answer = "";
     function DFS(n) {
       if (n === 0) return;
       DFS(parseInt(n / 2));
       answer +=n % 2;
     }

    DFS(n);

    return answer;
  }
console.log(solution(11)); //1011
に感銘を与える
スタックに関数を積み重ね、関数の実行が完了する前に、再帰関数による関数の再実行の構造について説明します.