随笔分类 -  排序

成绩排名(数组自定义排序)
摘要:C++编程考试使用的实时提交系统,具有即时获得成绩排名的特点。它的功能是怎么实现的呢? 我们做好了题目的解答,提交之后,要么“AC”,要么错误,不管怎样错法,总是给你记上一笔,表明你曾经有过一次错误提交,因而当你一旦提交该题“AC”后,就要与你算一算帐了,总共该题错误提交了几回。虽然你在题数上,大步 阅读全文
posted @ 2020-01-14 14:58 qdu_lkc 阅读(634) 评论(0) 推荐(0)
逆序对的数量(归并排序求解)
摘要:给定一个长度为n的整数数列,请你计算数列中的逆序对的数量。 逆序对的定义如下:对于数列的第 i 个和第 j 个元素,如果满足 i < j 且 a[i] > a[j],则其为一个逆序对;否则不是。 输入格式 第一行包含整数n,表示数列的长度。 第二行包含 n 个整数,表示整个数列。 输出格式 输出一个 阅读全文
posted @ 2020-01-12 20:58 qdu_lkc 阅读(310) 评论(0) 推荐(0)
第k个数(排序)
摘要:给定一个长度为n的整数数列,以及一个整数k,请用快速选择算法求出数列的第k小的数是多少。 输入格式 第一行包含两个整数 n 和 k。 第二行包含 n 个整数(所有整数均在1~109109范围内),表示整数数列。 输出格式 输出一个整数,表示数列的第k小数。 数据范围 1≤n≤1000001≤n≤10 阅读全文
posted @ 2020-01-12 20:44 qdu_lkc 阅读(393) 评论(0) 推荐(1)
归并排序模板
摘要://注意数的个数太多的情况下,数组开全局 static int a[]=new int[100005]; static int b[]=new int[100005]; public static void merge_sort(int a[],int l,int r){ if(l>=r) retu 阅读全文
posted @ 2020-01-12 16:03 qdu_lkc 阅读(111) 评论(0) 推荐(0)
快速排序模板
摘要:public static void quick_sort(int a[],int l,int r){ if(l>=r) return; int i=l-1,j=r+1,x=a[l+r>>1]; while(i<j){ do i++; while(a[i]<x); do j--; while(a[j 阅读全文
posted @ 2020-01-12 15:30 qdu_lkc 阅读(88) 评论(0) 推荐(0)