目录 10.1 贪婪算法 10.1.1 调度问题 10.1.1.1 单处理器 10.1.1.2 多处理器 10.1.2 Huffman编码 哈夫曼算法 10.1.3 近似装箱问题 ...
目录 插入排序 希尔排序 堆排序 归并排序 快速排序 实现原理 选择枢纽元 分割策略 小数组 实际的快速排序例程 选择的线性期望时间算法 大型结构的排序 排序的一般下界 决策树 桶式排序 外部排序 外部排序模型 简单算法 多路合并 多相合并 替换选择 总结 参考文献 插入排序 插入排序由N 趟排序组成,对于P 趟到P N 趟,插入排序保证从位置 到位置P上的元素为已排序状态 基本有序或者规模较小 ...
2021-02-20 17:26 0 288 推荐指数:
目录 10.1 贪婪算法 10.1.1 调度问题 10.1.1.1 单处理器 10.1.1.2 多处理器 10.1.2 Huffman编码 哈夫曼算法 10.1.3 近似装箱问题 ...
目录 6.1 模型 6.2 简单实现 6.3 二叉堆 6.3.1 结构性质 6.3.2 堆序性质 6.3.3 实现 6.3.4 其他的堆操作 6.4 优先队列的应用 6.4.1 选择问题 ...
目录 3.1 抽象数据类型 3.2 表ADT 3.2.1 表的简单数组实现 3.2.2 链表 3.2.3 程序设计细节 3.2.4 常见的错误 3.2.5 双链表 3.2.6 循环链表 3.2.7 例子 ...
分析 4.4 AVL树 4.4.1 单旋转 4.4.2 双旋转 ...
目录 5.2 散列函数 5.3 分离链接法(separate chaining) 5.3.1 实现 5.4 开放定址法(Open address ...
一、对算法分析方法的最简单的理解和使用方法 1、首先大家可能一般会被那些数学的概念搞晕,其实简单理解下来,就是假设任何语句执行的效率都是一样的,所以设定每一个语句的执行时间都是一个时间单位,那么只要计算这个程序到底执行了多少语句,就可以算出其时间复杂度。 2、其次就是我们要明白,我们是个估算 ...
算法 算法(algorithm)是为求解一个问题需要遵循的、被清楚地指定的简单指令的集合。 数学基础 四个定义 1. 大O表示法: 如果存在正常数 c 和 n0 使得当 N ≥ n0时,T(N) ≤ cf(N),则记为T(N) = O(f(N))。 (描述了T(N)的相对增长率 ...
问题引出 假设有一道题目:有一组N个数而要确定其中第k个最大者,我们称之为选择问题,那么这个程序如何编写?最直观地,至少有两种思路: 1、将N个数读入一个数组中,再通过某种简单的算法,比如冒泡排序法,以递减顺序将数组排序,则第k个位置上的元素就是我们需要的元素 2、稍微好一些的做法,将k ...