Sorting is a commonly used operation in computer science. In addition to its main job of arranging lists or arrays in sequence, sorting is often also required to facilitate some other operation such as searching, merging and normalization or used as an intermediate operation in other operations. A sorting algorithm consists of comparison, swap, and assignment operations[1-3]. There are several ...