《基础算法思想》PPT课件.ppt
《《基础算法思想》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《基础算法思想》PPT课件.ppt(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、零基础学算法零基础学算法第第1章:基础算法思想章:基础算法思想课程安排课程安排编程的灵魂:数据结构编程的灵魂:数据结构+算法算法算法的作用算法的作用递推算法递推算法枚举枚举(穷举穷举)算法算法递归算法递归算法分治算法分治算法贪婪算法贪婪算法试探试探算算法法模拟算法模拟算法算法的评价算法的评价1.1 编程的灵魂:数据结构编程的灵魂:数据结构+算法算法由上面的公式可以看出,程序设计中数据结构和算法是最重要的,是编程的灵魂。数据结构是算法实现的基础,算法总是要依赖于某种数据结构来实现的。往往是在发展一种算法的时候,构建了适合于这种算法的数据结构。一种数据结构如果脱离了算法,也就没有存在的价值了。1.
2、2 算法的作用算法的作用1.2.1 算法的作用算法的作用 解决任何一个实际问题,都不可避免地涉及到算法的问题,例如本章开头提到的存钱问题,再如节假日公司值班人员的排班等,都需要通过一定的算法,得到一个最优(或较优)的方案。1.2.2 实例:看商品猜价格实例:看商品猜价格 首先出示一件价格在999元以内的商品,参与者要猜出这件商品的价格。在猜价格的过程中,主持人会根据参与者给出的价格,相应地给出“高了”或“低了”的提示。1.3 递推算法递推算法 递推算法使用“步步为营”的方法,不断利用已有的信息推导出新的东西。顺推法:是指从已知条件出发,逐步推算出要解决问题的方法。例如:斐波拉契数列就可以通过顺
3、推法不断递推算出新的数据。逆推法:是从已知的结果出发,用迭代表达式逐步推算出问题开始的条件,即顺推法的逆过程。1.3.1 算法思路算法思路1.3.2 顺推实例顺推实例1.3 递推算法递推算法1.3.3 逆推实例逆推实例若在第48月小龙大学毕业时连本带息要取1000元,则要先求出第47个月时银行存款的钱数第47月月末存款=1000/(1+0.0171/12);第46月月末存款=(第47月月末存款+1000)/(1+0.0171/12)依次类推,可以求出第45月、第44月的月末存款的数值第45月月末存款=(第46月月末存款+1000)/(1+0.0171/12)第44月月末存款=(第45月月末存款
4、+1000)/(1+0.0171/12)第2月月末存款=(第3月月末存款+1000)/(1+0.0171/12)第1月月末存款=(第2月月末存款+1000)/(1+0.0171/12)1.3 递推算法递推算法1.4 枚举枚举(穷举穷举)算法算法 枚举法的本质就是从所有候选答案中去搜索正确的解,使用该算法需要满足两个条件:(1)可预先确定候选答案的数量;(2)候选答案的范围在求解之前必须有一个确定的集合。1.4.1 算法思路算法思路1.4 枚举枚举(穷举穷举)算法算法1.4.2 实例:填数游戏实例:填数游戏 由于算术表达式的特殊性,在编程求解这个算式时,需要注意以下几点:当填入除号时,要求右侧的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基础算法思想 基础 算法 思想 PPT 课件
限制150内