算法基础:介绍与编程应用

需积分: 5 0 下载量 2 浏览量 更新于2024-07-10 收藏 332KB PDF 举报
本章《ch01 引论》探讨了算法与编程在信息技术领域的核心地位。首先,定义了算法的广泛含义,它是按照明确步骤解决问题或达成目标的过程,不仅限于计算机科学,还包括数学问题的求解。狭义的算法则特指为计算机设计的解决问题的指令集,强调了算法的四个基本性质:有输入(可能无)、有输出、步骤清晰、有限时间完成。 接着,通过两个实例展示了算法的实践应用,一个是计算两个自然数的最大公约数,另一个是如何制作一道简单的菜肴——香菇炒青菜,这两个例子分别展示了算法的逻辑结构和实际操作步骤。 算法与编程的关系进一步阐述,计算机只能理解和执行定义明确、有限长度的基本操作序列,编程则是将这些抽象的算法转化为可执行的程序。然而,程序并非总是严格遵循算法的时间有限性,例如ATM机上的程序可能包含无限循环,但每个子程序内部仍然遵循特定算法。 本章节还揭示了基于计算机问题求解的三个主要组成部分:编程(algorithm)、数据结构(data structure)以及编程语言(language)。这三者共同构成了问题解决的基础框架。最后,推荐了一些经典的教材,如MH Alsuwaiyel的《算法设计技术与分析》和Alfred V. Aho、John E. Hopcroft、Jeffery D. Ullman的《计算机算法设计与分析》,供读者深入学习算法设计和分析。 总结来说,本章为读者提供了关于算法基础概念、编程实践和理论研究的入门引导,强调了算法在计算机科学中的核心地位,并鼓励读者通过学习和实践来掌握这一关键技能。