不久前我在酒吧里和某人交谈,不可避免的问题是“你是做什么的?” 上来了。我的回答“哦,我刚毕业;我在 X 公司工作。我是一名程序员”并没有让她很满意。
我已经进行了一百次这样的对话,但人们对答案从来都不是很满意。他们总是有更多的问题。我认为这是因为,在大多数情况下,人们并不真正了解程序员的工作。这个问题的答案通常会让你对一个人有所了解(有点):会计师可能善于分析并擅长数字,律师可能擅长文字和辩论等,而“程序员”则不然。
所以我试图给出一个能够提供这种洞察力的答案。
我试图用一个经典编程问题的例子来说明我的观点“嗯,这基本上是花哨的问题解决”。
跳入我脑海的第一件事(出于某种原因)是最小子集问题......但我必须解释数组、时间复杂度等我想到了 n-queens 问题,但她从未见过棋盘在她的生活中(是的,我知道)河内之塔一般来说太难想象了......
所以我被卡住了,话题改变了。
你们能想出一个问题的例子吗?一个完整的外行(wo)人可以理解,这会让某人了解程序员必须做的那种思考?(并且通过扩展让我回答关于我如何谋生的尴尬问题)