Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例


Posted in Python onMay 21, 2018

本文实例讲述了Python基于递归和非递归算法求两个数最大公约数、最小公倍数。分享给大家供大家参考,具体如下:

最大公约数和最小公倍数的概念大家都很熟悉了,在这里就不多说了,今天这个是因为做题的时候遇到了所以就写下来作为记录,也希望帮到别人,下面是代码:

#!/usr/bin/env python
#coding:utf-8
from fractions import gcd
#非递归实现
def gcd_test_one(a, b):
  if a!=0 and b!=0:
    if a>b:
      a, b=b, a
    if b%a==0:
      return a
    gcd_list=[]
    for i in range(1,a):
      if b%i==0 and a%i==0:
        gcd_list.append(i)
    return max(gcd_list)
  else:
    print 'Number is wrong!!!'
#递归实现
def gcd_test_two(a, b):
  if a>b:
    a, b=b, a
  if b%a==0:
    return a
  else:
    return gcd_test_two(a,b%a)
#python自带的gcd
def gcd_test_three(a, b):
  return gcd(a,b)
if __name__ == '__main__':
  print gcd_test_one(12,24)
  print gcd_test_one(12,8)
  print gcd_test_one(6,24)
  print gcd_test_one(0,24)
  print '----------------------------------------------------------------------------'
  print gcd_test_two(12,24)
  print gcd_test_two(12,8)
  print gcd_test_two(6,32)
  print '----------------------------------------------------------------------------'
  print gcd_test_three(12,24)
  print gcd_test_three(12,8)

结果如下:

12
4
6
Number is wrong!!!
None
----------------------------------------------------------------------------
12
4
2
----------------------------------------------------------------------------
12
4

Python 相关文章推荐
Python入门教程之if语句的用法
May 14 Python
python使用in操作符时元组和数组的区别分析
May 19 Python
完美解决在oj中Python的循环输入问题
Jun 25 Python
python3.6根据m3u8下载mp4视频
Jun 17 Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
Aug 08 Python
python实现PID算法及测试的例子
Aug 08 Python
ipad上运行python的方法步骤
Oct 12 Python
用python中的matplotlib绘制方程图像代码
Nov 21 Python
细数nn.BCELoss与nn.CrossEntropyLoss的区别
Feb 29 Python
Django框架获取form表单数据方式总结
Apr 22 Python
Python线程池与GIL全局锁实现抽奖小案例
Apr 13 Python
Python查找算法的实现 (线性、二分,分块、插值查找算法)
Apr 24 Python
Python常用字符串替换函数strip、replace及sub用法示例
May 21 #Python
Python下使用Scrapy爬取网页内容的实例
May 21 #Python
python 每天如何定时启动爬虫任务(实现方法分享)
May 21 #Python
对python抓取需要登录网站数据的方法详解
May 21 #Python
深入浅析python 中的匿名函数
May 21 #Python
python3 selenium 切换窗口的几种方法小结
May 21 #Python
python selenium 对浏览器标签页进行关闭和切换的方法
May 21 #Python
You might like
很温暖很温暖的Lester Young
2021/03/03 冲泡冲煮
php中关于codeigniter的xmlrpc的类在进行数据交换时的类型问题
2011/07/03 PHP
Codeigniter出现错误提示Error with CACHE directory的解决方案
2014/06/12 PHP
ioncube_loader_win_5.2.dll的错误解决方法
2015/01/04 PHP
Yii2针对指定url的生成及图片等的引入方法小结
2016/07/18 PHP
php curl获取到json对象并转成数组array的方法
2018/05/31 PHP
Prototype 学习 工具函数学习($w,$F方法)
2009/07/12 Javascript
JS面向对象编程 for Cookie
2010/09/19 Javascript
lyhucSelect基于Jquery的Select数据联动插件
2011/03/29 Javascript
jquery实现鼠标滑过显示二级下拉菜单效果
2015/08/24 Javascript
AngularJS中的过滤器filter用法完全解析
2016/04/22 Javascript
通过jquery实现页面的动画效果(实例代码)
2016/09/18 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
JavaScript实现的冒泡排序法及统计相邻数交换次数示例
2017/04/26 Javascript
javascript设计模式 ? 建造者模式原理与应用实例分析
2020/04/10 Javascript
javascript如何使用函数random来实现课堂随机点名方法详解
2020/07/28 Javascript
JavaScript中layim之整合右键菜单的示例代码
2021/02/06 Javascript
Python笔记(叁)继续学习
2012/10/24 Python
跟老齐学Python之画圈还不简单吗?
2014/09/20 Python
python中__call__内置函数用法实例
2015/06/04 Python
python 实现对文件夹中的图像连续重命名方法
2018/10/25 Python
Dlib+OpenCV深度学习人脸识别的方法示例
2019/05/14 Python
Python数学形态学实例分析
2019/09/06 Python
Python dict和defaultdict使用实例解析
2020/03/12 Python
scrapy利用selenium爬取豆瓣阅读的全步骤
2020/09/20 Python
html5 外链式实现加减乘除的代码
2019/09/04 HTML / CSS
瑞士香水购物网站:Parfumcity.ch
2017/01/14 全球购物
公司营业员的工作总结自我评价
2013/10/05 职场文书
应用数学自荐书范文
2013/11/24 职场文书
电气工程师岗位职责
2014/01/01 职场文书
初中毕业典礼演讲稿
2014/09/09 职场文书
后进生评语大全
2015/01/04 职场文书
幼师辞职信范文大全
2015/05/12 职场文书
2015民办小学年度工作总结
2015/05/26 职场文书
有关花店创业的计划书模板
2019/08/27 职场文书
Python基本知识点总结
2022/04/07 Python