摘要:
外部排序 外存和内存之间的数据交换 操作系统是以“块”为单位对磁盘存储空间进行管理,如:每块大小1KB各个磁盘块内存放着各种各样的数据 磁盘的读/写以“块”为单位进行的。 外部排序原理 使用“归并排序”的方法,最少只需要在内存当中分配3块大小的缓冲区就可以完成对任意大小的文件进行排序。 归并排序:把 阅读全文
posted @ 2020-07-16 13:40
Jev_0987
阅读(923)
评论(0)
推荐(1)
摘要:
基数排序(Radix Sort) 第一趟:个位 收集: 第二趟:十位 第三趟:百位 3元组 基数排序——不是基于“比较”的排序算法 递增就是把收集的过程返过来 算法效率分析 需要r个辅助队列,空间复杂度 = O(r) 一趟分配O(n),一趟收集O(r),总共d趟分配、收集,总的时间复杂度=O(d(n 阅读全文
posted @ 2020-07-16 13:36
Jev_0987
阅读(183)
评论(0)
推荐(0)
摘要:
归并排序 什么是Merge(归并/合并)? 归并:把两个或多个已经有序的序列合并成一个 首先先定义一个更大的数组 接下来可以分别设定指针指向数组的第一个元素 再来就是把指向合并的散装数组里的元素进行对比。。谁小谁进大数组 只剩下一个子表未合并时,可以将该表中剩余元素全部加到总表 “2路”归并 把两个 阅读全文
posted @ 2020-07-16 13:34
Jev_0987
阅读(738)
评论(0)
推荐(0)
摘要:
堆——插入删除 \[ i的左结点—— 2i \] \[ i的右结点——2i+1 \] \[ i的父节点——\lfloor i/2 \rfloor \] 在堆中插入新元素 首先放到表尾的位置,堆底 然后就恢复堆的顺序就好。大小根堆 大根堆:根>左右 在堆中删除元素 被删除的元素用堆底元素替代,然后在恢 阅读全文
posted @ 2020-07-16 13:31
Jev_0987
阅读(234)
评论(0)
推荐(0)
摘要:
堆排序 选择排序: 简单选择排序 堆排序 选择排序:每一趟在待选择元素中选取关键字最小(或最大)的元素加入有序子序列 难理解!! 什么是“堆(Heap)”? 若n个关键字序列L[1...n] 满足下面某一条性质,则称为堆(Heap): 若满足:L(i)≥L(2i) 且L(i)≥L(2i+1) (1≤ 阅读全文
posted @ 2020-07-16 13:30
Jev_0987
阅读(942)
评论(0)
推荐(0)
摘要:
快速排序 交换排序: 冒泡排序 快速排序 算法思想: 先找一个基准元素,比它小的往左去,比它大的往右去。 分成左右两块重复操作。 不断划分,左边都小于基准元素,右边都大于基准元素。 代码(非常重要!!!) //用第一个元素将待排序序列划分成左右两个部分 int Partition(int A[],i 阅读全文
posted @ 2020-07-16 13:26
Jev_0987
阅读(207)
评论(0)
推荐(0)
摘要:
冒泡排序 交换排序: 冒泡排序 快速排序 基于“交换“的排序:根据序列中两个元素关键字的比较结果来对换这两个记录在序列中的位置 定义 从后往前(或从前往后)两两比较相邻元素的值,若为逆序(即A[i-1]>A[i]),则交换他们,直到序列比较完,称这样过程为”一趟“冒泡排序 操作示意 两个两个比较,让 阅读全文
posted @ 2020-07-16 13:24
Jev_0987
阅读(162)
评论(0)
推荐(0)
摘要:
希尔排序(Shell Sort) 先追求表中的部分元素有序,再逐渐逼近全局有序 定义和操作步骤 先将待排序表分割成若干行形如L[i,i+d,i+2d,...,i+kd]的“特殊”子表,对各个子表分别进行直接插入排序。缩小增量d,重复上述过程,直到d=1为止 把相对的位置的大小顺序不对的对调。 第二趟 阅读全文
posted @ 2020-07-16 13:23
Jev_0987
阅读(144)
评论(0)
推荐(0)
摘要:
插入排序 每次将一个待排序的记录按其关键字大小插入到前面已经排好序的子序列中,直到全部记录插入完成 算法实现 //直接插入排序 void InsertSort(int A[] , int n){ int i,j,temp; for(i=1;i<n;i++){ //将各元素插入已经排好序的序列中 if 阅读全文
posted @ 2020-07-16 13:21
Jev_0987
阅读(165)
评论(0)
推荐(0)
摘要:
排序 排序,按照关键字递增或递减重新排列一遍。 排序算法的评价指标 时间复杂度 空间复杂度 算法的稳定性。 排序算法的分类 内部排序:数据都在内存中 外部排序:数据太多,无法全部放入内存 外部排序,除了关注时间复杂度和空间复杂度,还需要关注读/写磁盘次数 知识回顾 阅读全文
posted @ 2020-07-16 13:01
Jev_0987
阅读(110)
评论(0)
推荐(0)