对“计算机科学试验班”的一点认识

作为哈尔滨工业大学2013级一名光荣的计算机学院本科生,我很荣幸在大一第一学期结束后通过了“基础学科拔尖学生培养试验计划”(简称“珠峰计划”)的层层选拔(我的面试经历),进入了这个名号响亮的班级——“计算机科学试验班”。在这个13级计算机学院评奖评优和14级试验班招生之际,我写下这篇文章,希望能纠正大家对试验班的一些不恰当的认识,并且尽量为将来的师弟师妹们解答一些疑惑。
继续阅读

Python实现的学历与日历互转

背景:学历是指大学中常用的“第X周周X”这种日期格式,日历是指我们常用的公历。大学生活中难免会遇到这两种日期的转换问题,以前我都是看着万年历自己数的,今天在课程格子中添加下学期的一大坨考试安排(教务处课表上用的是学历,而课程格子中只支持日历)时,累觉不想再手动数了,于是花了比数数更长的时间写了一个简单的Python小程序,用到了datetime中的date类和timedelta类,也算是掌握了一个现成的小工具,不用自己再去写日期类了。只是随便写了一下给自己临时用的,用户体验、程序流程和逻辑什么的都没太在意。在这儿记录一下好了,以备将来用到。

继续阅读

Shell学习笔记

最近在学习Shell脚本编程,因为工作环境已经转到了*nix下,不会熟练使用Shell显然是不行的。以前对于Shell的掌握程度只是会用几个十分基本的命令而已,根本不算会Shell这门“语言”。(之前Hackathon的时候要求用Github协同开发,我都是用的Github for Mac这个桌面应用,因为那时git的概念和基本命令都根本没弄懂和记住……跑题了。。接下来还会写一篇《Git学习笔记》。)

废话少说,边学边写,学到哪里写哪里,以后有空再补全。

继续阅读

卓越我们的未来

——“卓越你未来”基础学部学生训练营结营论文

“终究会,有一天,我们都变成昨天,是你陪我走过一生一回匆匆的人间;有一天,就是今天,今天就是有一天,说出一直没说对你的感谢……”在《干杯》的歌声中,训练营的点点滴滴逐一浮现在脑海中。此时此刻,我想说出的,不只有感谢,还有感动……

训练营结束了,三个月很长,却又很短;我们的故事很短,却又很长。三个月,我认识了一堆志同道合的朋友,一群比我优秀的同伴,一个个最可爱的人。三个月的“卓越你未来”训练营,是一段旅程,也曾让我们跋山涉水,也曾让我们探奇揽胜。而我在这段旅程中,也曾惊喜,也曾沉思,也曾感动。

继续阅读

香港游记

P.S. 这是一个提纲,等下午回来我再详细写。

赴港交流团

day 0

看小说荒废了,都没准备好。。

day 1

五点多

第一次坐飞机

初入香港

景象瞬间切换

入住树仁

宿舍引发的吐槽

港币、物价初体验

吃饭

时代广场

小伙伴们

努力吧!为了实现梦想与诺言!

day 2

美美地睡到八点

窗外景色依然美丽,依然如梦

开始第一天的交流学习

一天像过了好几天

我的计算机技术学习经历

和很多人一样,我也是从小开始接触电脑的。又和很多人不一样,由于家长的管制和自己的3D眩晕症,我对电脑的兴趣并没有多少是从游戏中培养起来的。因为不能玩游戏,所以我几乎将电脑方面的所有注意力都集中在了“技术”上,尽管在小时候,“技术”在我的概念中只是用来做“好玩”的事情的手段而已。

于是,我就沿着这样一个光(dòu)辉(bī)的历程成长了起来。

继续阅读

成长ING

近来一次次地感受到了哈尔滨这个冰城的暖意,心里有一种感觉在悄然萌发。

直到今天,我终于真实地感觉到,它已经茁壮地成长为一棵小树。发现了久违的感觉,欣喜与激动终于再次激发了我写日志的热情。不记,无以面对在大学里浑浑噩噩了近一个学期的自己。

这种感觉,就是对这个学校、这个城市的归属感。此刻我突然意识到,我竟然不再称“回学校”,而已十分自然地改称“回家”。我所找到的,正是久违的家的感觉。

