【来信】

老师您好!

  非常冒昧的来打搅您,仅仅是在学习上实在有些困惑才来向您求教一番。
  我是计算机科学与技术的大一学生,我非常喜欢我自己的专业,可是学校里讲的东西太慢,太浅,所以我一般都是自学,我在自学的时候最大的问题不是学习本身的问题,而是方向的问题,我学的东西非常杂,在这大半段的大一生活里,我学了C,一些win32编程,另一些简单的socket编程,还学了一些C通过ODBC操作数据库。如今我正在学数据结构和算法,我打算未来的一段时间里一门心思搞数据结构和算法,可是我不知道在学习数据结构的过程中,是否有必要用C语言去实现所有的算法和结构,我如今学到了二叉树,前面的那些我所实用代码实现了。我经常有疑惑,这些结构在c++那些更加抽象的语言中都帮你写好库函数了,我在读《C陷阱与缺陷》的时候作者说要学会用c++的库函数,那我如今还有必要去用c实现那些结构吗?
  第二个问题就是学习方向的问题,我不太清楚要学哪些东西,我想考MIT的研究生,真的非常想。我该怎么去努力呢??从我上大学到如今大一快结束了,我读了《C和指针》,《C专家编程》,《C陷阱与缺陷》,《C primer plus》还有如今在读的《数据结构与算法分析》,我想问问我还须要读哪些书能让我步入精英的行列?我读完的那些书是从头到尾读完的,里面留的问题我也一个一个实现了。
  第三个问题,数学要学到什么程度,我的高数是和数学专业一起学的,我把高数课退了,学了微积分和多元微积分,可是我的线性代数学的是工科的,没有去学高等代数,离散数学我认为学校教的太简单,自己买了本《离散数学及其应用》眼下学了大概1/4左右,我的数学成绩还算不错,学校里的考试一般在90分到100分左右,这学期我报名參加了全国大学生数学竞赛,如今正在准备中,我想问问我想考MIT的话,数学要学的有多好才够。ps:我们学校没有到MIT的项目,仅仅有牛津剑桥的。我想考MIT预计仅仅能靠自己。
  希望老师能为我指点一个方向,感激不尽~~~~~
  打搅之处还望海涵!!!
  
  【回复】
  说实话,给你说几句,我也有压力了。你的学习,从你所讲的盾,非常强大了。我花非常多时间做“雪中送炭”了,面对的尽是学不下去之类的话题,自己的专业水平也不见涨,对“锦上添花”常感无力。只是,能说得上的,就谈谈我的看法,供參考。
  你正在大一,其它事情还远着呢,所以,合适这种放开来学。C++库函数是已经有了,你须要学会用,可是,用C语言实现这些结构,作为学习过程,全然有必要去做。我甚至对如你一般有强大学习力的同学就提过建议,建一个自己的算法库。我们看重的是这个学习过程。想想在高中时,几世纪曾经就有人做过的物理实验为什么还要学生反复,由于这是学习过程中的环节。有了这种学习,你将不一样,比如做游戏开发,有些人会用引擎开发,有些人是做引擎的,形成了行业中不同的层次。
  第二个问题,技术类的书,像你这样强的人,能够尝试着将最经典的《计算机程序设计艺术》读下去,另外你读的书中,缺少计算机组成和体系结构的书,我知道的好书有《深入理解计算机系统》。注意将计算机系统看成一个总体去学习,在大学阶段,不要将软件、硬件分得那么清。想在行业中做得更深远一些,你读的书不应该限于专业和技术。和专业、行业相关的,举我看过的,有《信息简史》、《浪潮之巅》、《数学之美》、《逻辑的引擎》等,你应该读很多其它的此类的书。而作为了解社会、了解人(别人和自己)的书,应该是能读书的你该须要关注的。
  第三个数学的问题,你不满足于考试是对的,拿出你最大的能量和灵活去应对,数学竞赛是能够利用好的一个载体。要学多好,我想半天也不知道该怎么说,大概我没有学那么好过,以至于都想不到“好”会是一个什么样子。自己把握吧,相关的科目,知其然,知其发展过程,知其所以然,学会当中的思维方式,有能力去发展理论,须要用时,立马能拿出来用。毕竟大学的目标不仅仅是专业好,专业能力强也不仅仅是数学好,尽力即可。
  我将考MIT的事放最后,这也是我解答不了的事。于政策、流程、标准,一概没有感觉。一般而言,国外好大学,要看你的绩点,看你本科阶段做过的工作(专业研究的,以及服务社会的,等等)。了解的途径,看一些留学信息,以及直接去看MIT的官网,甚至和招生主管Email沟通。有这种目标,提前了解情,并依照这个方向前进,这是该做的事。

  羡慕你的状态,相信你会有更激情的学习。

==================== 迂者 贺利坚 CSDN博客专栏=================
|== IT学子成长指导专栏 专栏文章的分类文件夹(不定期更新) ==|
|== C++ 课堂在线专栏  贺利坚课程教学链接(分课程年级) ==|
|== 我写的书——《逆袭大学——传给IT学子的正能量》    ==|
===== 为IT菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 =====

