惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
J
Java Code Geeks
Blog — PlanetScale
Blog — PlanetScale
F
Fortinet All Blogs
腾讯CDC
大猫的无限游戏
大猫的无限游戏
Jina AI
Jina AI
WordPress大学
WordPress大学
雷峰网
雷峰网
小众软件
小众软件
D
DataBreaches.Net
V
Visual Studio Blog
博客园 - Franky
IT之家
IT之家
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
B
Blog RSS Feed
博客园 - 聂微东
T
Tailwind CSS Blog
有赞技术团队
有赞技术团队
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Microsoft Security Blog
Microsoft Security Blog
G
Google Developers Blog
云风的 BLOG
云风的 BLOG

博客园 - 啊夏

iOS6.0以后App对内存警告的处理 ios平台上一个由字节对齐问题导致的crash NSURLConnection 网络超时的那些事。 我看QQ与360的恩怨情仇 [转载]NSString+NSMutableString+NSValue+NSAraay用法汇总 详解百度手机输入法“搜索框”的秘密 一道求单向链表倒数第N个结点的算法题。 真正认识 realloc 的工作方式。 什么是最优秀的IT员工? 【转帖】有关次级贷的一个故事。很贴切 获取字符串的拼音首字母 [转载]关于const用法的 笔记记录 向量的旋转算法---编程珠玑读书笔记。 activex 控件回调 javascript 一个“利”与“义”的故事。 重启PPC系统 GLDEF_C, LOCAL_C, GLREF_C 的含义 看看80的我们小时候都在玩些什么。 Carbide.c++ IDE的常用快捷键和技巧
最大公约数-辗转相除法
啊夏 · 2008-06-19 · via 博客园 - 啊夏

   给定两个数 a,b, (a > b) 求 a ,b的最大公约数 gcd(a,b)。
算法的原型来自 欧几里德的《几何原本》(第VII卷,命题i和ii)中。

原理是:
   若 r 是 a ÷ b 的余数, 则 gcd(a,b) = gcd(b,r)

这样程序就好写了。

int gcb(int a,int b)
{
     int r = 0;
     while (b)
     {
         r = a%b;
         a = b;
         b = r;
     }
     return a;
}

很简单的东西。这个题目是在看另外一道题目的时候遇到的 “如何在程序里精确地表示一个小数”。答案是:表示成分数。 于是就有了求最大公约数的问题了。

ps: 无限循环小数 0.nnnnn(n) ,这里单n 循环,可以表示成 n/9  (0.9(9) = 1)