淘姐妹

淘姐妹

你大学生活有遗憾吗

电脑 0

淘宝搜:【天降红包222】领超级红包,京东搜:【天降红包222】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】


hello, 大家周末好,之前在知乎上看到在大学中一个比较典型选择问题:

计算机学生在大学四年应是以数据结构和算法为重还是技术为重?

如题,如果更偏向数据结构和算法学的技术少是不是找工作就稍微困难或不是;如果以技术为重会不会只知道怎么用,而内部的一些算法和数据结构都不清楚无法提升自己能力呢?

先说一下我自己大学经历吧,这样回答问题可能?更有说服力。

(PS:答案在最后!)

目录:

以为是王者

堕落的起点

燃烧的梦想

刻苦训练

比赛失利

依然坚持

最后的挽歌

正文(回答问题)

最后

大一主要是上课,当时信息没有现在发达,技术资料主要是从图书馆获取,没有公众号,不知道前辈指导,也不知道技术博客这些东西,基本上闷头学习(还有释放天性玩游戏),大一不小心借来一本计算机组成原理的书,看得是非常津津有味(但当时很多还是没有完全明白),甚至在其他课上都在看,有一次被导员发现了,还在班级上夸了我,说我大一就在看大三的课程(计算机组成原理应该是计科大三的课程),顿时班级其他同学都认为我是大神,我自己心里明白得很,就是一个菜鸟,当时还没有内卷这个词,不然肯定被大家鄙视。

在大学之前我从来没有学过编程,选择计科完成是因为我高中特别喜欢玩游戏,尤其竞技类游戏,比如CS,红色警戒,帝国时代等(这些经典竞技游戏,可能现在的大学生都不知道了),因为高中的时候,经常去网吧玩游戏,这也是我比较遗憾的地方,浪费大量学习时间,虽然最后考上211大学,但并不是我目标的大学,高中还是要好好学习,远离游戏。

转眼大一过去了,期末考试下来,成绩让人有些失望,除了专业课看起来还可以,其他科目分并不高,大一基本上是在玩和学习中度过,没有找到奋斗的目标,但对编程却感兴趣起来,C语言课程作业,很快完成,而且还可以指导别人。

转折点在大二,班里有人暑假没有回家去参加了ACM培训,我当时还不知道ACM是什么,导员也没有给大家普及,我暑假也没有回家,是和校友(高中同学,数学系)在宿舍玩帝国时代和学习,我把电脑搬到他们宿舍,吃住一起,确实是一段比较欢乐的时光,奠定我们牢固友谊(将来10多年日子,我们依然混在一起),日子过得有些d废。

但恰恰在那次暑假中,让我知道了ACM是啥,暑假不光是玩游戏,偶尔还学习编程(个人爱好),在搜索一个编程问题文章的时候,我看到了一篇关于ACM选手文章,讲他们学校(杭电)如何组队参加比赛,如何逆风翻盘,干翻名校获奖等,我上网搜索了关于ACM的一切,当时周围的人都不知道,得知ACM是计算机大学生最高级别竞赛,当时燃起了我的斗志,我对一切竞技比赛,都有强烈好胜心。

由于太喜欢ACM这种比赛了,我的本能,让我选择了搞算法比赛,所以我放弃好好学习,获取奖学金路线,也放弃了学习技术的路线,其实当时还不知道技术路线,视野限制了我,我不知道大学学习的东西,未来会怎么用,我也没有去认真想过,只知道曾经有个梦想是成为比尔盖茨,在当时大部分人都是懵逼的,我记得只有少部分用linux系统的同学,他们对技术了解多一点,或许Linux系统不会把人变傻,需要不断去学习。

从此之后,我开始进入算法比赛的圈子,知道很多圈子里面的东西,比如NOIP比赛,IOI比赛,ACM比赛,了解各种算法比赛或算题平台:POJ,ZOJ,USACO,UVA,URAL,Topcoder,Codeforces等。

这里简单普及一下区别

NOIP比赛,是高中生比赛,为什么我一个大学生要去关注高中生比赛呢,因为很多大神都是从高中比赛里面过来的,比如楼教主;