(此处暂时省略N字,原谅我太忙)

基础学部“卓越你未来”学生训练营

2014年5月17日 野外生存

是今天的野外生存,让我脱下长日的假面,奔向了一个梦幻的疆界。在那里,我们忘记了自己是哈工大的学生,忘记了平常学习生活的一切烦恼,脑中所想全是身边的四十多名兄弟姐妹,眼中所见全是野外的美景,黝黑的土地,清凌凌的水和蓝莹莹的天。

是今天的野外生存,让我明白,要想真正地融入大学生活,感受大学生活,对大学产生归属感,靠的不是学霸式的努力,不是种种的不满,而是拥有一群志同道合的朋友,找到自己的“组织”,与伙伴们一起做真正属于我们的事。我意识到,我所融入的大学生活不在充斥着游戏的宿舍里,不在一夜刷千题的教学楼里,而是在一次次的活动、交流与合作学习中。大学是培养人才的地方,如果把大学上成技校甚至上成网吧,那简直是浪费宝贵的资源。

是今天的野外生存,告诉我,去接触自然吧,你还缺乏很多你本应了解的基本知识和技能。从不知道为保护庄稼应该走沟还是走拢,到学会支起一个帐篷,野外生存让我们学会了太多。

是今天的野外生存,让我们重返纯真,不去刻意显示自己,也不去猜测别人,只是你做饭来我刷碗,你唱歌来我跳舞,我们享受着最简单的快乐,却建立起了最坚固的友情。虽然也许我们到现在依然叫不出彼此的名字,可是我们都感受到,这就是我们在大学里找到的最纯洁的“家人”。训练营的感觉,是久违的家的感觉。

野外生存这一课,注定会成为我成长历程中一个重要的里程碑。因为今天,我找到了融入感;因为你们,我找到了家的感觉。

2014年5月24日 第一期自由沙龙

不得不说,今天贲放学姐讲的很多看法,虽然她说我们现在还小,可能觉得比较扯,但是我自己却觉得深有感触。

每个人来到大学,都有不同的追求。有的人选择闷头学习、研究,用超越众人的成绩来证明自己的优秀;有的人投身学生工作,用奉献和实干来证明自己的能力。有句话是这样说的:在大学里,有三样东西是最重要的。它们分别是,学习成绩,学生工作和恋爱。但是,想要兼顾任何两者都十分困难。但我认为,作为渴望优秀的人,我们应该迎难而上:恋爱可遇不可求,(即使遇到自己感觉对的人,也不一定能成功,)暂且不讨论;学习成绩与学生工作在某种程度上确实是一对矛盾,但正如放姐所说,在明白“地球少了我照样转”的同时,要学会分析与规划,提高效率,总能找到最优方案。这学期我因为同时参与钢琴社团、ACM竞赛和卓越训练营,经常忙得焦头烂额,就算突然有空闲时间了,也累得不想学习,导致几乎每科成绩都比较低。但今天,我从学姐这里学到了坚持:相信自己,不要放弃,在忙乱中提高自己,总有一天自己会能够hold住一切,并搞好学习成绩。

无论你多么优秀,总会有比你更优秀的人。这是学姐的另一个“教诲”,我深以为然。其实前几天我也在想这个问题,结论就是:能遇到比自己更优秀的人是好事,而且遇到的越多越好。我并不需要成为最优秀的人,因为优秀没有极限,我只想要自己成为一个足够优秀的人,然后与其他优秀的人一起,做一些伟大的事。身边有很多优秀的人,是一种财富,是学习的资源宝库,也是自己进步的不竭动力。优秀的单枪匹马就可以有作为的时代早已过去。

最后还有一点感动是我不得不提的。当祥生鼓起勇气叙说了自己的“自卑”后,大家为他鼓起了持久的掌声。一开始我走了神,只以为是普通的鼓掌,但当我一抬头,看到了大家投向祥生的真诚与期盼的眼神,我恍然大悟。正如学姐所说:这掌声,不是给你的问题的,而是给你的!那时,我突然感觉每个人都是那么的可爱,感觉自己无比的幸福,能和这样一群有爱的人做好朋友,是我再快乐不过的事。

