当前位置: 华文问答 > 数码

你有哪些用计算机技能解决生活问题的经历?

2016-02-18数码

做医院的项目,产品上线之前,为了让医院的工作人员体验一下新系统,我们的传统是要组织医院的人员进行一次到两次彩排。在彩排中发现的问题,会让参加的人写在反馈表上提交上来。

最近一次参加的彩排,医院的人员都很认真地参与了进来,为了模拟眼睛不好的患者,还特意带上了故意做成雾蒙蒙的眼镜;为了模拟行动不便的患者,特地穿上了限制腿脚行动的衣服……

参加完彩排,那些人也很认真地填写反馈表。导致前前后后收上来上千张纸。

反馈表收上来之后,有专人加上编号,分给相关的人员进行处理——是BUG的改掉,是需求的进一步磋商,是对系统理解不足的加入培训教程……最后处理完了,都要集中在一起装订归档。

那阵子刚好得了一阵闲,就跑去问问有啥事可以帮忙不?于是被委任了装订归档的任务。一次大概好几百张纸,要求按编号降序排序之后,打孔装订。

抱着沉甸甸的一摞纸来到桌前,一开始啥也没想就开始闷头排序,最初以为没什么难度,前后插一插就完事儿了。实际做起来才发现,数量达到两位数就开始混乱了……

于是,思考了一阵,决定祭出快速排序大法,选中一个基准数,编号比这个数大的放左边,其他的放右边;然后选两摞中的一摞,重复上述步骤……如此循环递归下去……

正干着呢,又来一个小子帮忙,直接分一摞出去。

第一次在现实世界中体会到了快速排序的好处之一——有利于进行并行处理。

当然,也体会到了快速排序空间复杂度高的缺点,满桌子摆得全是一小摞一小摞的纸……

最后每一小摞在十张二十张左右的时候,就直接穿插处理掉了,然后把这些都合在一起,排序完成!

确实比之前快很多,准确度也高很多,还能很多人一起做,互不依赖。

不由感慨,算法没白学啊……

我看谁还敢说算法学了没用?都送他几百张纸排序!