📄 chapter3.htm
字号:
<html><!-- #BeginTemplate "/Templates/article_template.dwt" -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="keywords" content="algorithm, data structure, contest, programming, 算法, 数据结构, 程序设计, 竞赛">
<meta name="description" content="discussing the algorithm and data structure of computer programming, as well as all kinds of programming contest.">
<meta name="description" content="讨论程序设计的算法与数据结构,各类程序设计竞赛试题解析和参赛经验介绍。">
<!-- #BeginEditable "doctitle" -->
<title>算法表达中的抽象机制——使用抽象数据类型带来的好处</title>
<!-- #EndEditable -->
<script id="header" language="JavaScript" src="../../lib/header.js"></script>
<!-- #BeginEditable "javascript" -->
<script language="JavaScript">
previous = "chapter2.htm";
next = "chapter4.htm";
contents="index.htm";
topic="算法表达中的抽象机制";
</script>
<!-- #EndEditable -->
</head>
<body bgcolor="#FFFFFF">
<div id="content">
<!-- #BeginEditable "MainContent" -->
<h2>使用抽象数据类型带来的好处</h2>
<p>使用抽象数据类型将给算法和程序设计带来很多好处,其中主要的有下面几条。</p>
<ol>
<li>算法顶层的设计与底层的设计被隔开,使得在进行顶层设计时不必考虑它所用到的数据和运算分别如何表示和实现;反过来,在进行数据表示和运算实现等底层设计时,只要抽象数据类型定义清楚,也不必考虑它在什么场合被引用。这样做,算法和程序设计的复杂性降低了,条理性增强了。既有助于迅速开发出程序的原型,又有助于在开发过程中少出差错,保证编出的程序有较高的可靠性。</li>
<li>算法设计与数据结构设计隔开,允许数据结构自由选择,从中比较,可优化算法和提高程序运行的效率。</li>
<li>数据模型和该模型上的运算统一一在抽象数据类型中,反映了它们之间内在的互相依赖和互相制约的关系,便于空间和时间耗费的折衷,满足用户的要求。</li>
<li>由于顶层设计和底层设计被局部化,在设计中,如果出现差错,将是局部的,因而容易查我也容易纠正。在设计中常常要做的增、删、改也都是局部的,因而也都很容易进行。因此,可以肯定,用抽象数据类型表述的程序具有很好的可维护性。</li>
<li>编出来的程序自然地呈现模块化,而且,抽象的数据类型的表示和实现都可以封装起来,便于移植和重用。</li>
<li>为自顶向下逐步求精和模块化提供一种有效的途径和工具。</li>
<li>编出来的程序结构清晰,层次分明,便于程序正确性的证明和复杂性的分析。</li>
</ol>
<!-- #EndEditable -->
</div>
<script src='../../lib/footer.js'>
</script>
</body>
<!-- #EndTemplate --></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -