- 合理分配学习与休息时间,量力而行。
- 保证充足的睡眠时间,以及尽可能地不要过晚入睡。
- 注意用眼时长,由于信息学院学生会时常接触电脑屏幕,故须适当放松。
- 注意饮食,不要经常食用方便食品(比如泡面)。
Prepare for speaking and listening so that you can talk fluently with peers. You also need some reading skills so that you can read Wikipedia, which is not blocked if you read English. There are many links to Wikipedia in this manual, try understand them first :).
One trivia about Wikipedia: whenever you run into some alien language, wiki(Yes you can use it as a verb meaning "search something on wiki") it. If there are other confusing content in the wiki page, 80% chance it will lead you to another wiki page. Thus you can never exhaust Wikipedia before you give up. That's why wiki always wins.
Your take away: Practice your English reading skills and wiki whatever you don't understand.
能够较为顺利地与他人交流(听说能力),以及能够阅读一些较长的阅读材料(例如维基百科上的词条,英文维基未被墙)。这本教程中包含了诸多英文维基的链接,请先阅读并理解他们。
关于维基的轶事:无论何时你遇到了你不理解的术语,维基它(是的,维基可以做动词,表示“去维基上找东西”)。如果在这个术语的词条内出现了其他你不理解的内容,80%的概率这些内容会把你引入另一个维基页面。因而,在你试图理解什么内容而感到精疲力竭之前,维基总有多余的页面让你继续阅读。所以你永远不可能比过维基。
给你的忠告:练习英语阅读,使用维基搜索任何你不理解的内容。
Prepare a little bit for Calculus, Linear Algebra. You want to know the basic terminology but it's not required to know how to use them.
稍微接触微积分,线性代数的基本概念,能够理解一些概念名称的含义(准备期并不要求掌握与应用)。
对于计算机而言,主要还是三类操作系统:Linux、Windows、macOS。 在这里,我们主要推荐的自然是Linux的Ubuntu 18.04 发行版,平时作业、项目、实验等使用较多。
在代码/项目管理中,我们最为推崇的方式是以git为首的版本控制(Version Control)系统。 所谓版本控制系统,是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。 ...
在编写代码的部分里,有Sublime Text, vi, Emacs...
如果你觉得上面那些太老,VS Code 也是不错的选择。
而为了方便调试程序,我们会使用集成开发环境(IDE)进行编写以及调试代码,推荐JetBrains全家桶...
并为了清晰地说明自己编写代码的思路,强烈建议写注释,以便以后阅读、以及更改代码。 至于项目说明,我们推荐使用LaTeX以及markdown(实际上,你们现在正在看的这本教程就是用markdown编写的)。 我们可以使用这些文字排版系统,使得一些文字说明显示地更为清楚明了。 甚至有些作业,我们建议用LaTeX进行书写,以此得到的作业清晰美观,批改者或因此加分。 所以在这里,我们建议大家能够初步使用...
那在硬件部分,自然也会给出我们的推荐。 但就如同照相机之于摄影师,对于计算机部分的优劣,在编写大部分代码的时候往往不是最为关键的要素。 但是当下,也许你们并没有一个合适的写代码的工具,所以提前在这里给大家一个较为合理的推荐。
提到硬件,很多人会自然地想到**处理器(CPU)、内存(Memory)、图形处理器(GPU)、硬盘(HDD, SSD)之类。 但是,实际上说一个好的键盘、鼠标、甚至是优质的显示器所带来的提升,在相同的投入下,一些计算机的性能方面的提升往往给人带来的感受反而不是那么明显。 因此,首先需要考虑的键盘、鼠标(或触控板)、显示器。 当然,有些体验极佳的外设,往往与“便携”二字很难有着较为密切的联系。 所以出于便携性的考虑,我们只能做出相应妥协,但是在一些电脑中做出选择,键盘、鼠标、以及显示器的优劣,应该适当注重下这些电脑中的区别。 但是在宿舍此类我们不太注重便携的情境下,我们比较推荐设置一些外设,来改进原有便携计算机的不足之处。
当然,电脑性能在选购时也是重要的考虑点,毕竟有时候在提交作业的截止时期前那一点点的卡顿都是令人难以忍受的。 所以我们对于**处理器的推荐配置是英特尔(Intel)的酷睿(Core)以及至强(Xeon)系列。(请购买酷睿低压版i7以上,标压版i5以上的处理器,同等级优先购买8xxx的版本。)以及超微半导体(AMD)的锐龙(Ryzen)系列。至于独立显卡,我们不认为它很重要,因为对于图形处理器,除却某些少数的课程(例如深度学习Deep Learning和并行计算Parallel Computing)需要,其他多数的课程对此没有要求。 但如若需要,不要选购AMD的显卡,因为Nvidia CUDA依然是GPU计算的主流平台,并且AMD的驱动对Linux支持一般。此外,不要选购低于GTX1050(Notebook)的独立显卡,考虑到电池和发热,低于它的独显实际使用上还不如Intel集显,省下的钱可以升级一下内存和 SSD。 内存推荐至少为8G。 而硬盘方面,我们强烈推荐SSD作为启动盘并将大型软件安装在其中,因为SSD的高读取速度将会给你带来完全不同的体验。这一点在操作系统启动,MATLAB,Jetbrain 全家桶和 Adobe 全家桶的启动中尤为突出。
此外电池续航,重量和散热也是选购笔记本电脑非常重要的方面,这三点对你使用体验的影响比硬件本身还要大。自己要考虑清楚想要如何使用你的笔记本电脑,比如你是否能够接受每天背3kg电脑+电源去上课。而且,为了避免广告的嫌疑,我们不推荐具体的设备型号,且在暑假期间对于推荐电脑的问题我们也只会作少数回复。
最后,再次强调:对于计算机部分的优劣,在编写大部分代码的时候往往不是最为关键的要素。
(For the websites, start from parts called "tutorial" or "guide" and go to detailed reference only when you are interested in a specific topic.)
Rust Programming language (Optional)
Easy Problem 1: Visting a Friend
Easy Problem 2: Chthollys request
Easy Problem 3: Maximum Subarray
Advanced Problem 1: Python Matrix
Advanced Problem 2: Rust Matrix
If you cannot finish median in two months all by yourself, it is recommended that you reconsider your choice to join SIST.
如果在两个月内无法自行完成中等题目,你可能要慎重考虑信息学院是否适合你。