在python之中为了提高某个功能的执行速度并减少耗费资源的时候,就会去使用一定的算法结构来完成它 。而常见的算法大多是用在排序上面的,这次小编要来给大家介绍的算法叫做贪心算法,下文会详细介绍它的实现思路以及代码实例,感兴趣的话就往下看看吧 。
文章插图
一、实现思路
贪心算法的原理是通过局部求最优解的算法来得到结果,也就是说贪心算法会将问题拆解开来对每一步都进行分析,从而保证在每次执行的时候只考虑到当前这一步的一种结果是可以满足当前最优的 。
那么在python中要实现贪心算法来解决某个需求就需要把一个问题分成多个小问题,再分别的对小问题求时间和空间上的最优解,换到python中的意思就是耗时最短且占用资源最少 。然后将小问题的解合起来,就可以得到这个问题在一定程度上的最优解了 。
二、python实现代码
虽然说贪心算法是求取的局部范围内问题最优解,但是还是需要自己去手动的设置一下这个求取的范围,而这个范围很多时候是由问题中给出的条件来决定的 。下面的代码示例是一个很经典的贪心算法,就是求取找零36元时总硬币数最少的情况,详细的代码示例如下所示:
def shortNum(a): coins = [1,5,10,25,100] out = [] coins = coins[::-1] for i in coins: num = a//i out=out+[i,]*num a = a-num*i if a<=0: break return outa = 36print(shortNum(a))【Python实现贪心算法怎么做?Python贪心算法实例代码如何写】以上就是关于“Python实现贪心算法怎么做?Python贪心算法实例代码如何写”的全部内容了,希望对你有所帮助 。
推荐阅读
- python3中如何使用map函数?python3怎么调用map函数?
- Python如何调用其他程序?Python调用其他程序的函数有哪些?
- Python打印输出时如何对齐?解决python对齐错误的方法
- IPhone手机拍照如何实现内存自由?IPhone手机配件推荐
- sublime怎么运行python代码程序?如何在sublime编辑器下运行python代码?
- Python怎么配置浏览器启动项?Python中selenium库可以设置的启动项有哪些
- Python中如何对set集合排序?Python对set集合排序的方法有哪些?
- 安装Python之后如何使用?Python安装之后如何编写代码?
- Python如何提取csv数据文件?numpy库如何提取csv数据?
- Python鼠标拖拽功能怎么实现?Python在浏览器中如何控制鼠标