蒙狼科技logo
设为首页| 联系我们
咨询热线: 13917498722
  您的位置: 首页 > 网站资讯 > 一个数据挖掘大牛,用程序算法做人生选择

一个数据挖掘大牛,用程序算法做人生选择

发布日期:2017/7/5

每年一到要找工作的时候,我就能收到许多人给我发来的邮件,总是问我怎么选择他们的offer,去腾讯照旧去豆瓣,去外企照旧去国内的企业,去创业照旧去考研,来上海照旧回老家,该不该去创新工场?该不该去thoughtworks? 等等,等等。今年从7月份到现在,我收到并回复了60多封这样的邮件。我更多帮他们整顿思路,帮他们晓畅自己要的是什么。(注:我以后不再回复类似的邮件了)。

我深深地发现,对于我国这样从小被怙恃和先生安排各种事情长大的人,当有,怙恃和先生都跟不上的时候,我们几乎完全不知道怎么去做选择。而我也脱离了亚马逊,换了一个工作,让我想到写一篇这样的文章。

几个例子

当我们在面对各种对选择的影响因子的时候,如:城市,公司规模,公司性质,薪水,项目,户口,技术,方向,眼界…… 你总会发现,你会在几个公司中纠结一些东西,举几个例子:

某网友和我说,他们去上海腾讯,因为腾讯的规模很大,但却发现薪水待遇没有豆瓣高(低的还不是一点),假如以后要换工作的话,起薪点直接关系到了以后的高工资。我说那就去豆瓣吧,他说豆瓣在上海,污染那么严重,又没有户口,生存环境不好。我说去腾讯吧,他说腾讯组织调整,不稳定。我说那就去豆瓣吧,慢公司,发展很稳当。他说,豆瓣的盈利不清楚,而且用Python,自己不喜好。我说,那就去腾讯吧……

  • 还有一网友和我说,他想回老家,因为老家的人脉关系比较好,能混得好。但又想留在大城市,因为大城市可以开眼界。
  • 另一网友和我说,他想进外企,练练英语,开开眼界,但是又怕在外企里当个螺丝钉,想法得不到实施。同伙拉他去创业,觉得创业挺好的,锻炼大,但是同伙做的那个不知道能不能做好。
  • 还有一网友在创新工场的某团队和考研之间抉择,不知道去创新工场行不行,觉得那个项目一般,但是感觉那个团队挺有激情的,另一方面觉得自己的学历还不够,读个研应该能找到更好的工作。
  • 还有一些同伙问题我应该学什么技术?不应该学什么技术?或是怎么学会学得,技术的路径应该是什么?有的说只做后端不做前端,有的说,只做算法研究,不做工程,等等,等等。因为他们觉得人生有限,术业有专攻。
  • 等等,等等……

我个人觉得,假如是非计算机科班出生的人不会做选择,不知道怎么走也罢了,但是我们计算机科班出生的人是学过算法的,懂算法的人应该是知道怎么做选择的。

排序算法

你不可能要所有的东西,所以你只能要你主要的东西,你要知道什么东西主要,你就需要对你心内的那些欲望和抱负有清楚的熟悉,不然,你就会在纠结中度过。

所以,在选择中纠结的人有需要参考一下排序算法。

首先,你需要参考的就是“冒泡排序”——这种算法的思路就是每次冒泡出一个数。所以,你有需要问问你自己,面对那些影响你选择的因子,假如你只能要一个的话,你会要哪个?而剩下的都可以摒弃。于是,当你把数,一个一个冒泡出来的时候,并用这个决策因子来过滤选项的时候,你就能比较容易地知道知道你应该选什么了。这个算法告诉我们,人的邪念越少,就越容易做出选择。

好吧,可能你已茫然到了怎么比较两个决策因子的大小,比如:你分不清楚,工资>营业前景吗?营业前景>能力提拔吗?所以你完全没有办法进行冒泡法。那你,你不妨参考一个“快速排序”的思路——这个算法告诉我们,我们一开始并不需要找到数,我们只需要把你价值观中的某个标准拿出来,然后,把可以知足这个价值的放到右边,不能的放到左边去。比如,你的标准是:工资大于5000元&&营业前景长于3年的公司,你可以用这个标准来过滤你的选项。然后,你可以再调整这个标准再继续递归下去。这个算法告诉我们,我们的选择标准越清晰,我们就越容易做出选择。

