摘要:
一:基本思想 二:图解实现过程 三:代码实现 四:快速排序优化 (一)优化选取枢轴 改进方法 (二)优化不必要的交换 (三)优化小数组 (四)优化递归操作(尾递归) 尾递归 递归与尾递归总结 普通递归 尾递归 代码实现 五:性能分析 阅读全文
摘要:
图解排序算法(四)之归并排序 定义 基本思想 分而治之 实现 递归实现 非递归实现 性能分析 阅读全文
摘要:
一:定义 二:堆排序算法 三:图解演示,构造堆(大顶堆) 在构造有序堆时,我们开始只需要扫描一半的元素(n/2-1 ~ 0)即可,为什么? 因为(n/2-1)~0的节点才有子节点,如图1,n=8,(n/2-1) = 3 即3 2 1 0这个四个节点才有子节点 第一次找到[n/2]处,进行构造: 我们 阅读全文
摘要:
图解排序算法(二)之希尔排序 定义 基本思想 图解算法 代码实现 性能分析 阅读全文
摘要:
经典排序算法 直接插入排序算法及其改进(稳定) 定义: 实现思想 基本思想 代码实现 性能分析 阅读全文
摘要:
一:简单选择排序 定义: 实现: 性能分析: 阅读全文
摘要:
定义 数据: 版本一 冒泡排序(我们最常想到的) int main() { SqList s; s.length = 0; int i; int a[10] = { 5, 2, 6, 0, 3, 9, 1, 7, 4, 8 }; for (i = 0; i < 10; i++) { s.r[i + 阅读全文
摘要:
一:定义 二:排序的稳定性 三:内排序和外排序 内排序和外排序的区分就是: 定义: 影响因素: 四:排序算法的种类 按照算法的复杂度分为两大类: 五:结构定义 阅读全文
摘要:
一:概述 二:散列表查找步骤 (1)在存储时,通过散列函数计算记录的散列地址,并按此散列地址存储该记录; (2)在查找时,通过同样的散列函数计算记录的散列地址,按此散列地址访问该记录。 三:散列函数的构造方法 要求: 1.计算简单 2.散列地址分布均匀 (一)直接定址法(使用某个线性函数值作为散列地 阅读全文
摘要:
前提 B+树 下图就是B+树,灰色关键字,在根节点出现,在叶子节点中再次列出。 与B树比较 阅读全文