影音娱乐 新浪首页 > 影音娱乐 > >正文

程序的美

http://ent.sina.com.cn 2005年07月28日07:03 哈尔滨日报

  刘育刚

  吕光楣老师是我在船院上学时的老师,后来我们又成为了同事。他离休前主讲“数据结构”和“算法设计与分析”,每当我遇到算法方面的疑难,总要向他请教。吕老师与我有师生之谊,他也总像上世纪50年代给我们上课时那样认真和耐心。上周我打电话询问是否有“求n中取m的所有组合”的现成算法,吕老师说只有编程序解决。第二天上午当我费劲地琢磨
算法时,吕老师来电话说他已排好了程序。我正为老师的程序能力惊异时,又听到了使我激动不已的一句话:“整个程序只用到了指针和置换,真有一种程序的美!”

  说到美,多数人立刻会想到艺术,其实科学同样有美。欣赏艺术的美会使我们感到愉悦;欣赏科学的美,会使我们在欣喜之外还产生一种对科学伟大内涵的深入思考。

  程序理论是计算机科学的重要内容,程序是计算机科学工作的一种产品。像艺术品一样,并不是所有的计算机程序都是美的。一位大书法家的作品无疑很美,但是他刚学会写的头几个字,恐怕与美不沾边。编程序和学书法是一个道理,一个刚学会编程的学生恐怕不会编出优美的程序。如果不了解程序设计方法学方面的知识,也就不会知道什么是程序的优美。仅仅学会语法与成为一名优秀的程序员之间还有很长的路。还要学习有关的程序理论,还要不断的实践,仔细的琢磨,用心编好每一个程序。经过多年的锻炼,有了一定的功夫,我们的程序就不会是枯燥无味使人心烦的一串串符号,而是一种优美和高雅的艺术品,供我们应用,供我们欣赏了。

  计算机科学家沃思曾有一个说法:“算法+数据结构=程序”。程序的美主要在于算法的美和结构的美。算法美表现为简洁、流畅、分明和新颖。结构的美表现为清晰、和谐、平衡和易懂。

  吕老师在算法和结构两方面都有相当的造诣,如今仍以古稀之年正在编制一套计算机专业的教学演示软件,程序能力自然高超。我永远是他的学生。对“求n中取m的所有组合”问题,我也编了一个程序。但由于算法不当,程序缺乏良好的结构,运行时间拖的也很长。而吕老师的程序仅用一个循环,循环体内仅用三个条件语句就解决了全部问题。真使人拍案叫绝,他的程序确实有一种程序的美。

  “爱美之心,人皆有之”。一个从事科技工作的人,在追求艺术美的同时,更应不断追求科学美。同样,一个计算机软件人员,在追求艺术美的同时,也应为美的程序而不断努力。

收藏此页 多种方式看新闻下载点点通打印】【关闭

新 闻 查 询
关键词


影音娱乐意见反馈留言板
电话:010-62647003 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2005 SINA Inc. All Rights Reserved

版权所有 新浪网