一点点 Preface_算法设计与分析基础书评-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > 编程 > 算法设计与分析基础 > 一点点 Preface
终南长安 算法设计与分析基础 的书评 发表时间:2011-03-26 19:03:38

一点点 Preface

Algorithms play the central role in both the science and the practice of computing. Recognition of this fact has led to the appearance of a considerable number of textbooks on the subject. By and large, they follow one of two alternatives in presenting algorithms. One classifies algorithms according to a problem type. Such a book would have separate chapters on algorithms for sorting, searching, graphs, and so on. The advantage of this approach is that it allows an immediate comparison of, say, the efficiency of different algorithms for the same problem. The drawback of this approach is that is emphasizes problems types at the expense of algorithm design techniques.

The Second alternative organizes the presentation around algorithm design techniques. In this organization, algorithms from different areas of computing are grouped together if they have the same design approach. I share the belief of many that this organization is more appropriate for the basic course on design and analysis of algorithms. These are three principal reasons for emphasis on algorithm design techniques. First, these techniques provide a student with tools for designing algorithms for new problems. This makes learning algorithm design technique a very valuable endeavor from the practical standpoint. Second, they seek to classify multitudes of known algorithms according to an underlying design idea. Learning to see such commonality among algorithms from different application areas should be a major goal of computer science education. After all, every science considers classification of its principal subject as a major if not the central point of its discipline. Third, in my opinion, algorithm design techniques have considerable utility as general problem-solving strategies, applicable to problems beyond computing.

算法在计算科学理论和实践上占有中心地位,大量的算法书籍也因此而产生。大体上,这些书籍有两种不同的结构。第一种根据问题的类型来将算法分类,这类书籍将算法分为排序,查找,图算法等章节来讲述。这种分类的好处是可以直接地比较不同算法在相同问题上的性能。但是,这种组织方式带来的不足之处是强调了问题的类型而忽视了算法的设计技术。

第二种方式是根据算法设计技术来组织内容。在这种结构下,拥有相同设计方式,应用在不同领域的算法被聚合在一起。同很多人一样,我认为这种方式更适合作为算法设计和分析的初级课程。需要强调算法设计技术,主要有三个原因:一,这些技术给学生们提供了设计算法处理新问题的工具。在实用的角度上,这使得学习算法设计技术很有价值。二、通过相同的设计想法,学生们对已经学到的算法进行分类,计算机教育领域的主要目标应是从不同的应用领域学习到算法间的相通性。

展开全文
有用 2 无用 0

您对该书评有什么想说的?

发 表

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读