06数论算法 教学大纲.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
06数论算法 教学大纲

第6章 数论算法 6.1 整数的表示 设B1为一正整数,对任一正整数a,在B进制下可唯一地表示为 ,0?aiB,an?0。(6-1) 称a为n+1位的(B进制)正整数,ai称为a的第i位数字,i=0, 1, …, n。 加法运算 ADD(a, b) 1 carry?0 2 t?min(m, n) 3 for i?0 to t ?从低位到高位逐位计算 4 do ci?ai+bi+carry 5 carry? ci/B 6 ci? ci mod B 7 for i?t+1 to n ?对nm的情形 8 do ci? ai+carry 9 carry? ci/B 10 ci? ci mod B 11 for i?t+1 to m ?对mn的情形 12 do ci? bi+carry 13 carry? ci/B 14 ci? ci mod B 15 if carry?0 16 then ci?carry 17 return c 若将a,b的较大位数记为n,不难看出ADD过程的运行时间是?(n)。 减法运算 SUB(a, b) ?计算a-b,假定a?b 1 for i?0 to m 2 do ci?ai-bi 3 if ci0 4 then ci?ci+B 5 ai+1? ai+1-1 6 for i?m+1 to n 7 do ci?ai 8 if ci0 9 then ci?ci+B 10 ai+1? ai+1-1 11 消去c的高位0 12 return c 算法中第1~5的for循环重复m次,而第6~10行的for循环重复n-m次,故算法的运行时间为?(n)。 乘法运算 PRODUCT(a, b) 1 for i?0 to m 2 do carry?0 3 for j?0 to n 4 do ci+j?bi?aj+ ci+j +carry 5 carry?ci+j/B 6 ci+j?ci+j mod B 7 if carry?0 8 then ci+j?carry 9 return c 若、b都是n+1位B进制数,则过程的运行时间为O(n2)。 带余除法 定理6-1(除法定理) 对任意整数a和正整数n,存在唯一的整数q和r使得L a = qn + r,0 ? r n。 (6-2) 引理6-2 B进制正整数a、b都是n位数且a?b。若bn-1??B/2?,则q=an-1/bn-1; 引理6-3 设B进制正整数a=(an…a1a0),b=(bn-1…b1b0),ab且(an-1…a1a0)b。 记 ,若bn-1??B/2?,则商a/b=q必有 -2?q? 。 算法伪代码描述 DIVISION(a, b) ?对n+1位及m+1位正整数a,b计算式(1)中的q和r 1 if ab 2 then q?0, r?a 3 return q and r 4 if a=b 5 then q?1 6 r?0 7 return q and r 8 if bm?B/2 ?计算规格化因子d 9 then d??B/(bm+1)? 10 else d?1 11 u?da, v?db, n? u的位数-1, m?v的位数-1?规格化 12 r?(unun-1…un-m+1) 13 for j?n-m downto 0 14 do if rv 15 then qj?0 16 else if r的位数=v的位数 17 then qj?rm/vm 18 else qj ?min(?(ujB+uj-1)/vm?, B-1)-2 19 r? r-qjv 20 while r?v 21 do r?r-v 22 qj? qj +1 23 r?rB+aj 24 r?r/d ?去规格化 25去除q的高位0 26 return q and r 当n=2m时,第13~23行的for循环重复m次,循环体中第19行的运算耗时?(m),故DIVISION的运行时间为?(m2)。 6.2 初等数论的概念 整除性和约数 一个整数能被另一个整数整除的概念是数论的核心概念之一。符号d | a(读作“d整除a”)意为有某个整数k,使得a =

文档评论(0)

zijingling + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档