- 世界末日的预言 - 诺查丹玛斯的预言 - 千年虫问题 - 马亚人的古日利预言 - 2012年12月31日问题 - 古印度汉诺塔预言 - 创世纪之初的神庙传说 - 三根银杆与64个金盘 - 规则:大盘在下,小盘在上 - 神的预言:移动完成时世界末日降临 - 汉诺塔问题的数学分析 - 移动次数公式 - A的64次方减一 - 总次数:1844亿亿次 - 时间估算 - 每秒移动一次需5800亿年 - 地球存在时间仅40亿年 - 计算机解决汉诺塔问题 - 必备知识 - 程序设计知识 - 地规设计 - 数据结构知识 - 栈的应用 - 递归方法的核心 - 地规公式的确定 - 边界条件的确定 - 解决步骤 - 将N个盘子分为两部分 - 移走前N-1个盘子 - 移动第N个盘子 - 借助不同杆子完成移动 - 第一步:A杆到C杆借助B杆 - 第二步:A杆到C杆 - 第三步:B杆到C杆借助A杆 - 程序实现 - 递归函数的设计 - 参数:盘子数量、杆子标识 - 边界条件:N等于1时结束 - 示例:三个盘子的移动过程 - 分解为单个盘子的移动 - 回溯解决多盘子问题 - 算法复杂度分析 - 时间复杂度:O(2的N次方) - 计算量庞大 - 人工无法完成 - 天河二号计算机需数小时 - 总结 - 确定地规公式和边界条件 - 递归与栈的应用是关键 - 计算时间复杂度 - 根据前面讲解过程 - 回顾内容并应用 - 编写小游戏 - 巩固所学知识 - 消化课程内容 - 总结与致谢 - 结束讲解 - 感谢听众