patt=function(arr){
if(arr.constructor.name!="Array")
return [];
arr=arr.slice();
if(arr.length==1)
return [arr];
else if(arr.length==2)
return [arr,arr.slice().reverse()];
else
{
let sum=[];
let el=arr.shift();
let darr=patt(arr);
for(var i in new Array(arr.length+1).fill(0))
sum.push(...darr.map(item=>
{
let cp=item.slice();
cp.splice(i,0,el);
return cp;
}));
return sum;
}
};
沒有留言:
張貼留言