This paper introduces a new sorting algorithm called 'index sort,' which sorts elements recursively using previously sorted elements as indices. The algorithm outperforms existing sorting methods by efficiently handling random and reverse-sorted inputs and is demonstrated through implementation results. Key components of the algorithm include binary search for positioning elements and sorting based on an expanding index, achieving promising results in terms of time complexity.