排序
文章平均质量分 78
Sylvia的三个月突击史
这个作者很懒,什么都没留下…
展开
-
排序练习
九度1185题目描述:输入一系列整数,将其中最大的数挑出,并将剩下的数进行排序。 12输入:输入第一行包括1个整数N,1<=N<=1000,代表输入数据的个数。 接下来的一行有N个整数。 123输出:可能有多组测试数据,对于每组数据, 第一行输出一个整数,代表N个整数中的最大值,并将此值从数组中去除,将剩下的数进行排序。 第二行将排序的结果输出。 1234样例输入:4 1 3 4 2 ...原创 2018-01-30 12:51:38 · 253 阅读 · 0 评论 -
排序类方法(冒泡、sort快排)
冒泡排序 复杂度O(n²)100*100=10000在百万级别内(1s内) #include int main(int argc, char* argv[]) { int n; int a[100]; while(scanf("%d",&n)!=EOF) //读入数,Ctrl+z即可退出 { //如果是读入字符串的话则要用 while(gets(字符串变量)) in原创 2018-01-28 17:24:38 · 493 阅读 · 0 评论 -
堆排序
北大17年机试中就出现了堆排序的题,今天上课也讲到了这个算法,索性实现一下。堆排序算法理解起来很容易:1. 先遍历节点(除叶子之外),不断比较节点与左右子树的大小并进行swap交换,进行一个adjust调整的递归调用,最终堆顶为最大或者最小值;2. 然后把堆顶元素放到数组最后,对剩下的元素进行上述的调整过程。堆排序 时间复杂度为nlogn,但是是不稳定的建堆(初始化+调整堆, 时间复杂度为O(n)...原创 2018-04-02 11:30:52 · 98 阅读 · 0 评论