遇事不决先求github,内功不行的算法工程师有哪些表现?
在知乎上看到讨论“最差算法工程师”的话题,个人感觉作者LinT的总结很到位,大致有七类:
混迹于各类创新竞赛、课程答辩,张口闭口就是「人工智能」「神经网络」的百度百科型选手/PPT选手;
数学公式不想看、论文不想读,辗转各个博客网站希望找到好的解读的博客型选手;
拿到需求,Github一搜,全克隆了再说;代码跑通了(没有error),任务完成就功德无量的Github选手;
把DL当万精油用,带一个PPT/Github选手,参加各类创新竞赛/项目,经费拿到手软的AI+型选手(教师);
行走的AI术语词典,讨论问题时就喜欢堆砌名词,但从不解释,故弄玄虚,让外行不明觉厉的名词流选手;
走在AI潮流前列,「不加attention不行星人」,吐槽「2020年了,还用概率图模型?!」,对新算法的狂热程度堪比娱乐圈流量小生的潮流型选手;
半路出家,转行做AI的,但奈何基础弱,经常抛下「非cs科班可以学xxx吗?」「本人xx,应不应该xxx?」问题的何去何从型选手.
在异步君看来,最差劲的算法工程师,不是算法基础薄弱或者业务能力不强的人,而是明知自己的缺陷还瞧不起这些方面的人。
优秀的算法工程师什么样?
《编程珠玑》Jon Bentley就是典型
为什么说他是大师?1983年,ACM通讯杂志为Jon Bentley专门开辟了Programming pearls专栏,他以短文系列的形式,总结和提炼了自己在长期的计算机程序设计实践中积累下来的宝贵经验。受欢迎的程度颇似早年金庸先生在《明报》上连载其武侠小说的盛况。
之后,Jon Bentley 将“珍珠”系列仔细修订和补充整理,对各篇文章的先后次序做了精心编排。在1986年,涵盖从算法理论到软件工程各种主题的《编程珠玑》正式诞生。当然,这些都是后话。
initialize range to 0..n-1
loop
{ invariant: mustbe(range) }
if range is empty,
break and report that t is not in the array
compute m,the middle of the range
use m as a probe to shrink the range
if t is found during the shrinking process ,
break and report its position
l = 0;u=n-1
loop
{ mustbe(l, u) }
if l> u
p = -1; break
m=(l+u)/2
case
x[m] < t:l=m+1
x[m] == t:P = m; break
x[m] > t:u =m-1
来自一颗珍珠的启发
Epubit Welfare
异步福利
邀请好友关注“异步图书”领取纸书1本,立刻填表抢座。
Today's Interaction
今日互动
你觉得一个算法工程师的核心素养是什么?
扫码关注「异步图书」
聊聊图书背后的故事
回复“进群”入群领新手福利
异步VIP会员、技术分享、学习交流、赠书活动