这是排序算法中经典的两个算法了,面试必考。相信你已烂熟于心中了。所以,我觉得你把这个算法应用于你的人生选择也应该不是什么问题。关于在于,你是否知道自己想要的是什么?

排序算法的核心思想就是,让你帮助你认清自己需要的是什么,认清自己要的是什么,然后根据这个去做选择。

贪婪算法

所谓贪婪算法,是一种在每一步选择中都采取在当前状况下或(即有利)的选择(注重:是当前状况下),从而希望导致效果是或的算法。贪婪算法经典的一个例子就是哈夫曼编码。

对于人类来说,一般人在行为处事的时候都会使用到贪婪算法,

比如在找零钱的时候,假如要找补36元,我们一般会按这样的顺序找钱:20元,10元,5元,1元。

或者我们在过十字路口的时候,要从到对角线的那个街区时,我们也会使用贪婪算法——哪边的绿灯先亮了我们就先过到那边去,然后再转身90度等红灯再过街。

这样的例子有许多。对于选择中,大多数人都会选用贪婪算法,因为这是一个比较简单的算法,未来太复杂了,只能走一步看一步,在当前的状况下做出利于自己的判断和选择即可。

有的人会贪婪薪水,有的人会贪婪做的项目,有的人会贪婪营业,有的人会贪婪职位,有的人会贪婪自己的爱好……这些都没什么问题。贪婪算法并没有错,虽然不是全局解,但其可以让你找到局部解或是次优解。其实,有次优解也不错了。贪婪算法基本上是一种急功近利的算法,但是并不代表这种算法不好,假如贪婪的是一种长远和持续,又未尝不可呢?。

动态规划

但是我们知道,对于大部分的问题,贪婪法通常都不能找出解,因为他们一般没有测试所有可能的解。因为贪婪算法是一种短视的行为,只会跟据当前的形式做判断,也就是过早做决定,因而没法达到好解。

动态规划和贪婪算法的不同是,贪婪算法做出选择,不能回退。动态规划则会保存以前的运算效果,并根据以前的效果对当前进行选择,有回退功能。

动态规划算法至少告诉我们两个事:

1)承前启后特别很是主要,当你预备去做遍历的时候,你的上次的经历不但能开启你以后的经历,而且还能为后面的经历所用。你的每一步都没有虚耗。

2)是否可以回退也很主要。这意思是——假如你面前有两个选择,一个是A公司一个是B公司,假如今天你错失了B公司,那到你明天还能不能找回来?

比如说:你有两个offer,一个是Yahoo,一个是Baidu,上述的点会让我们思考,Yahoo和Baidu谁能给我们开启更大的平台?上述的第二点告诉我们,是进入Yahoo后假如没有选好,是否还能回退到Baidu公司?照旧进入Baidu公司后能容易回退到Yahoo公司?

Dijkstra短路径

短路径是一个Greedy + DP的算法。相当经典。这个算法的大意如下:

1)在初始化的时候,所有的结点都和我是无限大,默认是达不到的。

2)从离自己的结点开始贪婪。

3)走曩昔,看看又能到达什么样的结点,计算并更新到所有目标点的距离。

4)再贪婪与原点结点,如此反复。

这个算法给我们带来了一些这样的启示:

有同伙和我说过他想成为一个架构师,或是某技术领域的专家,并会踏扎实实的向这个目标前进,永不摒弃。我照旧鼓励了他,但我也告诉他了这个的算法,我说,这个算法告诉你,架构师或某领域的专家对你来说目前的距离是无限大,他们放在心中,先看看你能够得着的东西。所谓扎实,并不是踏扎实实追求你的目标,而是踏扎实实把你够得着看得见的就在身边的东西干好。我还记得我刚参加工作,从老家出来的时候,从来没有想过要成为一个技术牛人,也从来没有想过我的博客会那么的有影响力,在做自己力所能及,看得见摸得着的事情,我就看见什么技术就学什么,学着学着就知道怎么学更轻松,怎么学更扎实,这也许就是我的短路径。

