
排序算法
基本的排序算法
�我在
这个作者很懒,什么都没留下…
展开
-
ACM 基本排序算法,归并排序(求逆序对)
归并排序主要运用到的的思想:分治、递归功能:1.数组进行排序。 2.计算数组中的逆序对的个数。时间复杂度:稳定的O(nlogn)空间复杂度:O(n)附上模板代码:#include<bits/stdc++.h>using namespace std;long long Merge(int a[],int b[],int s,int m,int e){ int i=s,j=m+1,k=s; long long ans=0; while(i<=m &原创 2020-09-29 12:26:55 · 357 阅读 · 0 评论 -
快速排序 以及数组第k大的应用
时间复杂度为:平均为nlog(n),最坏为n²,但很难达到最坏情况空间复杂度为:O(1),不需要辅助数组,归并排序需要一个O(n)的辅助数组快速排序第一种写法:#include<bits/stdc++.h>using namespace std;int n, a[100005];void quickSort(int *a, int l, int r){ if(l >= r) return ; int mid = a[(l+r)/2]; i原创 2021-10-17 11:17:58 · 133 阅读 · 0 评论