ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript 言語での再帰的プログラミング_JavaScript スキル

JavaScript 言語での再帰的プログラミング_JavaScript スキル

WBOY
WBOYオリジナル
2016-05-16 18:26:50896ブラウズ

質問: 1 から 100 まで足した合計はいくらですか?

非再帰ループの書き込み:

コードをコピー コードは次のとおりです:

1run: function() {
2 var sum = 0;
3 for(var i=1;i4 sum = sum i; }
6 console.log(sum);
7}

再帰書き込み:


コードをコピー コードは次のとおりです:
var testCase = {
sum: 0,
run: function(n) {
if(n>) ;=100) {
return
}
else {
sum = n testCase.run(n 1);
return sum; >};
console.log(testCase.run(1));


インターネット上には上記のようなコードが多数あります。



コードをコピーします
コードは次のとおりです: console.log((function(n) { var sum=0;
if(nreturn 1;
}
else{
sum = argument.callee(n-1) n;
return sum;
}
})(100));


この書き方は簡単に学べます。上記は線形再帰であり、再帰の入門としては問題ありませんが、アルゴリズムのパフォーマンス効率が少し悪いため考慮されません。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。