有许多同伙问我要不要学C++,或是问我学Python照旧学Ruby,是不是不用学前端,等等。这些同伙告诉我,他们不可能学习多个语言,学了不用也就忘了,而且术业有专攻。这并没有什么舛错的,只是我个人觉得,学习一个东西没有需要只有两种状况,一种是不学,另一种是精通。了解一个技术其实花不了多少时间,我学C++的目的其实是为了更懂Java,学TCP/IP协议其实是为了更懂Socket编程,许多东西都是连通和相辅相成的,学好了C/C++/Unix/TCP等这些基础技术后,我发现到达别的技术路径一下缩短了(这就是为什么我用两天时间就可以了解Go语言的原因)。这就彷佛这个算法一样,算法效率不高,也许达到你的目标,你在一开始花了很长时间,遍历了许多地方,但是,这也许这就是你的短路径。

算法就是Trade-Off

你根本没有办法能得到所有你想得到的东西,任何的选择都意味着摒弃——当你要去获得一个东西的时候,你总是需要摒弃一些东西。人生原本就是一个跷跷板,一头上,另一头必然下。这和我们做软件设计或算法设计一样,用时间换空间,用空间换时间,还有CAP理论,总是有许多的Trade-Off,正如这个短语的原意一样——你总是要用某种东西去交易某种东西。

我们都在用某种东西在交易我们的未来,有的人用自己的努力,有的人用自己的思考,有的人用自己的年轻,有的人用自己的自由,有的人用自己的价值观,有的人用自己的道德…… …… 有的人在交换金钱,有的人在交换眼界,有的人在交换经历,有的人在交换地位,有的人在交换能力,有的人在交换自由,有的人在交换爱好,有的人在交换虚荣心,在交换安逸享乐…… ……

每个人有每个人的算法,每个算法都有每个算法的purpose,就算大家在用同样的算法,但是每个人算法中的那些变量、开关和条件都不一样,得到的效果也不一样。我们就是生活在Matrix里的一段程序,我们每个人的算法决定着我们每个人的选择,我们的选择决定了我们的人生。





其他相关文章
  • 网站建设-影响B2B网站优化的四个典型题目
  • 网站关键词上百度首页我是怎么做到的
  • 网站建设要做到从一而终
  • 网站建设并非无关紧要设计制作一定要注重品质
  • 营销型网站建设中不错的软文是怎样炼成的?
  • 网站建设公司谨记留住用户比开发客户更主要




  • 企业网站后台使用
    购物网站后台使用
    网站产品图片的处理



    农业银行支付
    建设银行支付
    邮政储蓄银行支付



    企业网站建设
    整站建设
    购物网站



    企业网站建设建议
    注册适合自己的域名
    什么是虚拟主机




    售前咨询QQ: 838821345
    售后服务QQ: 464698733
    应急手机:13917498722


    微信扫一扫
    添加24小时微信客服


    邮箱:lang@MENGL.CN
    地址:上海宝山区城银路555弄2号楼3楼
    ICP备案:沪ICP备12042844号-3
     沪公网安备:31011402002917号
    做网站 | 企业网站建设 | 上海做网站 | 企业网站制作 | 做网站的公司 | 关于蒙狼 | 整站建设 | 购物网站 | 企业网络营销 | 成功案例 | 加盟代理 | 在线订单
    服务区域: 临港新区做网站 徐汇做网站 闵行做网站 长宁做网站 虹口做网站 黄浦做网站 卢湾做网站 静安做网站 浦东做网站 杨浦做网站 普陀做网站 闸北做网站 宝山做网站 嘉定做网站 松江做网站 昆山做网站
    Copyright 2012-2025 上海蒙狼网络科技有限公司 WWW.MENGL.CN All Rights Reserved