ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:19.36KB ,
资源ID:14285903      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/14285903.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(noip信息竞赛100个大体算法Word格式文档下载.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

noip信息竞赛100个大体算法Word格式文档下载.docx

1、0 do inc(lcm,a); end; 素数的求法 A.小范围内判定一个数是不是为质数: function prime (n: integer): Boolean; var I: integer; for I:=2 to trunc(sqrt(n) do if n mod I=0 then begin prime:=false; exit;=true; B.判定longint范围内的数是不是为素数(包括求50000之内的素数表): procedure getprime; var i,j:longint; p:array1.50000 of boolean; fillchar(p,sizeo

2、f(p),true); p1: i:=2; while i 50000 do begin if pi then begin j:=i*2; while j=x then break else if x mod pri=0 then exit;prime 2 3 算法: procedure prim(v0:integer); var lowcost,closest:array1.maxn of integer; i,j,k,min:=1 to n do begin lowcosti:=costv0,i; closesti:=v0;=1 to n-1 do begin 寻觅离生成树最近的未加入极点

3、k min:=maxlongint; for j:=1 to n do if (lowcostj min) and (lowcostj0) then begin=lowcostj; k:=j; lowcostk: 将极点k加入生成树 生成树中增加一条新的边k到closestk 修正各点的lowcost和closest值 if costk,j lwocostj then begin lowcostj:=costk,j; closestj:=k;prim(贪婪) 按权值递增顺序删去图中的边,假设不形成回路那么将此边加入最小生成树。 function find(v: 返回极点v所在的集合=1; wh

4、ile (i =n) and (not v in vseti) do inc(i); if i0 do begin=find(eq.v1);j:=find(eq.v2);j then begin inc(tot,eq.len); vseti:=vseti+vsetj;vsetj:=; dec(p); inc(q); writeln(tot); A.标号法求解单源点最短途径: a:array1.maxn,1.maxn of integer; b: bi指极点i到源点的最短途径 mark:array1.maxn of boolean; procedure bhf; best,best_j: fil

5、lchar(mark,sizeof(mark),false); mark1: b1:1为源点 repeat best: If marki then 对每一个已计算出最短途径的点 if (not markj) and (ai,j 0) then if (best=0) or (bi+ai,j0 then begin bbest_j:=best;markbest_j: until best=0;bhf 算法求解所有极点对之间的最短途径: procedure floyed; if aI,j 0 then pI,j:=I else pI,j: pI,j表示I到j的最短途径上j的前驱结点 for k:=

6、1 to n do 列举中间结点 if ai,k+aj,k ai,j then begin ai,j:=ai,k+ak,j; pI,j:=pk,j; C. Dijkstra 算法: 类似标号法,本质为贪婪算法。 b,pre: prei指最短途径上I的前驱结点 procedure dijkstra(v0: di:=av0,i; if di0 then prei:=v0 else prei: markv0: repeat 每循环一次加入一个离1集合最近的结点并调整其他结点的参数=maxint; u: u记录离1集合最近的结点 if (not marki) and (di min) then begin=di; if u marku: if (not marki) and (au,i+du di) then begin=au,i+du; prei:=u; until u=0;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1