他板のレスを見て「何が副作用」なのか明記されてないけど「スタック」を考慮してるのかと。
この辺りコミュ不足だな。因みに Javascript は知らない、C言語ならある程度は知ってる。

【IT】プログラミング、誰もが「知らないでは済まされない」時代突入…未習得だと職失う恐れ
227名刺は切らしておりまして2017/07/03(月) 12:04:34.82ID:03x5DZio>>229>>267
Javascriptだが、このQuickSortの副作用を無くすにはどうしたらいいんだ?
純粋関数型だとどう書くのか? 考えたがでてこない。

// QuickSort
QS=X=>{
if (X.length<=1) return X;
var p = X.pop();
return [...QS(X.filter(x=>x<p)), p, ...QS(X.filter(x=>x>=p))];
};
//main
var x=1,
X=[...Array(20)].map(()=>x=(7+37*x)%100);
console.log("in: "+X);
console.log("out: "+QS(X));

240名刺は切らしておりまして2017/07/03(月) 12:16:45.15ID:03x5DZio>>250
>>229
QuickSort自体は>>227で実装できてるから副作用を無くす方法がしりたいんだが・・・
コードの実行結果はこれ。

stdout
in: 44, 35, 2, 81, 4, 55, 42, 61, 64, 75, 82, 41, 24, 95, 22, 21, 84, 15, 62, 1
out: 1, 2, 4, 15, 21, 22, 24, 35, 41, 42, 44, 55, 61, 62, 64, 75, 81, 82, 84, 95
http://ideone.com/4llCfv