https://medium.com/daily-programming-tips/day19-comparing-the-performance-of-sorting-vs-sorted-and-reverse-vs-reversed-3beeced436f2