有过编程经验的人都知道,
程序永远到达不了结束就是死循环。
死循环违背了算法的可停止性原则:
算法必须是最终可停止的。
也就是说,一直重复,永远也不能返回结果的操作步骤(也叫死循环)是不能被称作算法的。
算法的可停止性也就是"保证无论什么样的输入,也一定可以在有限时间内正确地停止"。
比如以下这样的描述就是典型的死循环。
程序开始:
第一行:a等于1;
第二行:如果a等于1,则回到第一行;
第三行:退出程序;
1
比如这样的死循环:
1)发工资;
2)用光,等发工资;
3)用10%存银行;
这是无解的啊,永远也到不了第三步啊,所有的计划打算等于没有,
你别不信,满大街都是这样的人,
我认识几个小伙,在教育培训机构做到总监级别,
工资12K以上,每月月光,还要借钱过日子,
曾经又个机会合伙创业,几个人3万元都凑不齐,只好放弃,
后悔没存钱,信誓旦旦要立即开始存钱,
半年过后,见到他们,依然没有任何进展。
终于相信了,花钱也会上瘾。
其实很简单,要改变他们的问题,只要把算法调整一下:
1)发工资;
2)用10%存银行;
3)用光或不用光随意;
2
比如这样的死循环:
1)今天开始做XXX;
2)今天太累/晚/...,明天再说;
3)坚持做XXX;
见到太多的人,计划坚持写作、坚持学英语,
计划了一遍又一遍,
曾经有好几个欲报名学英语的人,
非常想学,也知道英语确实很重要,
而且对工作帮助很大,
几年过去了,还是没开始。
原因就是陷入了死循环,永远都不会开始。
给他们的答案就是:开始。
任何事情只有行动才能产生效果。
所以对他们来说,循环只有两步:
1)开始;
2)坚持;
3
曾经有一段灰暗的岁月,
每天陷入烦人的琐事,
日复一日,无穷无尽。
感觉万念俱灰,日子没有出头的一天,
直到看到一个算法理论:算法必须是最终可停止的。
是啊,万事万物都有一个尽头,
爱情也好、生命也好、友情也好都不能例外。
宇宙是从大爆炸中产生的,它有尽头。
地球也有尽头,世上万物都有尽头。
人类会消亡,个人的生死,代代更替是寻常事。
所有的烦恼,在当下看来是无穷无尽,压得人喘不过气来,
短则一会,长则几天半月,那些烦恼就会灰飞烟灭。
所以说任何事情,拔高来看,放到更长的时间周期来看,
比如,10天以后,10个月以后,10年以后,会如何?
我把它叫做”三十理论“。
比如,人到中年,常常会因为子女教育问题,家务问题等,
与另一半发生摩擦,闹得大家都不愉快,
现在每当这样的时候,
我机会用”三十理论“,10年后,不管如何,都会长大,
不会因为琐事而停止成长。
我们也会老去10岁,10年后再看今天发生的事,
我又会怎么看?怎么想?
4
去年,为了解决一个无解的生意上的难题,
跟一家机构签了一个死循环的合同,
1)乙方经营管理;
2)甲方参与学费分成;
合作了半年后,经营不理想,我们想中止合同,
才发现是死循环,
因为没!有!中!止!条!款!
比如,合作中任何一方不满意怎么办?终止后学员归属?。。。。。。
又狠狠地打了一回脸!
世界上万事万物皆有终!
合同也不例外,有自然的合同的到期终止。
也应该有合同执行的中途的中止。
否则就会出现问题。
所以,一份正规的合同,肯定包含终止和中止条款。
结语:算法源于生活,基于数学,成于计算。
算法的可停止性原则,提示我们万事万物皆有终,生活避免陷入死循环!