function(e){if(Array.isArray(e)&&e.length<=1)return e;let t=Math.floor(e.length/2),r=e[t],n=[],i=[r],o=[];return e.forEach((e,a)=>{e<r?n.push(e):e>r?o.push(e):a!==t&&r===e&&i.push(e)}),[...a(n),...i,...a(o)]}

result

[1,2,3,5,6,6,7,8,14,14,333]