大一就为留学准备,很上进也很上道啊! I6 S, i
如果你担心ACM主要是研究数学不是编程,那你大可不必。经过长期的ACM训练,算法和数据结构掌握的都要比别人好。唯一的问题是对程序风格以及结构没有训练到位,并且和技术无关,新技术脱节比较厉害,这倒是真的。但如果想花时间多掌握新技术,就要明确自己以后申请的具体方向,然后研究和这个方向相关的技术,而不是单纯的学习技术,比如什么structs框架之类的。那样你没有和别人的工作接轨,没有实践的话,不利于在技术道路上成长。所以,搞ACM相当于打基础,尤其是以后出国搞研究必备的编程基础。 I( f# e4 Q
至于ACM没有训练到的地方,比如程序结构、设计,可以通过自己学习设计模式这样的东西来一定程度补足。但也是要辅以研究较大框架的东西(比如开源的图形引擎)来加深理解,也要动手在上面做些算法实现。
超后说说ACM对数学的训练。数学的思维得到锻炼是非常重要的,尤其是你要出国深造。算法和数据结构实际都是离散数学,没有好的数学思维很难掌握好理解透。所以不要认为ACM研究数学有什么不好。- g+ I/ Q6 B! y4 x( F
. Q2 h8 K0 @: m
至于为出国挣钱,你可以换个方式考虑。如果你条件够好,你申请PhD都是会有钱的,一般情况都不需要家里再给你掏钱。