排序
NOTTME
这个作者很懒,什么都没留下…
展开
-
归并排序(求逆序数对)
#include #include using namespace std;int A[1000005];long long int ans=0;void merge(int l,int r){ int mid=(l+r)/2; int left[mid-l+1]; int right[r-mid]; int i; int lcount=0,rcount=0;原创 2013-12-15 21:25:46 · 578 阅读 · 0 评论 -
寻找第k大数(快排思想)
剔除了相同的数,快排是从小到大排序的,所以k做了处理。#include #include using namespace std;int hash[20000005]={0};int A[10000005];int counter=0;int k;int partition(int *A,int l,int r){ int x=A[r]; int i,j;原创 2013-12-04 20:21:56 · 1454 阅读 · 0 评论 -
Sicily1154(快排)
#include #include using namespace std;int partition(int *A,int l,int r){ int x=A[r]; int i,j; int temp; i=l-1; for (j=l;j<=r-1;j++) if (A[j]<=x) { i=i+1; temp=A[j]; A[j]=A[i];原创 2013-11-28 14:27:36 · 724 阅读 · 0 评论 -
POJ2299(归并排序)
#include #include __int64 counter;void merge(long int A[],int p,int q,int r){ int n1,n2,i,k,j,m=1,n=1; long int *L,*R; n1=q-p+1; n2=r-q; L=malloc((n1+2)*sizeof(int)); R=malloc((n2+2)*sizeof(原创 2013-05-07 00:38:54 · 630 阅读 · 0 评论