为参加ACM学C语言,应该怎么学啊

我acm已经入门了,现在我想改变语言... 我acm已经入门了,现在我想改变语言 展开
 我来答
zs90
推荐于2016-07-08 · TA获得超过257个赞
知道答主
回答量:41
采纳率:0%
帮助的人:0
展开全部
额。。你还没有学过C就要参加ACM啦?没事,慢慢来~
俺大学期间参加过acm,只拿过一个铜牌。就谈谈我的经验吧~
学编程语言,无非看书+实践。
学习c语言,国内入门的就是谭浩强的书绿皮书啦~好好学学。如果对国内的书无好感,可以看看c primer plus。如果要学的更全面,就一定要看Brian W.Kernighan和Dennis M.Ritchie写的C程序设计语言。
以上是语言部分。但是要玩ACM,这还远远不够。
大学期间计算机专业都会学数据结构和算法设计两门课程,这些课程至关重要。所以,如果你要精进自己的算法能力,这两门必须学好。同样推荐几本书,国内的严蔚敏的数据结构和王晓东的计算机算法设计与分析。国外的Mark Allen Weiss的数据结构与算法分析:C语言描述和著名的MIT的算法导论。注意,老外的书更全面复杂,无论是初学阶段,还是后来的能力提升,都会有帮助!入门的话还是国内的啦~
以上内容学好只是表明你的理论基础过关。更重要的就是编码能力了。ACM是理论和实践的结合。在实际编程中会有很多小技巧和规律,这个就要靠你自己摸索了。当然,针对具体的acm比赛方面的书,无论是ACM规则,编码调试技巧还是算法理论,国内也有不少好的,比如刘汝佳的书就非常值得一看。推荐刘汝佳的黑书《算法艺术与信息学竞赛 》(后期看)和他的《算法艺术与信息学竞赛•算法竞赛入门经典》(前期可看)
此外,一定要多多练习,各大OJ,包括ZOJ,POJ等等,都是练习的去处。一定要勤刷题啊~不懂就问,上网多搜索,几乎所有的题目都会有人给出解答的~
最后,参加ACM是件很苦的事情。除了训练,到后期,你得学会合作,毕竟ACM是三人组队参加。要找到自己擅长的领域,一个人很少可能是ACM全能王,你是擅长搜索,还是动态规划,自己要非常清楚。另外,数学理论也要加强!具体数学,离散数学,组合数学,根据你在队伍中角色和职能的定位有目的的精进自己的数学理论~
以上说的顺序不并不是固定的。比如学完c语言后就可在OJ上刷刷水题了~之后可以一边学算法,一边学数据结构,一边上OJ做题啦~
说了这么多,最后说一句,欢迎加入ACM!
更多追问追答
追问
哦,呵呵,是这样我一直用java刷题,但是经常超时,所以想转C,你觉着用C好还是C++好,还有你平均一天刷几道题啊,高手请指教
追答
一天得有个三四题吧~
百度网友540fc64
推荐于2016-10-06 · TA获得超过1195个赞
知道小有建树答主
回答量:339
采纳率:88%
帮助的人:88.3万
展开全部
1、先清楚认识自己的目标,制定一个计划。
2、开始挑选C语言基础书籍以及C语言视频教程。C语言基础教程比较经典的是谭浩强老师的C语言程序设计教材。
3、学习最重要的是静下心。C语言入门,有了C语言基础。再参加ACM学C语言就不再是问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
brizle1
2011-07-25 · 超过14用户采纳过TA的回答
知道答主
回答量:70
采纳率:0%
帮助的人:42.3万
展开全部
同学,acm其实c语言最好了。c语言是最好的学算法语言,百度的“愚文网-ACM算法集锦”,C语言版,同学去看看吧。很值得学习哦 。采纳吧 ,祝你成功!!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sdut_pwz
2011-07-23 · TA获得超过133个赞
知道答主
回答量:207
采纳率:0%
帮助的人:99.4万
展开全部
可以去OJ上刷题, 如果基础不是太好的话可以先去简单点的OJ比如杭电(目前关闭中),山理acm.sdut.edu.cn。如果你基础很牛,就可以去北大,浙大等比较牛的OJ。
我也喜欢ACM,有兴趣的话可以交个朋友,QQ:1056168165
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式