Quicksort ES6

by Bret Lowrey

HTML

<script src="https://wzrd.in/standalone/minimist@latest"></script>
<script src="https://wzrd.in/standalone/expect@latest"></script>
<body>
Running Tests
</body>

JavaScript

const quicksort = arr => {
	if (arr.length === 0) {
  	return [];
  }
  const [head, ...tail] = arr;
  return [
  	...quicksort(tail.filter(i => i < head)),
    head,
    ...quicksort(tail.filter(i => i >= head))
  ];
};

expect(quicksort([2, 3, 1])).toEqual([1, 2, 3]);

document.body.innerHTML = 'All tests passed';