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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

acm学习计划.docx

1、acm学习计划acm学习计划篇一:ACM学习计划ACM学习计划正在学(learning),未学(waiting),已学(cut vovering) 初期: 一.基本算法:(1)枚举. (poj1753,poj2965)(2)贪心(poj1328,poj2109,poj2586)(3)递归和分治法.(4)递推.(5)构造法.(poj3295)(6)模拟法.(poj1068,poj2632,poj1573,poj2993,poj2996)二.图算法:(1)图的深度优先遍历和广度优先遍历.(2)最短路径算法(dijkstra,bellman-ford,floyd,heap+dijkstra)(poj

2、1860,poj3259,poj1062,poj2253,poj1125,poj2240,poj1511,poj1847,poj2387, poj3268,poj3037,poj1502,poj1797,poj3615,poj3660,poj3013,poj3159,poj1275)(3)最小生成树算法(prim,kruskal)(poj1789,poj2485,poj1258,poj3026,poj1861,poj2395,poj2377,poj2421,poj1679,poj1751,poj1354,poj1251,poj3625,poj3522)(4)拓扑排序 (poj1094)(5)二

3、分图的最大匹配 (匈牙利算法) (poj3041,poj3020,poj1274,poj3692,poj2195,poj1466,poj1469,poj2239,poj1325,poj2771,poj1422,poj2594,poj1087)(6)最大流的增广路算法(EK算法,SAP算法,Dinic算法).(poj1459,poj3436,poj1273,poj3281,poj1087,poj1149 ,poj1698,poj2195,poj1815)三.数据结构.(1)串 (poj1035,poj3080,poj1936)(2)排序(快排、归并排(与逆序数有关)、堆排) (poj2388,p

4、oj2299)(3)简单并查集的应用. (poj1182,poj1456,poj1611,poj1988,poj2524,poj2236)(4)哈希表和二分查找等高效查找法(数的Hash,串的Hash)(poj3349,poj3274,POJ2151,poj1840,pojXX,poj2503)(5)哈夫曼树(poj3253)(6)堆(7)trie树(静态建树、动态建树) (poj2513poj3630,poj1204,poj1056,hduoj1251,hduoj1247) 四.简单搜索 (1)深度优先搜索 (poj2488,poj3083,poj3009,poj1321,poj2251)(

5、2)广度优先搜索(poj3278,poj1426,poj3126,)(3)简单搜索技巧和剪枝(poj2531,poj1416,poj2676,1129)五.动态规划(1)背包问题. (poj1837,poj1276)(2)型如下表的简单DP(可参考lrj的书 page149):j=optDi+w(i,j) (poj3267,poj1836,poj1260,poj2533)i,j=optDi-1,j+xi,Di,j-1+yj,Di-1j-1+zij (最长公共子序列)(poj3176,poj1080,poj1159)i,j=wi,j+optCi,k-1+Ck,j.(最优二分检索树问题)六.数学(

6、1)组合数学:1.加法原理和乘法原理.2.排列组合.3.递推关系.(POJ3252,poj1850,poj1019,poj1942)(2)数论.1.素数与整除问题2.进制位.3.同余模运算.(poj2635, poj3292,poj1845,poj2115)(3)计算方法.1.二分法求解单调函数相关知识.(poj3273,poj3258,poj1905,poj3122)七.计算几何学.(1)几何公式.(2)叉积和点积的运用(如线段相交的判定,点到线段的距离等).(poj2031,poj1039)(3)多边型的简单算法(求面积)和相关判定(点在多边型内,多边型是否相交) (poj1408,poj

7、1584)(4)凸包. (poj2187,poj1113,poj1228,poj1794,pojXX,hoj1392,hoj1348, hoj2202,hoj2215) 中级: 一.基本算法:(1)C+的标准模版库的应用. (poj3096,poj3007)(2)较为复杂的模拟题的训练(poj3393,poj1472,poj3371,poj1027,poj2706)二.图算法:(1)差分约束系统的建立和求解. (poj1201,poj2983,poj1364,poj3169,poj3159 ,poj1716,poj1275,zoj1260,zoj1420,zoj1455) (利用最短路Bell

8、man_Ford和SPFA算法)。(2)最小费用最大流(poj2516,poj2195)(3)双连通分量(poj2942,poj3694,poj3177)(4)强连通分支及其缩点.(poj2186)(5)图的割边和割点(poj3352)(6)最小割模型、络流规约(poj3308, )三.数据结构.(1)线段树(poj2528,poj2828,poj2777,poj2886,poj2750,poj3277,poj3225,poj2482,poj1177,poj1029,poj2182,poj2104,poj2761,poj2140,poj2155,poj2195, hoj1166,hoj1754

9、, hoj1698, hoj 1394 , hoj2795, hoj1540, hoj2781,hoj3016, hoj1542, hoj1255, hoj1828,hoj1823)(2)静态二叉检索树. (poj2482,poj2352)(3)树状树组(poj1195,poj3321)(4)RMQ. (poj3264(sample),poj3368(change something) 2823(滚动数组)(5)并查集的高级应用. (poj1703,2492)(6)KMP算法. (poj1961,poj2406)四.搜索(1)最优化剪枝和可行性剪枝(2)搜索的技巧和优化 (poj3411,po

10、j1724)(3)记忆化搜索(poj3373,poj1691) 五.动态规划 (1)较为复杂的动态规划(如动态规划解特别的旅行商问题等)(poj1191,poj1054,poj3280,poj2029,poj2948,poj1925,poj3034)(2)记录状态的动态规划. (POJ3254,poj2411,poj1185)(3)树型动态规划(poj2057,poj1947,poj2486,poj3140)六.数学(1)组合数学:1.容斥原理.2.抽屉原理.3.置换群与Polya定理(poj1286,poj2409,poj3270,poj1026).4.递推关系和母函数. (2)数学. 1.

11、高斯消元法(poj2947,poj1487, poj2065,poj1166,poj1222)2.概率问题. (poj3071,poj3440)、扩展的欧几里德(中国剩余定理) (poj3101)(3)计算方法./1分数规划. (poj2976)2.三分法求解单峰(单谷)的极值.3.矩阵法(poj3150,poj3422,poj3070)4.迭代逼近(poj3301)(4)随机化算法(poj3318,poj2454)(5)杂题.(poj1870,poj3296,poj3286,poj1095)七.计算几何学.(1)坐标离散化.(2)扫描线算法(例如求矩形的面积和周长并,常和线段树或堆一起使用)

12、. (poj1765,poj1177,poj1151,poj3277,poj2280,poj3004)(3)多边形的内核(半平面交)(poj3130,poj3335)(4)几何工具的综合应用.(poj1819,poj1066,poj2043,poj3227,poj2165,poj3429)高级:一.基本算法要求:(1)代码快速写成,精简但不失风格(poj2525,poj1684,poj1421,poj1048,poj2050,poj3306)(2)保证正确性和高效性. poj3434二.图算法:(1)度限制最小生成树和第K最短路. (poj1639)(2)最短路,最小生成树,二分图,最大流问题

13、的相关理论(主要是模型建立和求解)(poj3155, poj2112,poj1966,poj3281,poj1087,poj2289,poj3216,poj2446(3)最优比率生成树. (poj2728)(4)最小树形图(poj3164)(5)次小生成树.(6)无向图、有向图的最小环三.数据结构.(1)trie图的建立和应用. (poj2778)(2)LCA和RMQ问题(LCA(最近公共祖先问题) 有离线算法(并查集+dfs) 和在线算法(RMQ+dfs).(poj1330)(3)双端队列和它的应用(维护一个单调的队列,常常在动态规划中起到优化状态转移的目的). (poj2823)(4)左偏

14、树(可合并堆).(5)后缀树(非常有用的数据结构,也是赛区考题的热点).(poj3415,poj3294)四.搜索(1)较麻烦的搜索题目训练(poj1069,poj3322,poj1475,poj1924,poj2049,poj3426)(2)广搜的状态优化:利用M进制数存储状态、转化为串用hash表判重、按位压缩存储状态、双向广搜、A*算法.(poj1768,poj1184,poj1872,poj1324,poj2046,poj1482)(3)深搜的优化:尽量用位运算、一定要加剪枝、函数参数尽可能少、层数不易过大、可以考虑双向搜索或者是轮换搜索、IDA*算法.(poj3131,poj2870

15、,poj2286)五.动态规划(1)需要用数据结构优化的动态规划.(poj2754,poj3378,poj3017)(2)四边形不等式理论.(3)较难的状态DP(poj3133)六.数学(1)组合数学.反演(poj2888,poj2154)2.偏序关系理论.(2)博奕论.1.极大极小过程(poj3317,poj1085)问题.七.计算几何学.(1)半平面求交(poj3384,poj2540)(2)可视图的建立(poj2966)(3)点集最小圆覆盖.(4)对踵点(poj2079)八.综合题. (poj3109,poj1478,poj1462,poj2729,poj2048,poj3336,poj

16、3315,poj2148,poj1263) 数据结构组织结构二叉堆左偏树二项树胜者树跳跃表样式图标斜堆treap 统计结构 树状数组虚二叉树线段树矩形面积并圆形面积并 关系结构 Hash表并查集路径压缩思想的应用 STL中的数据结构 vectordequeset / map 1:数学 :数论:中国剩余定理:欧拉函数:欧几里得定理:欧几里得定理:扩展欧几里得:大数分解与素数判定:佩尔方程:组合数学篇二:zufe_acm学习计划高手给的训练计划一般要做到50行以内的程序不用调试、100行以内的二分钟内调试成功.acm主要是考算法的,主要时间是花在思考算法上,不是花在写程序与debug上。篇三:AC

17、M进阶计划ACM进阶计划ACM队不是为了一场比赛而存在的,为的是队员的整体提高。大学期间,ACM队队员必须要学好的课程有:lC/C+两种语言1高等数学2线性代数3数据结构4离散数学5数据库原理6操作系统原理7计算机组成原理8人工智能9编译原理10算法设计与分析除此之外,我希望你们能掌握一些其它的知识,因为知识都是相互联系,触类旁通的。 以下学习计划每学期中的内容不分先后顺序,虽说是为立志于学习ACM的同学列的知识清单,但内容不限于ACM的知识。英语之类与专业相距较远的课程请自行分配时间,这里不再列举。大一上学期:必学:语言基础语法必须全部学会a)推荐“语言入门”分类20道题以上b)提前完成C语

18、言课程设计2.简单数学题(推荐“数学”分类20道以上)需要掌握以下基本算法:a)欧几里德算法求最大公约数b)筛法求素数c)康托展开d)逆康托展开e)同余定理f)次方求模3.计算几何初步a)三角形面积b)三点顺序4.学会简单计算程序的时间复杂度与空间复杂度5.二分查找法6.简单的排序算法a)冒泡排序法b)插入排序法7.贪心算法经典题目8.高等数学以下为选修:9.学会使用简单的DOS命令(较重要)a)color/dir/copy/shutdown/mkdir(md)/rmdir(rd)/attrib/cd/b)知道什么是绝对路径与相对路径c)学会使用C语言调用DOS命令d)学会在命令提示符下调用你