IOI比赛,是国际信息学奥林匹克竞赛(高中),可以保送清华和北大的比赛,里面很多大神,单在算法领域超过80%的大学生,他们在国家队训练的论文,质量非常高,我基本全部都下载打印出来学习,这个就是起步的差距,视野是多么的重要。

POJ(北大),ZOJ(浙大) 老牌国内刷题网站,水题太多;

USACO 是美国中学生刷题网站,USACO的traing(天梯)不知道造福多少的oier们。高质量的天梯题,友好的做题流程(给予错误点的正确答案和标准输入)。

UVA,URAL国外刷题网站,题目质量高,偏难。

TopcoderCodeforces?的社区比较活跃,优秀的比赛平台,主要是题目质量比较高,做的人人也比较多,可以查看别人代码和数据。

我之前还在朋友圈感叹过,陈丹琦IOI金牌选手,而这些厉害的人现在依然很厉害, 大多数后面都转向人工智能,但在当时这个其实并不火,谁也不知道。

由于我是大二暑假才进入ACM圈子,其实对于我这种大学才开始编程的人来说,起步确实有点晚了,我指定很多计划,也买了一些算法书, 刘汝佳的黑书《算法艺术与信息学竞赛》, 这本书起点有点高,需要有点内功的人才能完全领会里面的精华,计算机的课程基本上我都是自学,比如数据结构和算法,而且教材是去图书馆借的,算法导论,严蔚敏的《数据结构》,然后开始拼命刷题,看别人的报告,看论文

比如DD大牛的:背包九讲

侯启明:《信息论在信息学竞赛中的简单应用》

方奇:《染色法和构造法在棋盘上的应用》

楼天城:《匹配算法在搜索问题中的巧用》

周源:《浅谈数形结合思想在信息学竞赛中的应用》

朱泽园:《多串匹配算法及其启示》

余远铭:《最短路算法及其应用》

俞华程《矩阵乘法在信息学中的应用》

陈丹琦《基于连通性状态压缩的动态规划问题》

毛子青:《动态规划算法的优化技巧》

方奇:《动态规划》

...

当时最难的理解,就是动态规划,其他比较难的都是数学相关的(一般是数论或者是组合数学),这个花了我很多时间,和大多数人一样,在这个圈子里面,起步晚的人都得刻苦训练,很多人都封闭式训练,陪伴他们都是无数个黑夜,泡面和外卖,而我并没有加入校队,也没有进行封闭式训练,都是全屏个人热爱,私底下训练,当时还很菜。

大三有幸报名学校的ACM培训班,一种相见恨晚感觉,如果大一的时候,导员能够提早告诉我们,或许人生可能就不一样,当时确实有点埋怨辅导员,因为之前去参加培训的有些人根本就对ACM不感冒,我一定要珍惜这次机会,?培训课里面会有校队高手来指导我们,差距还是有一点,他们有些人已经参加过比赛,也刷大量的题,我依然是菜鸟一个,培训结束后没有比赛,也没有选拔,有些人就进了校队了,我认识一个校队朋友,由于住得很近,每天都和他讨论算法,他经常带着我进校队训练室,让我终于看见那些真正打比赛人平时是怎么训练的,大部分时间,大家都在刷题,交流其实并不多。

我并不是校队的人,但我却天天和他们混在一起,反正队长也不介意,跟着他们一起刷题,但大家都很忙,基本上不会回答你的问题,我都是自己琢磨,看网上题解,如果没有人指导,这个其实会走很多弯路,进步会很慢,所以打ACM之前,一定要请教一些前辈。

证明自己的机会来了,ACM亚洲预选赛就我们学校举行,校内选拔赛那天,我还在床上睡觉,突然班上一个同学叫我一起参加比赛,一起组队,我即兴奋又紧张,第一次参加正式的比赛,比较激动,比赛过程很紧张,组队其他两个同学都是班上学习特别优秀的同学,但貌似我们大家都没有太多比赛经验(刷题不够多),只做对了2道题,最后的结果是选拔失败,无缘预选赛,非常失落,因为这一等就是一年,明年我就大四了,我还有机会吗?

