① 懂算法的人应该知道怎么做人生选择
每年一到要找工作的时候,我就能收到很多人给我发来的邮件,总是问我怎么选择他们的offer,去腾讯还是去豆瓣,去外企还是去国内的企业,去创业还是去考研,来北京还是回老家,该不该去创新工场?该不该去thoughtworks?……等等,等等。今年从7月份到现在,我收到并回复了60多封这样的邮件。我更多帮他们整理思路,帮他们明白自己最想要的是什么。
我深深地发现,对于我国这样从小被父母和老师安排各种事情长大的人,当有一天,父母和老师都跟不上的时候,我们几乎完全不知道怎么去做选择。
几个例子
当我们在面对各种对选择的影响因子的时候,如:城市,公司规模,公司性质,薪水,项目,户口,技术,方向,眼界…… 你总会发现,你会在几个公司中纠结一些东西,举几个例子:
某网友和我说,他们去上海腾讯,因为腾讯的规模很大,但却发现薪水待遇没有豆瓣高(低的还不是一点),如果以后要换工作的话,起薪点直接关系到了以后的高工资。我说那就去豆瓣吧,他说豆瓣在北京,污染那么严重,又没有户口,生存环境不好。我说去腾讯吧,他说腾讯最近组织调整,不稳定。我说那就去豆瓣吧,慢公司,发展很稳当。他说,豆瓣的盈利不清楚,而且用Python,自己不喜欢。我说,那就去腾讯吧,……
还有一网友和我说,他想回老家,因为老家的人脉关系比较好,能混得好。但又想留在大城市,因为大城市可以开眼界。
另一网友和我说,他想进外企,练练英语,开开眼界,但是又怕在外企里当个螺丝钉,想法得不到实施。朋友拉他去创业,觉得创业挺好的,锻炼大,但是朋友做的那个不知道能不能做好。
还有一网友在创新工场的某团队和考研之间抉择,不知道去创新工场行不行,觉得那个项目一般,但是感觉那个团队挺有激情的,另一方面觉得自己的学历还不够,读个研应该能找到更好的工作。
还有一些朋友问题我应该学什么技术?不应该学什么技术?或是怎么学会学得最快,技术的路径应该是什么?有的说只做后端不做前端,有的说,只做算法研究,不做工程,等等,等等。因为他们觉得人生有限,术业有专攻。
等等,等等……
我个人觉得,如果是非计算机科班出生的人不会做选择,不知道怎么走也罢了,但是我们计算机科班出生的人是学过算法的,懂算法的人应该是知道怎么做选择的。
你不可能要所有的东西,所以你只能要你最重要的东西,你要知道什么东西最重要,你就需要对你心内的那些欲望和抱负有清楚的认识,不然,你就会在纠结中度过。
所以,在选择中纠结的人有必要参考一下排序算法。
首先,你最需要参考的就是“冒泡排序”——这种算法的思路就是每次冒泡出一个最大的数。所以,你有必要问问你自己,面对那些影响你选择的因子,如果你只能要一个的话,你会要哪个?而剩下的都可以放弃。于是,当你把最大的数,一个一个冒泡出来的时候,并用这个决策因子来过滤选项的时候,你就能比较容易地知道知道你应该选什么了。这个算法告诉我们,人的杂念越少,就越容易做出选择。
好吧,可能你已茫然到了怎么比较两个决策因子的大小,比如:你分不清楚,工资>业务前景吗?业务前景>能力提升吗?所以你完全没有办法进行冒泡法。那你,你不妨参考一个“快速排序”的思路——这个算法告诉我们,我们一开始并不需要找到最大的数,我们只需要把你价值观中的某个标准拿出来,然后,把可以满足这个价值的放到右边,不能的放到左边去。比如,你的标准是:工资大于5000元&&业务前景长于3年的公司,你可以用这个标准来过滤你的选项。然后,你可以再调整这个标准再继续递归下去。这个算法告诉我们,我们的选择标准越清晰,我们就越容易做出选择。
这是排序算法中最经典的两个算法了,面试必考。相信你已烂熟于心中了。所以,我觉得你把这个算法应用于你的人生选择也应该不是什么问题。关于在于,你是否知道自己想要的是什么?
排序算法的核心思想就是,让你帮助你认清自己最需要的是什么,认清自己最想要的是什么,然后根据这个去做选择。
所谓贪婪算法,是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择(注意:是当前状态下),从而希望导致结果是最好或最优的算法。贪婪算法最经典的一个例子就是哈夫曼编码。
对于人类来说,一般人在行为处事的时候都会使用到贪婪算法,
比如在找零钱的时候,如果要找补36元,我们一般会按这样的顺序找钱:20元,10元,5元,1元。
或者我们在过十字路口的时候,要从到对角线的那个街区时,我们也会使用贪婪算法——哪边的绿灯先亮了我们就先过到那边去,然后再转身90度等红灯再过街。
这样的例子有很多。对于选择中,大多数人都会选用贪婪算法,因为这是一个比较简单的算法,未来太复杂了,只能走一步看一步,在当前的状况下做出最利于自己的判断和选择即可。
有的人会贪婪薪水,有的人会贪婪做的项目,有的人会贪婪业务,有的人会贪婪职位,有的人会贪婪自己的兴趣……这些都没什么问题。贪婪算法并没有错,虽然不是全局最优解,但其可以让你找到局部最优解或是次优解。其实,有次优解也不错了。贪婪算法基本上是一种急功近利的算法,但是并不代表这种算法不好,如果贪婪的是一种长远和持续,又未尝不可呢?。
但是我们知道,对于大部分的问题,贪婪法通常都不能找出最优解,因为他们一般没有测试所有可能的解。因为贪婪算法是一种短视的行为,只会跟据当前的形式做判断,也就是过早做决定,因而没法达到最佳解。
动态规划和贪婪算法的最大不同是,贪婪算法做出选择,不能在过程优化。动态规划则会保存以前的运算结果,并根据以前的结果对当前进行选择,会动态优化功能。
动态规划算法至少告诉我们两个事:
1)承前启后非常重要,当你准备去做遍历的时候,你的上次的经历不但能开启你以后的经历,而且还能为后面的经历所用。你的每一步都没有浪费。
2)是否可以回退也很重要。这意思是——如果你面前有两个选择,一个是A公司一个是B公司,如果今天你选了A公司,并不是你完全放弃了B公司。而是,你知道从A公司退出来去B公司,会比从B公司退出来去A公司要容易一些。
比如说:你有两个offer,一个是Yahoo,一个是Bai,上述的第一点会让我们思考,我以前的特长和能力更符合Yahoo还是Bai?而Yahoo和Bai谁能给我开启更大的平台?上述的第二点告诉我们,是进入Yahoo后如果没有选好,是否还能再选择Bai公司?还是进入Bai公司后能容易回退到Yahoo公司?
最短路径是一个Greedy + DP的算法。相当经典。这个算法的大意如下:
1)在初始化的时候,所有的结点都和我是无穷大,默认是达不到的。
2)从离自己最近的结点开始贪婪。
3)走过去,看看又能到达什么样的结点,计算并更新到所有目标点的距离。
4)再贪婪与原点最短的结点,如此反复。
这个算法给我们带来了一些这样的启示:
有朋友和我说过他想成为一个架构师,或是某技术领域的专家,并会踏踏实实的向这个目标前进,永不放弃。我还是鼓励了他,但我也告诉他了这个着名的算法,我说,这个算法告诉你,架构师或某领域的专家对你来说目前的距离是无穷大,他们放在心中,先看看你能够得着的东西。所谓踏实,并不是踏踏实实追求你的目标,而是踏踏实实把你够得着看得见的就在身边的东西干好。我还记得我刚参加工作,从老家出来的时候,从来没有想过要成为一个技术牛人,也从来没有想过我的博客会那么的有影响力,在做自己力所能及,看得见摸得着的事情,我就看见什么技术就学什么,学着学着就知道怎么学更轻松,怎么学更扎实,这也许就是我的最短路径。
有很多朋友问我要不要学C++,或是问我学Python还是学Ruby,是不是不用学前端,等等。这些朋友告诉我,他们不可能学习多个语言,学了不用也就忘了,而且术业有专攻。这并没有什么不对的,只是我个人觉得,学习一个东西没有必要只有两种状态,一种是不学,另一种是精通。了解一个技术其实花不了多少时间,我学C++的目的其实是为了更懂Java,学TCP/IP协议其实是为了更懂Socket编程,很多东西都是连通和相辅相成的,学好了C/C++/Unix/TCP等这些基础技术后,你会发现到达别的技术路径一下缩短了。
这就好像这个算法一样,算法效率不高,也许达到你的目标,你在一开始花了很长时间,遍历了很多地方,但是,这也许这就是你的最短路径(比起你达不到要好得多)。
你根本没有办法能得到所有你想得到的东西,任何的选择都意味着放弃——当你要去获得一个东西的时候,你总是需要放弃一些东西。人生本来就是一个跷跷板,一头上,另一头必然下。这和我们做软件设计或算法设计一样,用时间换空间,用空间换时间,还有CAP理论,总是有很多的Trade-Off,正如这个短语的原意一样——你总是要用某种东西去交易某种东西。
我们都在用某种东西在交易我们的未来,有的人用自己的努力,有的人用自己的思考,有的人用自己的年轻,有的人用自己的自由,有的人用自己的价值观,有的人用自己的道德…… …… 有的人在交换金钱,有的人在交换眼界,有的人在交换经历,有的人在交换地位,有的人在交换能力,有的人在交换自由,有的人在交换兴趣,有的人在交换虚荣心,在交换安逸享乐…… ……
每个人有每个人的算法,每个算法都有每个算法的purpose,就算大家在用同样的算法,但是每个人算法中的那些变量、开关和条件都不一样,得到的结果也不一样。我们就是生活在Matrix里的一段程序,我们每个人的算法决定着我们每个人的选择,我们的选择决定了我们的人生
② 怎么样正确自己的方法和实现人生目标!
个人职业生涯的PPDF法
PPDF的英文全称是:Personal Performance Development File。
中文是:个人职业表现发展档案,也可译成个人职业生涯发展道路。
在发达国家的不少企业里都有一种称为PPDF的东西。这个东西看起来很简单,但是作用却非常大。有不少的企业、公司靠它将自己的员工形成了一种合力,形成了团队,为了单位的目标去努力实现自我价值。为什么它能起到这样的作用呢?主要是它将所有员工的个人发展,同企业的发展紧紧地联系在一起。它为每个员工都设计了一条经过努力可以达到个人目标的道路,使他明确只有公司发展了,他个人的目标也就可以实现了。这实际上是一种极有效的人力资源开发的方法。正因为如此,许多企业纷纷效仿。
所谓职业生涯,是一个人一生的工作经历,特别是职业、职位的变动及工作理想实现的整个过程。职业生涯的管理,就是帮助员工具体设计及实现个人合理的职业生涯计划。
每个人对自己的一生都有良好的理想设计,这些设想有的可以实现,有的可能就不会实现。当一个人在一个单位工作时,如果这个单位的管理者能够为他去进行设计,他就会有一种追求感。管理者给员工进行具体的设计时,要使他们的职业生涯计划建立在现实的、合理的基础上,并且通过必要的培训、职务设计及有计划的晋升或职务调整,为他个人的职业生涯发展创造有利条件。
为员工设计职业生涯发展计划有许多好处:①可以更深地了解员工的兴趣、愿望、理想,以使他能够感觉到自己是受到重视的人,从而发挥更大的作用。②由于管理者和员工有时间接触,使得员工产生积极的上进心,从而为单位的工作做出更大的贡献。③由于了解了员工希望达到的目的,管理者可以根据具体情况来安排对员工的培训。④可以适时地用各种方法引导员工进入单位的工作领域,从而使个人目标和单位的目标更好地统一起来,降低了员工的失落感和挫折感。⑤能够使员工看到自己在这个单位的希望、目标,从而达到稳定员工队伍的目的。
个人的职业生涯发展计划基本上有三个方向:①纵向发展,即员工职务等级由低级到高级的提升;②横向发展,指在同一层次不同职务之间的调动,如由部门经理调到办公室任主任。此种横向发展可以发现员工的最佳发挥点,同时又可以使员工自己积累各个方面的经验,为以后的发展创造更加有利的条件;③向核心方向发展,虽然职务没有晋升,但是却担负了更多的责任,有了更多的机会参加单位的各种决策活动。以上这几种发展都意味着个人发展的机会,也会不同程度地满足员工的发展需求。
下面我们来看一个简单的PPDF法。
1.PPDF的主要目的
PPDF是对员工工作经历的一种连续性的参考。它的设计使员工和他的主管领导,对该员工所取得的成就,以及员工将来想做些什么有一个系统的了解。它既指出员工现时的目标,也指出员工将来的目标及可能达到的目标。它标示出,你如果要达到这些目标,在某一阶段你应具有什么样的能力、技术及其他条件,等等。同时,它还帮助你在实施行动时进行认真思考,看你是否非常明确这些目标,以及你应具备的能力和条件。
2.怎样使用PPDF
PPDF是两本完整的手册。当你希望去达到某一个目标时,它为你提供了一个非常灵活的档案。将PPDF的所有项目都填好后,交给你的直接领导一本,员工自己留下一本。领导会找你,你要告诉他你想在什么时间内,以什么方式来达到你的目标。他会同你一起研究,分析其中的每一项,给你指出哪一个目标你设计得太远,应该再近一点儿;哪一个目标设计得太近,可以将它往远处推一推。他也可能告诉你,在什么时候应该和电大、夜大等业余培训单位联系,他也可能会亲自为你设计一个更适合于你的方案。总之,不管怎样,你将单独地和你相信的领导一同探讨你该如何发展、奋斗。
3.PPDF的主要内容
(1)个人情况
A.个人简历:包括个人的生日、出生地、部门、职务、现住址等。
B.文化教育:初中以上的校名、地点、入学时间、主修专题、课题等。所修课程是否拿到学历,在学校负责过何种社会活动等。
C.学历情况:填入所有的学历、取得的时间、考试时间、课题以及分数等。
D.曾接受过的培训:曾受过何种与工作有关的培训(如在校、业余还是在职培训)、课题、形式、开始时间等。
E.工作经历:按顺序填写你以前工作过的单位名称、工种、工作地点等。
F.有成果的工作经历:写上你认为以前有成绩的工作是哪些,不要写现在的。
G.以前的行为管理论述:写你对工作进行的评价,以及关于行为管理的事情。
H,评估小结:对档案里所列的情况进行自我评估。
(2)现在的行为
A.现时工作情况:应填写你现在的工作岗位、岗位职责等。
B.现时行为管理文档:写上你现在的行为管理文档记录,可以在这里加一些注释。
C.现时目标行为计划:设计一个目标,同时列出和此目标有关的专业、经历等。这个目标是有时限的,要考虑到成本、时间、质量和数量的记录。如果有什么问题,可以立刻同你的上司探讨解决。
D.如果你有了现时目标。它是什么?
E.怎样为每一个目标设定具体的期限?此处写出你和上司谈话的主要内容。
(3)未来的发展
A.职业目标:在今后的3-5年里,你准备在单位里做到什么位置。
B.所需要的能力、知识:为了达到你的目标,你认为应该拥有哪些新的技术、技巧、能力和经验等。
C.发展行动计划:为了获得这些能力、知识等,你准备采用哪些方法和实际行动。其中哪一种是最好、最有效的,谁对执行这些行动负责,什么时间能完成。
D.发展行动日志:此处填写发展行动计划的具体活动安排,所选用的培训方法。如听课、自学、所需日期、开始的时间、取得的成果等。这不仅仅是为了自己,也是为了了解工作、了解行为。同时,你还要对照自己的行为和经验等,写上你从中学到了什么。
③ 模拟人生3 package文件和resource文件放哪
有两种方法,A是放置在“我的文档”,B就是你用的方法。但是推荐A方法,往下看就知道为什么了。
-----------------------------------------
方法A:
放置在“我的文档\Electronic Arts\模拟市民3”目录内,像这样:
我的文档\Electronic Arts\模拟市民3\Mods\Packages\*.Package
我的文档\Electronic Arts\模拟市民3\Mods\Resource.cfg
方法B:
放在游戏目录里,除了需要resource文件之外,还需要一个d3dx9_31.dll的文件。
而且要注意:
- 原版版本在低于1.21时,d3dx9_31.dll必须放置在最新版资料片或物品包目录下,
像这样:大学生活目录\Game\Bin\d3dx9_31.dll
- 原版在1.21或以上版本的,d3dx9_31.dll要放置在原版目录下,
像这样:原版目录\Game\Bin\d3dx9_31.dll
④ 怎样定义一种新算法: A*B=A 平方+B平方-2AB,计算原理是什么谢谢~
……定义新算法就是相当于改变原来符号的意义
比如你这个
看到a*b就用新的方法去算。
2*8就是4+64-32=36
所以原式=6*36=36+1296-432=900
⑤ 学习方法
都是过来人,我知道你的想法,也明白你的想法!但是你反过来想没有,大家都是同在这一个环境里的,不只有你有这样的想法,只是有的同学就随波逐流,你说我也说,有的同学象你一样抱怨这个环境不好影响到自己学习,还有的同学不管怎么样就是学习.我相信你是好学生!你只是价值观还没到达!你说你内向,自制力差都是很正常的,没有一个人生来就是完美的,包括每一个成功的人.所以你现在要学会成长,抱怨是没用的!试想想你要去山区上学那就抱怨不完了!明确你的目标,就朝着你的目标前进吧!我相信你
⑥ 如何算我的生辰八字
你的骨重为 55 钱。 称骨歌曰:走马扬鞭争名利,少年作事费筹论,一朝福禄源源至,富贵荣华显六亲。
⑦ 请问下用易经卜卦的方法有几种哪几种较准
向左转|向右转