今天的自由沙龙,不仅让我坚定了坚持学习下去,决不放弃的信念,还让我再次感受到了训练营大家庭的温暖。愿美好的记忆永存。

一道关于指针的Google笔试题

[题目]


下面说法正确的是[]
A.函数foo()不能改变p指向的字符串内容
B.函数foo()不能使指针p指向malloc生成的地址
C.函数foo()可以使p指向新的字符串常量
D.函数foo()可以把p赋值为 NULL.

简单地说,p是一个字符串。

实际上,p是一个普通的指针(可以修改指向),这个指针指向一个不可改变的字符(i.e. 这个指针本身的值是一个字符在内存中存储的地址),这个字符是常字符串”hello”的第一个字符。

const char **pp是一个指针,这个指针指向一个指针’,指针’就是像上述的p那样的指针。函数foo仅接受一个参数,这个参数的值是pp要指向的那个指针自己在内存中的地址(不是那个指针指向的地址),正是由于这个原因,第二句写的是foo(&p),将指针p自己的地址传了进去。此时pp的值就是p的地址,*pp就是p的值,也就是p指向的常字符的地址(或者说常字符串的首地址,因为char*既可以指向字符”又可以指向字符串””,不管指向什么,它都只是存一个字符在内存中的地址,如果指向字符串,那么它存第一个字符的地址,后面的字符是通过指针的加法运算来访问的)。下面依次分析每个选项:

A. 可以通过**pp来读取p指向的字符的值,但是p是指向const char,所以只能读取,不能改变内容,A正确。
B. malloc是从内存中申请空间的函数,它返回申请到的空间的首地址(起始地址)。根据上面的分析,通过为*pp赋值,即可改变p的值,也就是使p的指向。另外,“声明const char* p”的意思不是“p只能指向字符串常量”,而是“不能用p来修改那个字符串”,用普通的char*再指向那个字符串,还是可以修改那个字符串的。换句话说,字符串本身是不带“只读”属性的,是不是只读,在于用户声明的调用方式。例:

又例:

所以foo()能够使p指向malloc生成的地址。B错误。

C. p是指向字符串常量的指针,const修饰的是char,不是char*,所以“只读”的是p指向的那个字符串,而不是p本身。因此,p的指向是可以改变的,可以令它指向其他字符串常量。给*pp赋值即可。C正确。
D. 根据以上分析,可以将p赋值为null(让p指向空)。D正确。

我为什么需要一个win8.1平板电脑

win8.1平板和智能手机、ipad的有意义的区别:

屏幕大(与手机相比);

操控方式多,可用笔;

可以运行电脑程序。

1.携带和阅读电子资料,如名著、课本、教学视频。包括pdf、常见图片格式、常见视频格式。chm、exe可能也有少量需要。

2.更方便快捷地查阅信息。做作业时查知识点和题目,上课时查疑惑点,还可以方便地查询一些生活信息。

3.书写功能。可以用来记临时信息(笔记)、做草稿纸等。与纸张相比,有媒体承载形式多样(可以插入照片)、环保等优点。

4.比笔记本电脑更便携,哪里都装得下,又能兼容笔记本电脑上的软件。用笔或蓝牙鼠标键盘,可以在上专业课(如程序设计课)时代替笔记本电脑。

5.减少无意义的用笔记本电脑时间,从而减少在网上时间的浪费。

6.可以用来看乐谱。很方便,还能示范演奏。

基础学科拔尖学生培养试验计划小记

早在大一秋季学期结束之前,我们就被开会通知有这么一个“珠峰计划”。这种拔尖计划我当然很感兴趣,如果能进入,对自己应该也是一种肯定和鼓励。又正好我RP爆发,上学期教务处学分绩92,排名排到了第4,于是整个寒假直至今日满脑子都一直在想这个报名和面试的事。

为了给自己增加通过的希望,我几乎把能想到的成果和荣誉都列了出来,看起来还挺厉害的,不过我知道自己其实还十分不足,懂的只是九牛一毛。面试前导员发了一个说明,我就一直琢磨这到底是要考什么: 继续阅读