Nまでの総和-配列の逆順
2010/04/02(金) 25:52 Javascript親記事へこのエントリーをはてなブックマークに追加

Nまでの和を再帰で求める

function f(x) return (x==1)?1:x+f(x-1);
(function(x)  return x&&x+arguments.callee(x-1);)(10);// 55
// http://twitter.com/scraperonce/statuses/11489440984

配列を逆順にする。

var ary = [1,2,3,4,5,6,7,8,9,10];
function reverse(ary){
    for(var tmp,i=0,l=ary.length-1;i<l/2;i++){
        tmp = ary[i]
        ary[i] = ary[l-i];
        ary[l-i] = tmp;
    }
    return ary;
}
reverse(ary);
// http://ideone.com/J6NlinDJ

再帰を使って配列を逆順にする

var ary = [1,2,3,4,5,6,7,8,9,10];
function reverse(ary, i){
    i = (i)?i:ary.length-1;
    var l = ary.length-1;
    if (i < l/2){
        return;
    }
    // 交換
        var tmp = ary[i];
        ary[i] = ary[l-i];
        ary[l-i] = tmp;
    reverse(ary , i-1);
}
reverse(ary);
console.log(ary);

名前:  非公開コメント   

  • TB-URL  http://efcl.info/adiary/029/tb/