备受程序员们追捧的蚕蛹你了解多少?

工程师谭军 发表于 2018-07-04 14:26:04 收藏 已收藏
赞(0) •  评论(0

备受程序员们追捧的蚕蛹你了解多少?

工程师谭军 发表于 2018-07-04 14:26:04

众所周知,蚕蛹是东北程序员非常喜欢的一种原始数据,其加工算法有烧烤,盐煮,开边等,其中受烧烤算法在东北码农影响甚广,一向广为流传,而且盐煮虽然保留原始营养数据较多, 但因算法粗暴不雅,受广大程序猿所鄙,因为复杂即是高大上,开边干煸作为蚕蛹这种原始数据加工处理的最复杂的方法之一,倍受程序猿们追捧,本文结合本拐的亲自实现,结合狼厂算法百科,总结了开边算法中的一些细节和注意事项,希望与广大同胞共勉;

备受程序员们追捧的蚕蛹你了解多少?

开边算法整理的步骤如下:

水煮 (原始数据预处理)

剪裁 (数据规约及降噪)

煎炸 (油炸挂浆)

烹炒 (加盐及成品输出)

本文将结合PO主的实现,分为以上4个维度进行阐述

水煮

作为原始数据处理的第一步,水煮算法并不复杂,其具体实现如下:

$蚕蛹=洗净($蚕蛹);$葱段=切段($葱,15cm);$冷水锅=new 冷水锅();$冷水锅->水煮($蚕蛹,$葱段);$冷水锅->加盐with勺(4);$冷水锅->wait水开();$冷水锅->中火(15min);

剪裁

狼厂算法百科中对剪裁部分阐述如下:

foreach($蚕蛹 as $蛹){    剪裁($蛹);}

其中并没有对剪裁部分进行详细阐述,本拐在实现过程中,最原始的方式如下:

剪裁($食材){        $左手 = get ($剪刀);        $右手 = get ($食材);        $食材 = 剪($左手,$右手);        $res = 去除杂物($食材); //去掉前掉的蚕蛹中的虫子    release($左手);    release($右手);        return $res;}

后来发现在实现的过程中,会进行2n次get ,2n次release,由于get()和realse()属于外部IO操作,会占用大片的时间,因此,对此进行了优化,其具体算法如下:

$左手 = get ($剪刀);$剪后蛹 = [];$处理蛹 = [];foreach($蚕蛹 as $蛹){        $右手 = get($蛹);        $tmp = 剪($左手,$右手);        $剪后蛹[]=$tmp;    release($右手);}foreach($剪后蛹 as $tmp){        $处理蛹[] =去除杂物($tmp);}release($左手);

可以看出,在优化后的算法中,由于只进行了n+1次get操作,n+1次release,因此,时间复杂度有了显著提高。

煎炸

煎炸具体算法如下:

$水淀粉 = 注水($淀粉);$待炸蛹 = [];$炸后蛹 = [];控水($处理蛹);等待(15min);foreach($处理蛹 as $蛹){        $待炸蛹[]=$水淀粉->包裹($蛹);}$炸后蛹 = 煎炸($待炸蛹);

其中,值得注意的是,控水处理的一定是剪后的处理蛹,如果只对煮后的蚕蛹进行操作,那么由于没有控干水份,在煎炸过程中很可能发现蛹炸人亡的惨案,就像 2008 年,由于一个明星不会修电脑,后来的事情大家都知道了是吧。。。。

烹炒

烹炒是最后一步,也是整个算法的精妙所在,其实理论上,炸后的蚕蛹就是可以食用的,但是由于整体过软,口感并不是很好,所以,炒一炒,加上些配料,才会让最终的结果更加精妙。

加料的过程,不同的程序猿各有各的爱好,就本拐来讲,本拐喜欢炒些红椒,加些彩椒,具体实现方法如下:

$配料=切块($彩椒);$小红椒=get(小红椒::class);$油锅 = new 油锅();$油锅 -> 暴炒($小红椒);$油锅 -> 暴炒($配料);$油锅 -> add($炸后蛹);$油锅 -> 加盐with勺(2);$开边蚕蛹 = $油锅->出锅();

收藏

相关话题

评论(0)

加载更多评论

参与评论

分享到

QQ空间 QQ好友 微博
取消