An $O(N)$ Sorting Algorithm: Machine Learning Sorting