没考虑到交换a[x],a[y]时对于已排序的数组用归并来交换的话是O(N)
但是!我觉得优先队列是个非常优秀的数据结构!于是就有了将a[x],a[y]都丢尽优先队列q,然后再取出给回a[x],a[y],时间复杂度上存取都是logn,所以对于每次n个数据的操作就是n * logn,相比归并排序多了个logn,过不了最后一个样例,但是,我对80分很满意^^