这让我想起了,2009年,我另一个偶像,伍声2009休学一年带领LGD战队,一举夺得了中国的第一个DOTA世界冠军,dota在大学时代,也是我又恨又爱的游戏,恨是这个游戏占据我大量的时间(周围同学都在玩),爱是这个游戏教会我很多团队做事情的经验,知道一个优秀团队需要分工明确,各展所长,我喜欢竞技的比赛,dota也不例外,但我并没有想去打职业想法,当时真的想休学一年搞算法比赛,因为算法比赛才是我的最爱。

虽然第一次比赛失利,但我还是坚持训练,还在不停学习,刷题,看解题报告,论文等,心里一直不甘心,POJ上面有一些专题训练,我也会刷一下,比如楼教主的男人八题

时至今日也没能成为一个真“男人”,后面也参加百度之星比赛,网易的有道难题比赛,topcoder比赛,codeforce比赛,知道了很多大佬,了解很大佬传奇故事,这些曾经鼓励一代代OIer/ACMer前进的传奇故事, 比如ACRush(娄天成),WJMZBMR(陈立杰),tourist(Korotkevich), Petr(【【微信】】)...

当时topcoder平台排名:

由于大四要出去实习,要搞毕业设计,要准备找工作,所以刷题减少了,但有空仍然会刷一下,top coder上的比赛,仍然会参加,只不过当初ACM赛场的梦想可能实现不了,当时算着,如果读研究生,貌似还可以参加,还可以搏一搏,但现实总是残酷的,家里需要我出去挣钱,最终还是没有去读研。

虽然没有能在大学里面实现自己的愿望,但编程能力解决问题的能力还是被训练得挺强的,其实在学校时候,我还参加过学校举办了星火杯软件比赛,拿软件组的第一名(作品是类似qq聊天软件,支持语音,群聊等),用的是MFC框架,是当时C++ window桌面比较流行框架,不过现在技术早已更新换代。

在班里是比较出名的,但ACM比赛至今是我的一个遗憾,我曾工作后一直没有放弃过,有时间就会参加比赛,训练自己。比如在华为时候,内部算法平台,我也经常去刷题,在腾讯的时候,只要有比赛,都会报名参加:

后面读到过很多退役帖子,很多人最终都认清现实,不得不放弃梦想,也读过楼教主回忆录,由于各种机缘巧合,连楼教主这种ACM顶级大牛都没有拿到过世界冠军。

人生总会有遗憾,最重要是我们曾经奋不顾身去努力过,即使没有达到自己的期望,将来也会成为美好的回忆。

差不多我的大学四年,就是在比赛,游戏,编程中度过。

作为过来人,工作多年,在华为-->外企-->腾讯等多家公司工作过,了解各种类型公司校招,社招面试,跳槽,晋级路线,知道什么东西在工作中非常有用,什么东西可以暂时应付,后面再补也行。

优先看一下大厂的校招要求:

计算机基础(CPU,缓存,内存,磁盘),计网(网络协议),操作系统(进程,线程,多线程,并行,锁, 调度),编程语言(C/C++,go,【【微信】】), 网络编程(socket,epoll),算法与数据结构,设计模式,数据库(mysql,事务,CRUD,分布式一致性,分库分表,负载均衡),安全(鉴权,加密等);

这些基本上都是程序员的基本功,数据结构和算法也是其中之一,如果你不是走特长生路线(类似高中参加竞赛保送清华北大那种):

什么叫特长生:ACM/OJ比赛获奖,或重要开源贡献,或对某一项技术研究很深(比如OS,编译器,编程语言,分布式架构等);

ACM/OJ算法比赛获奖确实可以优先获取进大厂机会(有优势),基本上是以数据结构和算法为重,如果再加上学校buff,进大厂还是挺稳的。

但是大多数人,可能都不是走特长生路线,都是普通人,普通人只能走正常校招路线,需要按上面要求来,那么你就需要把计算机基础掌握好, 数据结构和算法也是需要学习的,只是没有比赛那么要求高,就是把基本数据结构和算法掌握就行:

详细参考:深入理解数据结构和算法

