排序
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 · 581 阅读 · 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 · 1456 阅读 · 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 · 727 阅读 · 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 · 631 阅读 · 0 评论