给想上MIT的牛学生说几句的更多相关文章

  1. nodejs+phantomjs+七牛 实现截屏操作并上传七牛存储

    近来研究了下phantomjs,只是初涉,还谈不上深入研究,首先介绍下什么是phantomjs. 官网上的介绍是:”PhantomJS is a headless WebKit scriptable ...

  2. MIT一牛人对数学在机器学习中的作用给的评述

    MIT一牛人对数学在机器学习中的作用给的评述 转载自http://my.oschina.net/feedao/blog/52252,不过这个链接也是转载的,出处已经无从考证了.   感觉数学似乎总是不 ...

  3. 一些我推荐的和想上的网络课程(Coursera, edX, Udacity)

    从面向找工作的角度出发,我觉得以下课程有很大帮助: 首推Robert Sedgewick,也是我觉得对我帮助最大的老师,讲课特点是能把复杂的算法讲解清楚(典型例子:红黑树,KMP算法) 他在Cours ...

  4. 最近想上游戏,弄了个工作室,名"柑谷工作室"

    最近想上游戏,弄了个工作室,名"柑谷工作室",名字取得有点随便,原因是好名字都让狗用了.想当年我用的龙纹工作室,现在龙纹两字也被人用了.人家有硅谷,然后我弄个柑谷,差不多吧.算了, ...

  5. BZOJ 3697: 采药人的路径 [点分治] [我想上化学课]

    传送门 题意: 路径有$-1,1$两种权值,求有多少路径满足权值和为$0$且有一个点将路径分成权值和为$0$的两段 第四节课本来想去上化学,然后快上课了这道题还没调出来.....可恶我想上化学 昨天两 ...

  6. 有个人想上一个n级的台阶,每次只能迈1级或者迈2级台阶,问:这个人有多少种方法可以把台阶走完?

    有个人想上一个n级的台阶,每次只能迈1级或者迈2级台阶,问:这个人有多少种方法可以把台阶走完? 相关问题: (1)有个人想上一个n级的台阶,每次只能迈1级或者迈2级台阶,问:这个人有多少种方法可以把台 ...

  7. vue-element:文件上传七牛之key和异步的问题

    效果图: html 代码: <el-form-item label="Excel文件" :label-width="formLabelWidth" pro ...

  8. android上引入七牛 上传图片或者文件 最终整理版本(可用)

    前言: 以下是引入七牛的步骤,以及在七牛中上传文件和获取文件private 私密地址. 生成上传凭证和获取下载凭证 具体如果使用过程有什么疑问可以加QQ(备注:七牛问题). 1:导入相关的包(注意是4 ...

  9. PHP系列 | Thinkphp3.2 上传七牛 bad token 问题 [ layui.upload 图片/文件上传]

    前端代码 <div class="logo_out" id="upload-logo"></div> JS代码 /** * 上传图片 * ...

随机推荐

  1. SGU 155.Cartesian Tree

    时间限制:0.25s 空间限制:6M 题意: 给出n(n< 50000)个含双关键字(key,val)的节点,构造一颗树使该树,按key值是一颗二分查找树,按val值是一个小根堆. Soluti ...

  2. PHPCMS 使用图示和PHPCMS二次开发教程(转)

    PHPCMS V9 核心文件说明 模块与控制器 模块: phpcms v9框架中的模块,位于phpcms/modules目录中 每一个目录称之为一个模块.即url访问中的m. 访问content模块示 ...

  3. 15_RHEL7挂载NTFS分区

    1.下载ntfs-3g wget https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2015.3.14.tgz 2.安装 tar -zxvf ntfs-3 ...

  4. Android JNI和NDK关系

    1.什么JNI Java Native Interface(JNI)标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互.JNI 是本地编程接口,它使得在 Java 虚拟机(VM) ...

  5. jQuery 树形结构

    强大的jquery.ztree树形菜单插件支持多种树形菜单导航 http://www.17sucai.com/pins/2259.html 演示: http://www.17sucai.com/pin ...

  6. [Android1.5]TextView跑马灯效果

    from: http://www.cnblogs.com/over140/archive/2010/08/20/1804770.html 前言 这个效果在两周前搜索过,网上倒是有转载,可恨的是转载之后 ...

  7. GO:格式化代码

    http://www.ituring.com.cn/article/39380 Go 开发团队不想要 Go 语言像许多其它语言那样总是在为代码风格而引发无休止的争论,浪费大量宝贵的开发时间,因此他们制 ...

  8. 转:11个实用但你可能不知道的Python程序库

    原文来自于:http://www.techug.com/11-python-libraries-you-might-not-know 目前,网上已有成千上万个Python包,但几乎没有人能够全部知道它 ...

  9. ubuntu删除openjdk,安装 Sun JDK

    1.到官网下载安装包: jdk-7-linux-i586.tar.gz 2.创建安装目录:sudo mkdir /usr/lib/jvm 3. 解压缩:tar zxvf ./jdk-7-linux-i ...

  10. JAVA存取对象属性时,如果开程多线程,记得对相关存取方法作原子化操作定义

    最显著的应用当然是银行存款和取款,不要存在存取数字和实际发生不一样的情况. synchronized关键字. class BankAccount { private int balance = 100 ...