算法 - yingziaiai/SetupEnv GitHub Wiki

麻省理工学院公开课:算法导论 http://open.163.com/special/opencourse/algorithms.html

数据结构与算法:http://www.cnblogs.com/null00/category/302716.html

看排序相关算法时,脑袋中也总是萦绕几个概念,好像曾经课堂学过:动态规划,模拟退火算法。背包问题,旅行商问题;贪心算法,斐波那契堆,最小生成树,八皇后问题,NP问题,回溯算法,汉诺塔

总分为动态规划算法,最优化算法, 常见的几种最优化方法--http://www.tuicool.com/articles/EfInM3Q 五大常用算法:http://blog.csdn.net/u010215648/article/details/48784861 https://www.zhihu.com/question/31990516 动态规划:从新手到专家--http://blog.csdn.net/doc_sgl/article/details/9026405

神经网络法、模拟退火法、数学规划法、遗传算法、禁忌搜索

采用广度优先策略搜索的算法是( ).A、分支界限法 B、动态规划法 C、贪心法 D、回溯法

算法导论这本书中描述了集合,线性规划,矩阵等各种问题:

再就是很清晰的记得在学习操作系统时互斥同步中有哲学家进餐,生产者消费者等经典问题。。。--http://blog.csdn.net/qq_24451605/article/details/49668201

计算机问题求解课程的内容建设 其实通过分析这些问题可以了解计算机领域的基本思维,基本方法,基本技术。(计算机导论,离散数学, 程序设计,数据结构,算法设计与分析,

问题分析(输入输出的表述)→建立数学模型(这里主要是指离散数学模型)→确定适当的数据结构和算法结构→编写程序并在计算机上运行以获得结果 → 对于算法进行正确性证明和复杂性分析→试图改进

即良好的数学基础以及进行计算思维和数学证明的能力、理解并能够根据需要运用适当的数据结构和算法方法的能力、算法分析的能力。

计算机导论:应该是导思想-计算思维方式, 如何用计算机解题,将传递思想和训练技能这两个任务分离开来

离散数学: 主要由逻辑、集合论、图论和代数四部分构成,有时会让学生产生学了不知道有什么用的想法,影响了学生的兴趣,同时弱化了对学生数学证明能力的培养,现在转变为 以集合论内容为载体,加强对学生逻辑证明能力的培养, 而对图、计数与组合、离散概率、抽象代数等内容的讲解则与计算机算法设计与分析的应用尽可能相结合

将数据结构与算法设计与分析:与主题问题求解贯穿其中,在经典数据结构与算法的基础上,增加了近似算法与随机算法的内容。

其于上述四门课程的分析: 第一:计算入门与数学证明:理解计算思维最核心的概念,了解计算的基本方法与局限;接受基本的形式化训练,掌握抽象数学证明的基本方法。

1-1 为什么计算机能解题1-2 什么样的推理是正确的1-3 常用的证明方法1-4 基本的算法结构1-5 数据与数据结构1-6 算法的描述1-7 不同的程序设计方法1-8 集合及其运算1-9 关系及其基本性质1-10 函数1-11 算法方法1-12 算法正确性1-13 有限与无限1-14 算法的效率1-15 问题的难度 1-16 基本计算模型与不可计算性1-17 并行与并发1-18 模算术与费马小定理

第二:经典数据结构与算法:理解数据抽象,理解并能够应用常用的数据结构;掌握重要算法设计策略以及算法设计与分析的基本方法;理解并能够应用支持上述内容的离散数学工具与方法

2-1 算法问题与解题的算法2-2 组合与计数2-3 分治法与递归2-4 递归及其数学基础2-5 离散概率基础2-6 概率分析与随机算法2-7 排序与选择2-8 基本数据结构2-9 堆与堆排序2-10 Hashing方法2-11 搜索树2-12 动态规划2-13 贪心算法 2-14 用于动态等价关系的数据结构2-15 图的基本概念 2-16 图的计算机表示以及遍历2-17 树 2-18 最小生成树算法

第三:典型应用问题及其求解方法 掌握从典型应用问题中抽象出重要算法问题的求解方法;理解并能够应用支持上述内容的离散数学工具与方法

3-1 单源最短通路算法3-2 多源最短通路算法3-3 图中的匹配与覆盖3-4 图的连通度与网络流3-5 最大流算法3-6 图论中的其它专题3-7 矩阵计算3-8 线形规划3-9 多项式与FFT3-10 群与拉格朗日定理 3-11 环与域3-12 数论基础3-13 数论算法3-14 密码算法3-15 代数编码3-16 群与对称3-17 串匹配3-18 计算几何算法

第四:复杂性理论初步与“难”问题的算法: 掌握复杂性理论的基本内容与问题归约方法;掌握解决“难”问题的主要方法,理解相关的重要理论结果

4-1 问题的形式化描述4-2 NP完全理论初步4-3 伪多项式算法4-4 分支—界限算法4-5 局部搜索算法4-6 松弛算法 4-7 近似算法的基本概念4-8 覆盖问题与最大割集问题4-9 背包问题4-10 旅行推销商问题4-11 Bin-Packing问题4-12 随机算法的基本概念4-13 素性判定问题4-14 等价测试问题4-15 最小割集问题4-16 可满足问题4-17 去随机方法4-18 启发式算法

http://www.importnew.com/13072.html 背包问题: 假定背包的最大容量为W,N件物品,每件物品都有自己的价值和重量,将物品放入背包中使得背包内物品的总价值最大。

包问题—动态规划求解-http://www.tuicool.com/articles/yMFfey