归并排序
Gnomeshgh___
这个作者很懒,什么都没留下…
展开
-
逆序对数(归并排序)
逆序对数问题描述:给定一个长度为n的整数数列,请你计算数列中的逆序对的数量。逆序对的定义如下:对于数列的第 i 个和第 j 个元素,如果满足 i < j 且 a[i] > a[j],则其为一个逆序对;否则不是。输入格式第一行包含整数n,表示数列的长度。第二行包含 n 个整数,表示整个数列。输出格式输出一个整数,表示逆序对的个数。数据范围1≤n≤100000问题分析这个题可以用归并排序来写。每次把一个数组分成两个子数组,递归对两边的子数组进行排序,在递归处理排序时可以直接计原创 2020-11-02 22:50:58 · 1993 阅读 · 0 评论 -
排序算法归并排序
归并排序归并排序也是一种采用分治思想的排序,它的时间复杂度是O(nlogn),是一种非常优秀的排序算法。归并排序原理归并排序的原理是将一个数组分成若干个子数组, 递归求解这些子数组。然后在对这些子数组进行归并,得出最终答案。也就是当数组只有一个元素的时候它一定是有序的。图解AC代码#include<iostream>#include<algorithm>using namespace std;const int N = 100010;int n;int原创 2020-11-01 10:22:53 · 51 阅读 · 0 评论