描述一种排序数组中数字的算法。
排序算法是一种类型的算法，它以未排序数字的数组作为输入，并将数字数组按升序或降序排序为输出。常见的排序算法包括冒泡排序、归并排序、快速排序和选择排序。冒泡排序通过反复遍历数组、比较元素对并交换它们（如果它们的顺序不对），这样继续下去直到数组排序完毕。归并排序将输入数组分成两个部分，递归地对每个部分排序，然后将它们合并在一起；最终的结果是一个排序好的数组。快速排序通过选择一个元素作为枢轴，然后根据元素相对于枢轴的位置将数组分成较小的子数组；然后对子数组进行递归排序和合并。最后，选择排序通过选择数组中最小的元素，将它与第一个位置的元素交换，选择下一个最小的元素并将其与第二个位置的元素交换，依此类推直到数组排序完成。