知识点: 排序分为内排序和外排序。内排序是在排序整个过程中,待排序的所有记录全部被放置在内存中。外排序是由于排序的记录个数太多,不能同时放置在内存,整个排序过程需要在内外存之间多次交换数据才能进行。这里主要介绍内排序: 内排序可分为四种,交换排序、选择排序、插入排序、归并排序。 排序的稳定性: 若k ...
分类:
编程语言 时间:
2019-07-12 17:01:18
阅读次数:
152
一,列表的常用方法:(列表类型的补充) 1.reverse 将列表反转 l = [1,2,3,4,5,6] l.reverse [6,5,4,3,2,1] 2.clear 清除,将列表清除,返回的值的None,也就是不会返回值 3.sort 排序 , 将列表内排序,从小到大的方式 4.索引,切片,长 ...
分类:
编程语言 时间:
2019-07-05 20:54:06
阅读次数:
113
解法: 题目2:map及rudece阶段共有几次排序 1)当map函数产生输出时,会首先写入内存的环形缓冲区,当达到设定的阀值,在刷写磁盘之前,后台线程会将缓冲区的数据划分成相应的分区。在每个分区中,后台线程按键进行内排序2)在Map任务完成之前,磁盘上存在多个已经分好区,并排好序的,大小和缓冲区一 ...
分类:
其他好文 时间:
2019-05-31 21:47:32
阅读次数:
170
莫队算法解决的问题 1.查询区间[L,R]上不同种类元素的数量,时间复杂度O(n*sqrt(n)); 2.单点更新+查询 步骤 1.记录所有查询(离线操作) 2.对于所有查询进行分块,然后在每个unit内排序 3.用l,r表示指针,进行对于指针所指的区域进行答案的记录 (如果存在单点更新,则为"带修 ...
分类:
编程语言 时间:
2019-04-15 13:09:01
阅读次数:
171
关于排序术语: 内排序:排序数据放置在内存中,排序操作在内存中进行 外排序:排序数据放置在磁盘中,通过磁盘和内存进行的数据传输进行排序操作 时间复杂度:算法执行所消耗的时间 空间复杂度:运行完一个程序所需内存的大小 冒泡排序 ...
分类:
编程语言 时间:
2019-04-07 13:10:27
阅读次数:
192
总结于(网址有算法源码): "http://www.cnblogs.com/liuling/p/2013 7 24 01.html" 排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。 内排序: (1)、插入排序:直接 ...
分类:
编程语言 时间:
2019-04-04 09:34:24
阅读次数:
156
在一个月黑风高的夜晚,自己无聊学习的SQL的时候,练习,突发奇想的想实现一个功能查询,一张成绩表有如下字段,班级ID,英语成绩,数据成绩,语文成绩如下图 实现 查询出 每个班级英语成绩最高的前两名的记录。 看起来不难的业务,做起来才知道还挺麻烦的,说白了其实就是实现分组后的组内排序,一般不思考的话我 ...
分类:
数据库 时间:
2019-01-06 10:51:41
阅读次数:
529
0、排序算法说明 0.1 排序的定义 对一序列对象根据某个关键字进行排序。 0.2 术语说明 稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面; 不稳定:如果a原本在b的前面,而a=b,排序之后a可能会出现在b的后面; 内排序:所有排序操作都在内存中完成; 外排序:由于数据太大,因此把数 ...
分类:
编程语言 时间:
2018-12-16 00:53:25
阅读次数:
196
排序算法术语说明 稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面;不稳定:如果a原本在b的前面,而a=b,排序之后a可能会出现在b的后面; 内排序:所有排序操作都在内存中完成;外排序:由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行; 时间复杂度: 一个算法执 ...
分类:
编程语言 时间:
2018-11-27 17:10:44
阅读次数:
235
计数排序只适用于整数在小范围内排序 $arr = [95,94,91,98,99,90,99,93,91,92];function countSort($arr){ $max = $arr[0]; $min = $arr[0]; for($i=0;$i<count($arr);$i++){ if($ ...
分类:
编程语言 时间:
2018-10-10 10:37:33
阅读次数:
171