1.背景

欧几里得算法是一个求最大因子的快速算法。如果m,n存在最大因子k,假设m=x*n+r,那么m和n可以整出k的话,r也肯定可以整除k
因为定理:如果M>N,则M mod N<M/2 ,说明时间复杂度是O(log(n))

2.代码

package Algorithm_analysis;public class Euclid {public static void main(String[] args){int m=63;int n=18;int remainder=0;while(n!=0){remainder=m%n;m=n;n=remainder;        }System.out.print(m);}
}

/********************************

* 本文来自博客  “李博Garvin“

* 转载请标明出处:http://blog.csdn.net/buptgshengod

******************************************/

【算法数据结构Java实现】欧几里得算法相关推荐

  1. java 欧几里德_用java实现欧几里得算法

    "欧几里得算法:欧几里德算法又称辗转相除法,是指用于计算两个正整数a,b的最大公约数.应用领域有数学和计算机两个方面.计算公式gcd(a,b) = gcd(b,a mod b)." ...

  2. 算法初体验之欧几里得算法

    通过本文希望能给程序设计的初学者一些启发. 本文重点讲述欧几里得算法,引出算法的三大前提,大概阐明算法的一些特点. 欧几里得算法(或辗转相除法)用于计算两个正整数的最大公约数,基本算法如下: E:设两 ...

  3. 算法题:SOJ1092: 欧几里得算法

    一.BackGroud 在RSA密码体系中,欧几里得算法是加密或解密运算的重要组成部分.它的基本运算过程就是解 x*a=1(mod n) 这种方程. 二.The Problem 整个解的过程是这样的, ...

  4. 算法到底该怎么学?算法数据结构Java编程超全干货!(ACM金牌选手分享超牛学习路径~)...

    怎么才能最快的学习算法呢?(ps:文末附2022大厂面试真题~) 这是很多知友都关心的话题,作为一个ACM金牌选手,根据我的专业角度,特给大家来分享一下! 学习算法,切记不要一上来就开始啃<算法 ...

  5. 【算法数据结构Java实现】Java实现单链表

    1.背景 单链表是最基本的数据结构,仔细看了很久终于搞明白了,差不每个部分,每个链都是node的一个对象.需要两个参数定位:一个是index,表示对象的方位.另一个是node的对象. 2.代码 nod ...

  6. 【算法数据结构Java实现】Java实现动态规划(背包问题)

    1.背景      追随着buptwusuopu大神的脚步,最近在研习动态规划.动态规划应该叫一种解决问题的思想,记得又一次去某公司面试就被问到了这个. 多于动态规划的理解,大致是这样的,从空集合开始 ...

  7. 【算法数据结构Java实现】时间复杂度为O(n)的最大和序列

    1.背景 最大序列和问题一直以来是一个比较经典的算法题,看到这个问题,有很多解题的办法.今天看到了一种时间复杂度只为O(n)的解题算法,在这里记录下. 思路很简单,比方说有P1,P2,P3,P4... ...

  8. 【算法数据结构Java实现】递归的简单剖析及时间复杂度计算

    1.理解 对于递归函数的理解,我觉得是比较重要的,因为很多大神能把递归函数用的惟妙惟肖,不光是他们的编程功力高深,更主要是能理解这个算法.比较直白的理解是,如果一个事件的逻辑可以表示成,f(x)=nf ...

  9. 【算法数据结构Java实现】折半查找

    1.背景 以一个题目为例,一个整数x是一组按大小顺序排列好的数列中的一个数,我们要找到x在数列中的索引位置. 比如按从小到大排列的数列: -3,-2,0,4,5,7,12,64 我们要找到数字7的位置 ...

最新文章

  1. Linux怎么互相ping通,主机+虚拟机Ubuntu+开发板互相ping通
  2. 一台服务器上起2个mysql服务
  3. 直播平台搭建中你需要注意的小细节
  4. 转:UniqueID和ClientID的来源
  5. DNS的一些实际应用(一)
  6. 第二次北京之行-游颐和园
  7. swagger2 分组
  8. CVPR2021 DRConv:即插即用!旷视孙剑、张祥雨团队提出动态区域感知的卷积,涨点显著!...
  9. Windbg简明教程(转)
  10. flash上传头像,截取图像 组件演示
  11. pandas df.loc
  12. wap push概述
  13. 坚持分享的魅力,我超越了当年的榜样
  14. 计算机为什么找不到网络打印机,电脑找不到网络打印机怎么办
  15. html表单中文字前黑点怎么弄,如何将word文档中标题前的黑点去掉
  16. 房产交易进化:探索“去中介”无人区
  17. leapmotion 导入 unity 3D 教程
  18. Application.DoEvents();
  19. 湘潭2017 ccpc中南地区邀请赛 Determinant 高斯约当求逆矩阵
  20. Linux磁盘与分区命名:sda, sdb, sdc, sda1, sda2

热门文章

  1. oracle 空值 group by,为什么group by 没有将一样的数据合为一条
  2. linux 挂载网络文件系统,[arm-linux-FL2440挂载网络文件系统共享文件]
  3. window.open打开新窗口不改变原窗口_我P的图不高级,就很可耻吗?
  4. 控制科学对计算机能力的要求,0811控制科学与工程基本要求.pdf
  5. 计算机视觉编程——图像搜索
  6. 图形界面不卡的linux,图形化界面linux(linaro)的安装小结
  7. keras 张量切片
  8. keras 时间序列分析
  9. 链表c的经典实现(一)
  10. 123. Leetcode 72. 编辑距离 (动态规划- 字符串系列)