zoukankan      html  css  js  c++  java
  • acm学习指引

    acm学习心得及书籍推荐

     

    一般要做到50行以内的程序不用调试、100行以内的二分钟内调试成功.acm主要是考算法的,主要时间是花在思考算法上,不是花在写程序与debug上。

    下面给个计划练练:  

    第一阶段:练经典常用算法,下面的每个算法打上十到二十遍,同时自己精简代码。因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打出来.  

    1.最短路(Floyd、Dijstra,BellmanFord)  

    2.最小生成树(先写个prim,kruscal要用并查集,不好写)

    3.大数(高精度)加减乘除

    4.二分查找. (代码可在五行以内)  

    5.叉乘、判线段相交、然后写个凸包.  

    6.BFS、DFS,同时熟练hash表(要熟,要灵活,代码要简)  

    7.数学上的有:辗转相除(两行内),线段交点、多角形面积公式.

    8. 调用系统的qsort, 技巧很多,慢慢掌握.

    9. 任意进制间的转换

    第二阶段:练习复杂一点,但也较常用的算法。

    如:

    1. 二分图匹配(匈牙利),最小路径覆盖

    2. 网络流,最小费用流。  

    3. 线段树.   

    4. 并查集。  

    5. 熟悉动态规划的各个典型:LCS、最长递增子串、三角剖分、记忆化dp  

    6.博弈类算法。博弈树,二进制法等。  

    7.最大团,最大独立集。  

    8.判断点在多边形内。  

    9. 差分约束系统.  

    10. 双向广度搜索、A*算法,最小耗散优先.

    给学习算法的人一点买书的建议吧。

     入门三本:

    数据结构与算法》(傅清祥,王晓东编著,我所见过的最好的算法教材)


    程序设计导引及在线实践  作者: 李文新


    ACM程序设计培训教程 吴昊

    基础提高:

    算法设计与分析 这是国内牛人王晓东的大作,非常不错的算法书

    算法设计与试验题解 王晓东

    计算几何-算法设计与分析 周培德

    组合数学 第三版 冯舜玺 译

    算法艺术与信息学竞赛   刘汝佳的杰作,引导着信息学竞赛的发展


    如果算法导论是九阳神功,那这本无疑就是九阴真经。本书是专为参加一些诸如ACM之类程序设计比赛的同学而写的,江湖人称“黑书”。里面讲的都是一些在编程比赛中常用的算法、数据结构,以及一些数论和计算几何等。我虽然并不搞竞赛,但也从此书中受益颇多。

    国际信息学奥林匹克竞赛指导— — 实用算法的分析与程序设计   吴文虎 王建德

    Introduction to Algorithm 科曼著 传说中的宝典

    算法导论(原书第3版) 

    Algorithms 算法概论

    短小精悍,别据一格,准经典之作。一个坏消息: 同算法导论,该书没有习题答案。好消息:习题很经典,难度也适中,只需花点点时间自己也都能做出来。另有中文版名《算法概论》,如果有心的话,还是尽量看原版吧,其实看原版与看中文版花费时间不会相差很大,因为大部分时间其实都花费在做习题上了。

    Algorithm Design 算法设计

     

    《程序设计中的组合数学》 吴文虎

    《ACM国际大学生程序设计竞赛试题与解析》全部册(吴文虎著,清华大学出版社)

    ACM国际大学生程序设计竞赛试题与解析

     作者:sam 出处:http://www.cnblogs.com/samjustin/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    Ubuntu安装tomcat
    mongodb配置数据库文件夹,创建服务
    chrome 49 版本bug: flex父元素设置flex:1 , 子元素用height:100%无法充满父元素
    angularjs指令中的require赋值含义
    flex布局在垂直居中里,元素超过容器大小后,不能通过滚动条滚动到顶端,这是个flex的bug
    redux中的compose源码分析
    js中的reduce()函数
    redux-thunk中间件源码
    HTML, CSS. JS的各种奇淫技巧
    JS在项目中用到的AOP, 以及函数节流, 防抖, 事件总线
  • 原文地址:https://www.cnblogs.com/liubilan/p/9388935.html
Copyright © 2011-2022 走看看