其他计算机基础(CPU,缓存,内存,磁盘),计网(网络协议),操作系统(进程,线程,多线程,并行,锁, 调度),编程语言(C/C++,go,Java,【【微信】】), 网络编程(socket,epoll),设计模式,数据库(mysql,事务,CRUD,分布式一致性,分库分表,负载均衡),安全(鉴权,加密等);

TCP/IP协议精华指南

一句话,如果你决心打算法比赛,就以算法和数据结构为重,多做题,多写代码,这样你的解决问题能力会提升很多,编码能力要比其他同学成长要快, 但算法比赛要想获奖也是有一定难度的,是孤投一掷,有一定风险存在,高风险高回报,人生处处是选择啊,这个看自己的选择了,如果喜欢比赛(有人喜欢这种智力比赛)就试一下,反正最后编码能力提高,找工作也不会太差,一般都是从大一,大二开始,如果已经是大三,则不建议了,这个刷题也是需要很多时间的,算法比赛中需要掌握很多知识点:

但工作中至少一半是用不上的。就看你选择了。

我大学也有一部分人选择搞算法比赛,但只是少数人获奖,然后高薪进大厂;

有一部分人老老实实学习基本课程,高分保研,好学校的研究生进大公司更容易;

有一部分人喜欢技术,崇尚技术可以改变世界,深挖技术路线,参考各种技术论坛,搞Linux,开源项目,最后坚持下来的,都是高薪进了大厂;

有一部分就比较普通,是面向工作学习,八股文搞起来,把计算机基础打牢,每一样都还好,不是特别突出,也有部分进了大厂。

其他。。。没有选择

其实看得这里,你心中答案应该明朗了,条条大路通罗马,只要坚持一条路走到黑,都可以找到好的工作,就看你个人选择,记住,最好早点明确自己的路线,这样才能够有充足的时间去迎接挑战。

- END -

看完一键三连在看转发,点赞

是对文章最大的赞赏,极客重生感谢你

推荐阅读

高考结束了

如何成为技术大神

深入理解数据结构和算法

如何成为一名大厂的优秀员工?


适合夏季双肩包包 背包经典百搭双肩包

适合夏季双肩包的衣服,适合夏天背的双肩包,夏天双肩包选择什么颜色,适合夏天背的双肩背包

自己有一个很老的班尼路的包非常好,很多分区,容量也可以,但是太破旧了,趁着双11求大神推荐。

背景:

随时出差,最多不会超过4天3晚,平时通勤。

自己目前用这种:

还有几个类似的,寨瑞之类的,评价,垃圾,背带很滑又没有胸带腹带,肩膀恨不得往胸口佝偻着,累死人。

还有这种:

质量不差,就是容量太小,感觉只适合装电脑和文件,而且分区糟糕得一塌糊涂,外面就俩小口袋,另外也没有胸带。

出差一般装:

若干天的衣物、水壶、折叠伞、口香糖、小药盒、钥匙、卫生纸、充电套装,偶尔带上网本(当然还有电源线),另外就是办公用品和文件了。体积重量都还可以,对防水有一定要求。

身高一米六,130斤,穿衣服一般穿170尺码或者175尺码的

预算600以内吧

目前看好两个,一个是马盖先的X7,但是感觉会不会也有点小?

还有个算是寨牌子,第七区的,叫什么巨蜥,看着容积、背负都还可以,但是对牌子没有概念和信心。

所以特此求教各路神仙!各路大神!

阿紫前段时间入手了一款双肩包,现在已成为我出行必不可少的物品,作为打工族,阿紫每天上下班都要拎着电脑包,一个背包一个电脑包,有点累有点麻烦,决定买一个实用好看的双肩包,我对包包的要求其实简单,背着不累,外观时尚,空间足够大,对比了很多品牌,最终入手了地平线8号(【【微信】】)双肩包,我比较喜欢这个品牌的设计理念,引入了无性别主义设计,拒绝标签,是个非常时尚的品牌,特别适合追求时尚自由的年轻人。

目前有三款颜色,暮色黑、晨云灰、深藏蓝,都是非常时尚大方的配色,可随自己的喜好选择。我选择的是深藏蓝(模特是我弟弟,身高173cm)

外观时尚

