当前位置: 首页 > news >正文

专用车网站建设价格平度市城乡建设局网站

专用车网站建设价格,平度市城乡建设局网站,如何更快的让百度收录网站,毕业设计代做的网站好编程思想#xff1a;如何利用数学模型#xff0c;来解决对应的需求问题#xff1b;然后利用代码实现对应的数据模 算法#xff1a;使用代码实现对应的数学模型#xff0c;从而解决对应的业务问题 程序 算法 数据结构 在我们经常使用的算法中#xff0c;有两种非常常…编程思想如何利用数学模型来解决对应的需求问题然后利用代码实现对应的数据模 算法使用代码实现对应的数学模型从而解决对应的业务问题 程序 算法 数据结构 在我们经常使用的算法中有两种非常常用的算法递推算法 递归算法专门用于解决一些比较复杂但是拆分后相似度又非常高的程序。 递推算法 递归算法递推算法是一种简单的算法即通过已知条件利用特定条件得出中间推论直至得到结果的算法。递推又分为顺推和逆推。 顺推通过最简单的条件然后逐步推演结果 逆推通过结果找到规律然后推导已知条件 递推算法案例斐波那契数列 1 1 2 3 5 8 13 21 ... ① ② ③ ④ ⑤ ⑥ ... 第1位为1第2位为1第3位为2 1 1第4位为3 2 1依次类推...第n位结果为多少 f(n) f(n-1) f(n-2) 提出问题求斐波那契数列第15位的结果 分析f(15) f(14) f(13) f(14) f(13) f(12) f(13) f(12) f(11) ... f(4) f(3) f(2) 3 1 f(3) f(2) f(1) 2 f(2) 1 f(1) 1 递推算法使用while循环或for循环 # 递推算法根据已知条件求结果或者根据结果求未知条件 def recusive(n): 返回斐波那契数列某一位n1的结果 if n 1 or n 2:return 1# 开始递推f(3) f(2) f(1) f(4) f(3) f(2) ... f(15) f(14) f(13)dict1 {1:1, 2:1}for i in range(3, n1):# f(3) f(2) f(1)# f(i) f(i-1) f(i-2)dict1[i] dict1[i-1] dict1[i-2]return dict1[n]# 函数调用 print(recusive(15)) 什么是递归算法 程序调用自身的编程技巧称为递归 recursion。递归做为一种算法在程序设计语言中广泛应用它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算大大地减少了程序的代码量。 ① 简化问题找到最优子问题不能再小 ② 函数自己调用自己 def func():# 自己调用自己func()func() 递归两种重要的元素 递归有两个非常重要的概念 ① 递归点找到解决当前问题的等价函数先解决规模比当前问题小一些的函数依次类推最终实现对问题的解决 有递有归 ② 递归出口当问题解决的时候已经到达必须存在最优问题不能再次调用函数了 注如果一个递归函数没有递归出口就变成了死循环 编写递归三步走 ① 明确你这个函数想要干什么 如求斐波那契数列 ② 寻找递归结束条件 如就是在什么情况下递归会停止循环返回结果 ③ 找出函数的等价关系式 如斐波那契数列第n位 f(n) f(n-1) f(n-2) 案例1使用递归求斐波那契数列 第一步明确这个函数想要干什么先定义出来明确调用方式 # 斐波那契数列 1 1 2 3 5 8 13 21 ... def f(n):# 编写递归代码求第n位的结果# 调用函数 print(f(15)) # 610 第二步寻找递归的结束条件 # 斐波那契数列 1 1 2 3 5 8 13 21 ... def f(n):# 编写递归代码求第n位的结果if n 1 or n 2:return 1# 调用函数 print(f(15)) # 610 第三步找出函数的等价关系式(最关键的一步) # 斐波那契数列 1 1 2 3 5 8 13 21 ... def f(n):# 编写递归代码求第n位的结果if n 1 or n 2:return 1# 找出与斐波那契数列等价的关系式return f(n-1) f(n-2)# 调用函数 print(f(15)) # 610 案例2使用递归求N的阶乘如n100 阶乘是什么一个正整数的阶乘factorial是所有小于及等于该数的正整数的积如n!1×2×3×...×(n-1)×n 1! 1 2! 1x2 2 3! 1x2x3 6 4! 1x2x3x4 24 ... n!1×2×3×...×(n-1)×n 第一步明确这个函数要做什么以及定义函数以及调用方式 def f(n):# 编写递归条件print(f(100)) 第二步寻找递归的结束条件 def f(n):# 编写递归结束条件if n 2:return n# ...递归等式 print(f(100)) 第三步编写递归等价公式自己要调用自己 等价公式 找规律 1! f(1) 1 2! f(2) 2 3! f(2)x3 6 4! f(3)x4 24 ... n! f(n-1) * n def f(n):# 编写递归结束条件if n 2:return n# ...递归等式return f(n-1) * n print(f(100)) 案例3面试题 猴子吃桃问题 猴子吃桃问题。猴子第1天摘下若干个桃子当即吃了一半还不过瘾又多吃了一个。第2天早上又将剩下的桃子吃掉一半又多吃了一个。以后每天早上都吃了前一天剩下的一半另加一个。到第10天早上想再吃时就只剩下一个桃子了。求第1天共摘了多少个桃子 第一步确定函数主要要完成什么功能需要传递哪些参数确认调用方式 def f(n):     # 编写递归代码      # 调用f函数 print(f(1)) 第二步编写递归的结束条件出口 # 第一步确定函数功能 def f(n):     # 第二步编写递归结束条件出口     if n 10:         return 1 # 调用函数 print(f(1)) 第三步找出与这个问题相等的等式关系 求桃子的剩余数量假设法假设有10个桃子 第1天10个桃子吃一半10/2 5 1 6 第2天4个桃子吃一半4/2 2 1 3 第3天再想吃剩1个 第n天总剩余桃子的数量 第(n1)天桃子的剩余桃子的数量 1) * 2 # 第一步确定函数功能 def f(n):# 第二步编写递归结束条件出口if n 10:return 1# 第三步寻找与这个问题相似的等价公式return (f(n1) 1) * 2# 调用函数 print(f(8))
http://www.zqtcl.cn/news/106420/

