请写伪代码

写这篇blog之前,我其实是没有太多的实践经验的,所以只能是纸上谈兵了。

编程对于许多非计算机学科的人来说,好像很高级,其实有这么个想法,源于一个基础的事实,不了解,正所谓隔行如隔山。编程,其实是很简单的一件事,说白了就是解决一个问题,这个问题得分甲乙丙丁些许过程,得先如此如此,再如此如此。就像算数学题一样,有公式,有步骤,最终将解决方案留于纸上或者黑板上甚至于屏幕上。

算一个数学题,最重要的部分,其实不是留在纸上或者黑板上甚或于屏幕上的东西,而是之前的构思和步骤,走完了这两步,就干完了百分之九十的活,其余的部分怎么折腾都行,可以口述,可以手写,也可以默记于心。

编程也一样。

一个问题来了,得分得清子丑寅卯,得拎得清轻重缓急。换句话说,只要有思路,即便没有编过程序,你也可以当一回程序员了。中国的大多数学生都可以称为“程序员”,因为他们解题的能力很强,可以很轻松的分清问题的主次和关窍。至于说怎么写出来,怎么运行起来,这个说实在的,并不是精华所在。因为,这个东西是别人定的,你得按照别人的规程来,用一些稀奇古怪的符号来掩饰程序最本质的东西,这样才显得程序员个个都是高级的。解开内里的东西,大家都明了。所以说,编程也就是那么回事。

那么怎么做,才能成为一个合格的程序员呢?这个问题我无法给出一个标准的答案。在我看来,一个好的程序员,应该学会写好伪代码。所谓伪代码,其实就是交代一件事,用文字描述也好,用符号表示也罢,都是清晰地阐述思路,揭示问题解决之道。越容易懂,越清晰明了的伪代码,就越好实现。因为大家一看都明白,这样写代码的时候,条件反射就更容易些,自己写的伪代码自己都看不懂,那哪有什么参考意义。

写伪代码,不是写记叙文,也不是写诗歌,应该简单明了,逻辑性强。这样才容易让人忽略字面上的东西,去思考其中的玄机。

从专业些的角度描述,伪代码应该做到以下几点:

  • 模块化,一个模块解决一个问题;
  • 每个模块应该有一个或者多个输入,一个输出;
  • 结果没有二义性;
  • 伪代码就是算法的载体,应该在正确的基础上尽量高效和健壮。正确不必多说,高效的具体表现是时间复杂度尽可能的小,健壮就是保证模块可以处理多种异常和突发事件。
所以写好伪代码之后,就开始思考其时间复杂度,怎么做,才可以让复杂度最低。如果长期坚持这么去编程,那么用不了多久,你也能成为好的程序员了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值