不愧是大品牌包包,双肩包整体外观时尚大气,非常有质感。整体呈藏蓝与黑撞色,正面是以深藏蓝为主,是环保素皮的设计,抚摸触感非常舒适柔软,背面与侧面以黑色为主,深邃耐脏。而且素皮使用起来防水,沾了水和灰尘可以很容易清理,而且也不用担心雨雪天出行背包里的东西被淋湿了,出行的体验感更好,全天守护出行。

正面的拉环开关上方有一个小图标,就是地平线8号的logo,精致的尼龙拉链绳,也可以挂上自己喜好的小配饰哦!包的下方拉链处有个小牌牌 ,彰显个性又尽显时尚。上面写了品牌源自2008年,而且这个是魔术贴的设计,可以更换。当然也可以贴一些自己喜欢的图案上去。而且这款双肩包还设计了两个款式,一个是常规款,这个大一些,可以装下 15.6 寸的游戏本,一个是Mini款,可以装下 14 寸笔记本电脑,相对来说更加小巧一些,大家可以根据自己需求选择哦!重点是这款双肩包兼顾商务与休闲,不管是商务通勤,还是逛街健身,出差旅游,可以说包包一背说走就走~满足多种使用场景~性价比无敌呀!磁吸扣设计

而且这款双肩包区别普通的开合方式,背包采用了磁吸扣设计,设计新颖时尚,比常见的拉链的开合方式更加方便,单手一拉一提很简单,并且还保障了出行安全。一拉就开,一合上就自动吸合,有创意又觉得诚意满满。磁吸盖上后,很稳固,不会担心东西掉出来了。超大空间当初买这款双肩包的原因之一就是空间大,前包两侧都各有一个拉链,可以把拉链拉到底。前包身可以180度的翻转大开合,拿东西也就更加的便捷、轻松,几乎适用于各种场合。20L的容量完全可以装下我们的的各种日常出行用品,让我们的出行准备更充足。

从最贴背一层为电脑夹层,到中间的一层为生活层,平时放书放衣服等大件物,在这二层的中间还分出一小暗层,放平板或者放重要物品,如手机之类,整体是从高到低分布,看起来就特别有层次感,收纳起来非常整齐,赏心悦目。最前面的是一个带拉链的小隔层,可以用来存放一些比较薄的小物品,列入纸巾或者身份证件,银行卡之类的东西。这款双肩包设计了专属的电脑隔层,可以容纳最大15.6寸的笔记本电脑,大容量让携带电脑也更加方便了。电脑隔层还有一层绒布面料进行保护,防止贵重物品产生磕碰和划痕。这个设计非常贴心。

如果觉得从前面拿取笔记本太麻烦的话,这款背包在背面还单独设计了一个L型快速通道,可以非常方便的从背包里面拿取物品。避免手忙脚乱去翻包拿取东西时的尴尬。

可扩容的侧边带,可以放置水杯、雨伞等这些需要随时使用的物件,整个侧边带相当的结实,承重能力非常不错。背负系统以前背双肩包,只要东西稍多就会感觉肩膀很累,那是因为双肩包没有减负系统。

而这款双肩背包的肩带采用了高回弹的VEA填充,比起传统的塑料,拥有非常好的恢复性和透气感,可以很好的分散缓冲压力,这样背着时肩膀的压力就会减少了很多,尤其对于女孩,可减少肩部的不适感;同时肩带S型人体工学流线型设计,不仅很好贴合身体,背起来没有压迫感,加厚设计也减少了勒肩的感觉。

一体成型的冷压后背设计,相比于传统的背包添加了透气通道,在久背后,也能保持背部清爽,非常的舒适没有闷热的感觉。在背包后面有一个便携式的拉杆套,可以把背包固定在行李箱的拉杆上面,轻松解放了双手和双肩,出行更加方便了。

总之,这款地平线8号(【【微信】】)双肩包使用体验非常不错,很实用,使用率也很高。外观时尚,空间大,自带背负系统,背着轻便不累,兼顾商务与休闲,现在已成为我出行必不可少的物品,简直就是我日常出行的百宝箱。而且设计时尚,无性别标签,男女都可以使用哦!