1.1 基础编程模型
Robert Sedgewick Kevin Wayne
我们学习算法的方法是用 Java 编程语言编写的程序来实现算法。这样做是出于以下原因:
程序是对算法精确、优雅和完全的描述;
可以通过运行程序来学习算法的各种性质;
可以在应用程序中直接使用这些算法。
相比用自然语言描述算法,这些是重要而巨大的优势。
这样做的一个缺点是我们要使用特定的编程语言,这会使分离算法的思想和实现细节变得困难。我们在实现算法时考虑到了这一点,只使用了大多数现代编程语言都具有且能够充分描述算法所必需的语法。
我们仅使用了 Java 的一个子集。尽管我们没有明确地说明这个子集的范围,但你也会看到我们只使用了很少的 Java 特性,而且会优先使用大多数现代编程语言所共有的语法。我们的代码是完整的,因此希望你能下载这些代码并用我们的测试数据或是你自己的来运行它们。
我们把描述和实现算法所用到的语言特性、软件库和操作系统特性总称为基础编程模型。本节以及 1.2 节会详细说明这个模型,相关内容自成一体,主要是作为文档供读者查阅,以便理解本书的代码。我们的另一本入门级的书籍 An Introduction to Programming in Java: An Interdisciplinary Approach 也使用了这个模型。
作为参考,图 1.1.1 所示的是一个完整的 Java 程序。它说明了我们的基础编程模型的许多基本特点。在讨论语言特性时我们会用这段代码作为例子,但可以先不用考虑代码的实际意义(它实现了经典的二分查找算法,并在白名单过滤应用中对算法进行了检验,请见 1.1.10 节)。我们假设你具备某种主流语言编程的经验,因此你应该知道这段代码中的大多数要点。图中的注释应该能够解答你的任何疑问。因为图中的代码某种程度上反映了本书代码的风格,而且对各种 Java 编程惯例和语言构造,在用法上我们都力求一致,所以即使是经验丰富的 Java 程序员也应该看一看。
公开
同步至部落
取消
完成
0/2000
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
![](https://static001.geekbang.org/resource/image/d0/e4/d0880927e2a522a038be2d04bf19dfe4.png)
本文深入介绍了Java编程语言的基础知识,包括原始数据类型、表达式、类型转换、比较和其他原始类型。强调了编程语言实现算法的重要性,并指出了程序相比自然语言描述算法的优势。通过详细讨论Java程序的基本结构,读者可以快速了解基础编程模型的概览,为后续深入学习打下基础。文章还介绍了Java中的中缀表达式、运算符优先级、类型转换和比较运算符的使用。此外,还提到了Java提供的其他五种原始数据类型。 此外,文章还介绍了模块化编程、单元测试和外部库的重要性,以及API的作用。通过对Java编程语言的基础知识和编程模型的介绍,读者可以快速了解Java编程的核心概念和技术特点,为进一步学习和实践打下基础。 另外,本文还介绍了标准输入库中的静态方法的API,以及重定向与管道的过程。同时,文章还涉及了标准绘图库的使用,包括静态绘图方法和控制方法的API。这些内容将有助于读者在数据分析和算法的可视化中应用Java编程语言,为技术实践提供了重要参考。 总的来说,本文内容丰富,涵盖了Java编程语言的基础知识和相关技术特点,适合初学者快速了解和学习。文章通过深入介绍Java编程语言的基础知识和相关技术特点,为读者提供了全面的学习参考,为初学者打下了扎实的学习基础。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《算法(第 4 版)》
《算法(第 4 版)》
立即购买
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论