python找零问题怎么解决
这篇文章主要讲解了“python找零问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python找零问题怎么解决”吧!
网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、成都小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了沈阳免费建站欢迎大家使用!
题目:现有2元、3元、5元共三种面额的货币,如果需要找零99元,一共有多少种找零的方式?
from functools import lru_cache @lru_cache() def change_money(total): if total == 0: return 1 if total < 0: return 0 return change_money(total - 2) + change_money(total - 3) + \ change_money(total - 5)
说明:在上面的代码中,我们用
lru_cache
装饰器装饰了递归函数change_money
,如果不做这个优化,上面代码的渐近时间复杂度将会是,而如果参数total
的值是99
,这个运算量是非常巨大的。lru_cache
装饰器会缓存函数的执行结果,这样就可以减少重复运算所造成的开销,这是空间换时间的策略,也是动态规划的编程思想。
Python主要用来做什么
Python主要应用于:
1、Web开发;
2、数据科学研究;
3、网络爬虫;
4、嵌入式应用开发;
5、游戏开发;
6、桌面应用开发。
感谢各位的阅读,以上就是“python找零问题怎么解决”的内容了,经过本文的学习后,相信大家对python找零问题怎么解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!
名称栏目:python找零问题怎么解决
本文来源:http://cdiso.cn/article/pceeig.html