本课程旨在介绍算法的基本概念和重要性,特别针对计算机科学和工程学的学生。算法不仅是大学课程中的核心科目,也是编程竞赛和求职面试中的关键。课程将从基础到深入,帮助学生理解算法,解决学习中的困难,并提供实践机会。讲师强调了算法设计阶段的重要性,以及算法与程序之间的区别。
01 算法导论终极算法课程 Abdul Bari 中文配音 双语字幕
—00 算法导论
—01 先验分析与后验测试
—02 算法的特性
—03 如何编写和分析算法
—04 频率计数方法
—05 时间复杂度
—06 时间复杂度示例
—07 while和if的时间复杂度
—08 函数类别
—09 比较函数类
—10 渐进符号_大O_欧米伽_西塔
—11 渐进记号_-_大O_-_Ω_-_Θ_
—12 渐近符号的性质
—13 函数比较 1
—14 函数比较 2
—15 算法的最佳、最坏和平均情况分析
—16 不相交集数据结构 – 加权联合与折叠查找
02 分而治之 终极算法课程 Abdul Bari 中文配音 双语字幕
—17 分而治之
—18 递归关系_(T(n)=_T(n-1)_+_1)
—19 递归关系_(T(n)=_T(n-1)_+_n)
—20 递归关系_(T(n)=_T(n-1)_+_log_n)
—21 递归关系_T(n)=2_T(n-1)+1
—22 主定理_递减函数
—23 递归关系_分治函数_T(n)=T(n2)+1
—24 递归关系分治法_[_T(n)=T(n2)+n]
—25 递归关系_[_T(n)=_2T(n_2)_+n]
—26 算法中的主定理:分割函数
—27 主定理的示例
—28 根函数的递归关系
—29 二分查找_迭代方法
—30 二分查找递归方法
—31 堆_堆排序_堆化_优先队列
—32 双向归并排序_-_迭代方法
—33 归并排序算法
—34 归并排序深入分析
—35 快速排序算法
—36 快速排序分析
—37 Strassen的矩阵乘法
03 贪心算法 终极算法课程 Abdul Bari 中文配音 双语字幕
—38 贪心算法简介
—39 背包问题
—40 带期限的工作排序
—41 最优合并模式
—42 霍夫曼编码
—43 普里姆与克鲁斯卡尔算法
—44 Dijkstra算法 单源最短路径
04 最优性原则-动态编程导论 终极算法课程 Abdul Bari 中文配音 双语字幕
—45 动态编程导论
—46 多阶段图 – 动态规划
—47 多阶段图_(程序)_-_动态规划
—48 所有对最短路径_(Floyd-Warshall)_-_动态规划
—49 矩阵链乘法_-_动态规划
—50 [新]使用动态编程公式的矩阵链乘法
—51 矩阵链乘法_(程序)_-_动态规划
—52 Bellman_Ford算法-单源最短路径-动态规划
—53 背包问题 – 两种方法 – 动态规划
—54 背包问题_(程序)_-_动态规划
—55 最优二叉搜索树(仅成功搜索)_动态规划
—56 [新]_最优二叉搜索树_成功与不成功概率_-_动态规划
—57 [新]_旅行商问题_-_使用公式的动态规划
—58 可靠性设计_-_动态规划
—59 最长公共子序列_(LCS)_-_递归与动态规划
05 图的遍历 终极算法课程 Abdul Bari 中文配音 双语字幕
—60 图的遍历_-_广度优先搜索与深度优先搜索
—61 关节点与双连通分量
06 回溯法 终极算法课程 Abdul Bari 中文配音 双语字幕
—62 回溯法简介 – 暴力方法
—63 使用回溯法解决N皇后问题
—64 子集和问题_-_回溯法
—65 图着色问题_-_回溯法
—66 哈密尔顿回路_-_回溯法
07 分支限界法简介 终极算法课程 Abdul Bari 中文配音 双语字幕
—67 分支限界法简介
—68 带期限的工作排序问题 – 分支限界法
—69 使用分支限界法解决背包问题
—70 旅行商问题_-_分支限界法
08 NP问题KMP算法AVL树 终极算法课程 Abdul Bari 中文配音 双语字幕
—71 NP难与NP完全问题
—72 NP难图问题_-_团决策问题
—73 Knuth-Morris-Pratt_KMP_字符串匹配算法
—74 Rabin-Karp字符串匹配算法
—75 AVL树-插入与旋转
—76 B树和B+树。它们在数据库中的用途
—77 渐近记号 – 简化版
—78 哈希技术 – 简化版
—79 最短路径算法(Dijkstra与Bellman-Ford) – 简化版
—80 广度优先搜索与深度优先搜索 – 简化版
—81 汉诺塔问题 – 轻松掌握
—82 行主序与列主序映射
—83 归并排序算法