19、自己用C语言编写的程序,并使用命令行参数给自己的程序传参(比如自己制作一个实现与copy命令基本功能一致的功能)e)学会编写bat批处理文件10.学会Windows系统的一些小知识,如设置隐藏文件,的设置等。11.学会编辑注册表(包括使用注册表编辑器regedit和使用DOS命令编辑注册表)12.学会使用组策略管理器管理()组策略。大一下学期:1.掌握C+部分语法,如引用类型,函数重载等,基本明白什么是类。2.学会BFS与DFSa)迷宫求解(最少步数)b)水池数目(NYOJ27)c)图像有用区域(NYOJ92)d)树的前序中序后序遍历3.动态规划(15题以上),要学会使用循环的方法写动态规划,

20、同时也要学会使用记忆化搜索的方法。a)最大子串和b)最长公共子序列c)最长单调递增子序列(O(n)与O(nlogn)算法都需要掌握)d)01背包e)RMQ算法4.学会分析与计算复杂程序的时间复杂度5.学会使用栈与队列等线性存储结构6.学会分治策略7.排序算法a)归并排序b)快速排序c)计数排序8.数论a)扩展欧几里德算法b)求逆元c)同余方程d)中国剩余定理9.博弈论a)博弈问题与SG函数的定义b)多个博弈问题SG值的合并10.图论:a)图的邻接矩阵与邻接表两种常见存储方式b)欧拉路的判定c)单最短路bellman-ford算法dijkstra算法。d)最小生成树的kruskal算法与prim

