有时候懂太多也不好,太优秀,优秀到格外耀眼且喧嚣。
——苏小木。
这点小要求,谭凌断没有拒绝的道理,对这个短时间就刷了三次全校通告的小学弟,他还是很欣赏的。
“也行,我先把整个程序的算法设计给你调出来,总纲你得看一眼,数据结构的算法部分有特别的标记,直接定位就行。”
“整个程序的算法设计比较庞大,底层用的是C++,数据与数据结构这一块用的是Java和Python,你都懂的吧?”
谭凌一边弯腰在工作台上操作着,一边絮絮叨叨的介绍。
直起身的时候,工作台的显示器屏幕上多了很多内容。
一旁的苏小木一边点头,一边腼腆的说道,“C++和Python还行,Java差一点,那,我先看看?”
见谭凌点头让开身位,苏小木就坐到了工作台前。
课题本身就比较松散,反正大家也不忙这会,几个脑袋零零散散的挤了过来。
对这个张可教授这么多年来收的唯一一个本科生,除了学院的知情人士好奇以外,他们也很好奇其实。
张可抱着保温杯在一旁笑眯眯的看着,也不说话,许是又想起了自己曾经也是这么青涩,这么优秀,这么……
想着想着,突然想到了自己疯狂后退的发际线,猛地喝了一大口当归枸杞水。
还是要注意保养啊。
…………
整个程序从算法设计总纲很清晰的列了出来,数据结构检索算法的选择也揭开了面纱。
苏小木左手托着下巴,右手不时滚动鼠标,面露思考。
实话实说,除了自己写过的,他是第一次见过这么优雅的代码。
张可教授不愧是学校里面最严苛也最幽默的教授,挑选的学生分外优秀,在课题中不吝于精益求精。
总纲有部分算法的设计对苏小木来说稍微有点超纲,他的眉头不由自主的蹙了起来。
在UVA已经AC到1300多道题的经验发挥了作用,右手无意识的拨弄了一小会,紧皱的眉头展开。
如此这般,大约二十分钟后,苏小木腼腆一笑,道。
“数据结构的这个检索算法,我觉得好像是可以这么来……
二叉树的遍历方法分很多种,就跟我们上什么大学、选什么专业一样,选择不同,遍历的方法就不同,所以,我们是不是可以这样……”
噼里啪啦,修长的手指在键盘上挥舞着光芒。
“别!动!我的老天鹅!你可千万别乱动!”
谭凌猛地推了推眼镜,连忙制止道。
“小学弟,这学长可就得说你了,咱们在课题上的代码虽然都是有备份的,但一般不建议擅自修改……balabala~”
哒~哒哒~哒哒哒。
键盘敲击的韵律、balabala的絮叨声奏响起一会儿急一会儿缓的乐曲。
“啊,以后我一定记得提前说,不过学长,你看这样的话,虽然还是有不同的选择,但在检索上好像更方便了一点点……”
在谭凌巴拉巴拉的时候,苏小木没有停下手上的动作,这个时候敲下最后一个‘;’,比了个一小小的手势,声音蒟蒻的说道。
嗯?
谭凌顿时一愣,然后一脸懵逼。
这就改好了?
算法不用先想一想设计一下的吗?
键盘就这么听你话的吗?
还有,你……
卧槽?
这样也可以?
“呃,小学弟,你说,你是过来砸场子的吧其实!”
片刻,谭凌直突突的说道。
程序数据结构部分的算法设计之前就是他谭凌亲自操刀的。
苏小木腼腆一笑,“没有没有,只是凑巧懂一点点数据结构,以及跟算法的关系。”
呵呵~
呵呵呵~
呵呵呵呵~
凑巧、懂一点点……
我俏丽吗?我问你,我俏丽吗?
谭凌身后数个学长的眼睛中的每一条血丝、每一点浮肿,都在说这句话。
“哇,小木学弟,你怎么这么厉害。”
惊呼声从苏小木的右侧响起,转头就看到合法萝莉林唐双手合拢,眼睛眨呀眨的往外冒星星。
要不是知道她皮,苏小木差点就信了。
“那个,林学姐,你知不知道李时珍其实没死?”苏小木突然挑了挑眉。
林唐:“???”
怎、怎么个意思?
这个人的眉毛怎么感觉有点……
林唐还在想苏小木的话是什么意思的时候,苏小木已经投入到下一段代码的修改中去了。
…………
…………
接下来的大半个小时里,苏小木针对性的挑出一段代码,进行局部优化。
自从小垃圾系统给出数据结构这部分的知识资料以来,苏小木还没有系统性的运用过这部分知识。
哪怕在骚客APP的开发上,都只是简单运用——因为…
用不上。
“数据排序有很多种方式,这部分我们可以这样来……”
苏小木一边说着,一边修改了代码,那双修长的手上像是挥舞着璀璨的风儿,甚是耀眼。
数据的结构并不是一成不变的,至少,对苏小木来说,是这样的。
他可以划船不用桨,他可以扬帆没有方向,只要他敲键盘的速度足够快,就能追上他说话的速度……
至于另外的模块,苏小木不会去班门弄斧,有些地方都超纲了,别说去优化,连理解都费了点功夫……
端着保温杯不时喝口当归枸杞水的张可教授摩挲着下巴,心中暗道。
“这羊城太大了点,打听点消息都这么难!这小子,我非得看看他到底有多少东西!”
说起来也有意思,如果没有小垃圾系统之后给的数据与元数据与存储结构基础原理,苏小木还真不一定能这么从容。
数据也会有脏数据这个东西的存在,脏数据的产生通常不受控制,并且是绝对无效的,还会占据空间,甚至会影响正常数据。
精心选择的数据结构,可以有效的减少脏数据的产生。①
并且,对数据结构的检索算法以及索引的精心优化,可以让数据的运行效率更高,也可以让数据存储的效率更高。
让数据本身不那么的臃肿。
这也是张可教授希望优化的部分,这样可以有效的节约存储资源,让计算进行得更快。
其实真的很难想象,数据也可以看上去这么优雅。
当苏小木敲下最后一个‘;’后,结束了全部的操作。
林唐轻咬着下嘴唇,双手合拢在胸前拍着,“小木学弟,你怎么可以这么厉害!嘤嘤嘤!”
苏小木:“……”
我可不可以申请脑阔不要转?
这个小学姐真是太调皮了!
真想一拳一个嘤嘤怪。
emmmm。
“理论上讲,现在的数据结构应该大约可以让数据储存效率提高百分之二十,运行效率提高百分之十五。”
末了,苏小木总结道。
谭凌和张可皆点了点头。
“小学弟,看不出来嘛,你这水平上本二有点屈才,得跟咱们学校建议修够足够的学分,就可以让优秀的学生申请跳级。”
谭凌笑眯眯的说道。
苏小木连忙起身摆着手,很诚实的说道。“您太捧了,我要学的还有很多,就这个程序好多地方的算法设计我、就、看不懂……”
看着几双越来越不对劲的眼睛,苏小木搔着头蒟蒻的说完了话。
…………
…………
之后,谭凌上前主持程序,几个学长包括调皮的林学姐也各自进入了角色。
实话实说,苏小木对整个程序的设计部分都只懂个百分之八九十,他再翘尾巴,也不会这么没有逼数的去主持程序。
谭凌他们的动作很快,没几分钟,16个计算节点便开始重新工作。
程序返回了各种各样的参数。
良久,谭凌收回看向显示屏幕的目光,叹了口气,道。
“教授,数据的储存效率确实如小学弟说的那样,高了百分之二十五不止,运行效率也高了百分之二十,但还是那个问题,根据现有的反馈结果,只能勉强上32个计算节点……”
老大难的问题摆在了跟前:
存储资源就这么多,只有两条路,申请更多的存储资源,申请厂商进行针对优化,以同样的存储资源进行更大量的运算。
瓶颈其实不是存储空间,而是存储的性能、处理效率、压力等。
如果是存储空间,张可教授早就想办法了。
这么说吧,同样的存储空间,不同的存储矩阵配置,性能可以相差到20倍、100倍甚至好几百倍。
这里面涉及到很多的参数。
比如硬盘的转速、硬盘空间大小、数量、规格、存储机头的处理器、内存等方面性能、存储系统的相应效率、IOPS、吞吐量等。②
硬盘有不同的大小容量和转速,转的速度越快,数据的读写效率就越高,虽然是同等存储空间,但用4T的7200转硬盘和用14块300GB总共4T空间的15000转固态硬盘,效率是绝对天上与地下。
这一点,苏小木也帮不上忙,尽管他其实孟浪的考虑过写一个程序放存储上,帮助存储让数据更快写入硬盘,让存储的硬件资源发挥到极致……
①:这个我真是随便说的,脏数据这个概念解释太复杂了,只要有数据,基本上就有可能存在脏数据。
②:IOPS:即每秒钟数据进行读和写(I/O)操作的次数,换句话说,大概相当于我们日常进行文件复制与粘贴的时候,显示几十M一秒这样子。
======
破碗。求推荐票、笔芯。
今天一更,但是有3000多字。