算法的乐趣

第1章 程序员与算法

  1.1 什么是算法

  1.2 程序员必须要会算法吗

    1.2.1 一个队列引发的惨案

    1.2.2 我的第一个算法

  1.3 算法的乐趣在哪里

  1.4 算法与代码

  1.5 总结

  1.6 参考资料

第2章 算法设计的基础

  2.1 程序的基本结构

    2.1.1 顺序执行

    2.1.2 循环结构

    2.1.3 分支和跳转结构

  2.2 算法实现与数据结构

    2.2.1 基本数据结构在算法设计中的应用

    2.2.2 复杂数据结构在算法设计中的应用

  2.3 数据结构和数学模型与算法的关系

  2.4 总结

  2.5 参考资料

第3章 算法设计的常用思想

  3.1 贪婪法

    3.1.1 贪婪法的基本思想

    3.1.2 贪婪法的例子:0-1背包问题

  3.2 分治法

    3.2.1 分治法的基本思想

    3.2.2 递归和分治,一对好朋友

    3.2.3 分治法的例子:大整数Karatsuba乘法算法

  3.3 动态规划

    3.3.1 动态规划的基本思想

    3.3.2 动态规划法的例子:字符串的编辑距离

  3.4 解空间的穷举搜索

    3.4.1 解空间的定义

    3.4.2 穷举解空间的策略

    3.4.3 穷举搜索的例子:Google方程式

  3.5 总结

  3.6 参考资料

第4章 阿拉伯数字与中文数字

  4.1 中文数字的特点

    4.1.1 中文数字的权位和小节

    4.1.2 中文数字的零

  4.2 阿拉伯数字转中文数字

    4.2.1 一个转换示例

    4.2.2 转换算法设计

    4.2.3 算法实现

    4.2.4 中文大写数字

  4.3 中文数字转阿拉伯数字

    4.3.1 转换的基本方法

    4.3.2 算法实现

  4.4 数字转换的测试用例

  4.5 总结

  4.6 参考资料

第5章 三个水桶等分8升水的问题

  5.1 问题与求解思路

  5.2 建立数学模型

    5.2.1 状态的数学模型与状态树

    5.2.2 倒水动作的数学模型

  5.3 搜索算法

    5.3.1 状态树的遍历

    5.3.2 剪枝和重复状态判断

  5.4 算法实现

  5.5 总结

  5.6 参考资料

第6章 妖怪与和尚过河问题

  6.1 问题与求解思路

  6.2 建立数学模型

    6.2.1 状态的数学模型与状态树

    6.2.2 过河动作的数学模型

  6.3 搜索算法

    6.3.1 状态树的遍历

    6.3.2 剪枝和重复状态判断

  6.4 算法实现

  6.5 总结

  6.6 参考资料

第7章 稳定匹配和舞伴问题

  7.1 稳定匹配问题

    7.1.1 什么是稳定匹配

    7.1.2 Gale-Shapley算法原理

  7.2 Gale-Shapley算法的应用实例

    7.2.1 算法实现

    7.2.2 改进优化:空间换时间

  7.3 有多少稳定匹配

    7.3.1 穷举所有的完美匹配

    7.3.2 不稳定因素的判断算法

    7.3.3 穷举的结果

  7.4 二部图与二分匹配

    7.4.1 最大匹配与匈牙利算法

    7.4.2 带权匹配与Kuhn-Munkres算法

  7.5 总结

  7.6 参考资料

第8章 爱因斯坦的思考题

  8.1 问题的答案

  8.2 分析问题的数学模型

    8.2.1 基本模型定义

    8.2.2 线索模型定义

  8.3 算法设计

    8.3.1 穷举所有的组合结果

    8.3.2 利用线索判定结果的正确性

  8.4 总结

  8.5 参考资料

第9章 项目管理与图的拓扑排序

  9.1 AOV网和AOE网

  9.2 拓扑排序

    9.2.1 拓扑排序的基本过程

    9.2.2 按照活动开始时间排序

  9.3 关键路径算法

    9.3.1 什么是关键路径

    9.3.2 计算关键路径的算法

  9.4 总结

  9.5 参考资料

第10章 RLE压缩算法与PCX图像文件格式

  10.1 RLE压缩算法

    10.1.1 连续重复数据的处理

    10.1.2 连续非重复数据的处理

    10.1.3 算法实现

  10.2 RLE与PCX图像文件格式

    10.2.1 PCX图像文件格式

    10.2.2 PCX_RLE算法

    10.2.3 256色PCX文件的解码和显示

  10.3 总结

  10.4 参考资料

第11章 算法与历法

  11.1 格里历(公历)生成算法

    11.1.1 格里历的历法规则

    11.1.2 今天星期几

    11.1.3 生成日历的算法

    11.1.4 日历变更那点事儿

  11.2 二十四节气的天文学计算

    11.2.1 二十四节气的起源

    11.2.2 二十四节气的天文学定义

    11.2.3 VSOP-82/87行星理论

    11.2.4 误差修正-章动

    11.2.5 误差修正-光行差

    11.2.6 用牛顿迭代法计算二十四节气

  11.3 农历朔历(新月)的天文学计算

    11.3.1 日月合朔的天文学定义

    11.3.2 ELP-2000/82月球理论

    11.3.3 误差修正-地球轨道离心率修正

    11.3.4 误差修正-黄经摄动

    11.3.5 月球地心视黄经和最后的修正-地球章动

    11.3.6 用牛顿迭代法计算日月合朔

  11.4 农历的生成算法

    11.4.1 中国农历的起源与历法规则

    11.4.2 中国农历的推算

    11.4.3 一个简单的"年历"

  11.5 总结

  11.6 参考资料

猜你喜欢

转载自www.cnblogs.com/revoid/p/9594551.html
今日推荐