21、算法。11.学会使用C语言进行络编程与多线程编程12.高等数学13.线性代数a)明确线性代数的重要性,首先是课本必须学好b)编写一个Matrix类,进行矩阵的各种操作,并求编写程序解线性方程组。c)推荐做一两道“矩阵运算”分类下的题目。以下为选修,随便选一两个学学即可:14.(较重要)使用C语言或C+编写简单程序来调用一些简单的windowsAPI,或者在linux下进行linux系统调用,其目的是明白什么是API(应用程序接口)。15.页设计a)学习静态页技术(html+css+javascript)b)较具有艺术细胞的可以试试Photoshopc)php或其它动态页技术16.学习matla

22、b,如果想参加数学建模大赛的话,需要学这个软件。大一假期(如果留校集训)1.掌握C+语法,并熟练使用STL2.试着实现STL的一些基本容器和函数,使自己基本能看懂STL源码3.图论a)使用优先队列优化Dijkstra和Primb)单源最短路径之SPFAc)差分约束系统d)多源多点最短路径之FloydWarshall算法e)求欧拉路(圈套圈算法)4.进行复杂模拟题训练5.拓扑排序6.动态规划进阶a)完全背包、多重背包等各种背包问题(参见背包九讲)b)POJ上完成一定数目的动态规划题目c)状态压缩动态规划d)树形动态规划7.搜索a)回溯法熟练应用b)复杂的搜索题目练习c)双向广度优先搜索d)启发式

