排序算法及其适用场景有哪些