相关文章:

  • 新吴区住房和建设交通局网站小程序商城哪家好排行榜
  • 中小学网站建站模板长春火车站咨询电话
  • c2c网站特点公司网站建设亚运村
  • 邢台wap网站建设费用黑帽seo之搜索引擎
  • 如何用阿里云做网站刷题网站怎么做
  • 织梦制作手机网站上海猎头公司名单
  • 免费生成图片的网站wordpress 购物
  • 江西建设部网站国际新闻最新消息今天2023
  • 怎么做网站啊wordpress英文显示改中文
  • 建筑专业网站有哪些网站标题seo外包优化
  • 浙江建设厅网站施工员报名中国建设协会官网站
  • 网站建设优化是干嘛上海今天最新的新闻
  • 网站大全浏览器软文的概念
  • 盐山做网站价格莱芜征婚吧
  • 具有品牌的微网站建设网站设计培训班前台
  • 网站推广工具推荐html网站地图在线生成
  • 成都本地网站建设青岛电子商务的网站建设
  • 北京网站开发培训河南省百城建设提质工程网站
  • 郑州专业建网站南通网站建设技术支持
  • 简约网站程序网络营销方式较为单一
  • 绍兴企业自助建站123房产网
  • 科技类网站设计特点备案 网站首页地址
  • 做兼职网站网站建设培训速成
  • 开源的网站管理系统商务网站设计与建设实训
  • 东莞三合一网站制作江阴做网站的公司有
  • mvc5 网站开发之學 pdf百度搜索引擎首页
  • 手机进入网站自动识别城阳区规划建设局网站
  • 网站开发平台的公司订票网站开发公司
  • 郑州网站推广信息网架结构厂家
  • 提升网站流量的方法汕头站扩建