23、搜索(包括A*算法,如八数码问题)8.计算几何a)判断点是否在线段上b)判断线段相交c)判断矩形是否包含点d)判断圆与矩形关系e)判断点是否在多边形内f)判断点到线段的最近点g)计算两个圆的公切线h)求矩形的并的面积i)求多边形面积j)求多边形重心k)求凸包选修9.可以学习一种C+的开发框架来编写一些窗体程序玩玩(如MFC,Qt等)。10.学习使用C或C+连接数据库。大二一整年:1.数据结构a)单调队列b)堆c)并查集d)树状数组e)哈希表f)线段树g)字典树2.图论a)强连通分量b)双连通分量(求割点,桥)c)强连通分量与双连通分量缩点d)LCA、LCA与RMQ的转化e)二分图匹配i.二分图

24、最大匹配ii.最小点集覆盖iii.最小路径覆盖iv.二分图最优匹配v.二分图多重匹配f)络流i.最大流的基本SAPii.最大流的ISAP或者Dinic等高效算法(任一)iii.最小费用最大流iv.最大流最小割定理3.动态规划多做题提高(10道难题以上)4.数论a)积性函数的应用b)欧拉定理c)费马小定理d)威乐逊定理5.组合数学a)群论基础b)Polya定理与计数问题c)Catalan数6.计算几何a)各种旋转卡壳相关算法b)三维计算几何算法7.理解数据库原理,学会SQL语句8.学好计算机组成原理9.学习Transact-SQL语言,学会使用触发器,存储过程,学会数据库事务等。10.图论二a)

25、络流的各种构图训练(重要)b)最小割与最小点权覆盖等的关系(详见最小割模型在信息学竞赛中的应用一文) c)次小生成树d)第k短路e)最小比率生成树11.线性规划12.动态规划更高级进阶算法自动机理论与实现15.博弈论之Alpha-beta剪枝选修,有相关兴趣的可以学一下:16.自学C#或Java做一个项目,比如C+/C#/Java考试系统之类的。17.先做一些小游戏玩玩,然后可以学一下DirectX或者OpenGL,或者可以试试XNA游戏框架。18.了解一下游戏引擎相关的知识其中的寒假假期最好:1.自学完离散数学2.自学概率论的部分章节3.自学操作系统部分章节大三、1.巩固之前的知识,进行一遍大复习。2.一些如蚁群算法,遗传算法,模拟退火算法等人工智能方面应用较广的随机性算法。3.把编译原理上学的东西应用到编程中:如DFA,NFA,还有语法分析的各种方法等。当你按上面那些一步步走过来时你已经是牛人了,后面要学的东西,就是由牛人自己来发掘的了。

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

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