程序设计导论 Python语言实践pdf

图书网 2018年8月24日20:35:39114.6K1

程序设计导论 Python语言实践 内容简介

本书从跨学科的角度入手,强调应用,介绍Python有用的功能,包括编程的基本要素、功能、模块、面向对象编程和数据抽象对象、算法与数据结构,融汇了作者丰富的课堂教学经验,提供了大量源代码、I/O库和精选实例。适合作为高校计算机专业编程课程的教材。

程序设计导论 Python语言实践 目录

第1章 程序设计的基本元素

1.1 你的第一个程序

1.1.1 Python程序设计

1.1.2 输入和输出

1.1.3 问题和解答

1.1.4 习题

1.2 内置数据类型

1.2.1 相关术语

1.2.2 字符串

1.2.3 整数

1.2.4 浮点数

1.2.5 布尔值

1.2.6 比较

1.2.7 函数和API

1.2.8 数据类型转换

1.2.9 小结

1.2.10 问题和解答(字符串)

1.2.11 问题和解答(整数)

1.2.12 问题和解答(浮点数)

1.2.13 问题和解答

1.2.14 习题

1.2.15 创新习题

1.3 选择结构和循环结构

1.3.1 if语句

1.3.2 else子句

1.3.3 while语句

1.3.4 for语句

1.3.5 语句嵌套

1.3.6 应用实例

1.3.7 循环和中断

1.3.8 死循环

1.3.9 小结

1.3.10 问题和解答

1.3.11 习题

1.3.12 创新习题

1.4 数组

1.4.1 Python中的数组

1.4.2 数组别名和拷贝

1.4.3 Python对数组操作提供的系统支持

1.4.4 一维数组应用实例

1.4.5 二维数组

1.4.6 二维数组应用实例:自回避随机行走

1.4.7 小结

1.4.8 问题和解答(字符串)

1.4.9 习题

1.4.10 创新习题

1.5 输入和输出

1.5.1 鸟瞰图

1.5.2 标准输出

1.5.3 标准输入

1.5.4 重定向和管道

1.5.5 标准绘图

1.5.6 动画

1.5.7 标准音频

1.5.8 小结

1.5.9 问题和解答

1.5.10 习题

1.5.11 创新习题

1.6 应用案例:随机Web冲浪模型

1.6.1 输入格式

1.6.2 转换矩阵

1.6.3 模拟

1.6.4 混合马尔可夫链

1.6.5 经验总结

1.6.6 习题

1.6.7 创新习题

第2章 函数和模块

2.1 定义函数

2.1.1 调用和定义函数

2.1.2 实现数学函数

2.1.3 使用函数组织代码

2.1.4 传递参数和返回值

2.1.5 实例:声波的叠加

2.1.6 问题和解答

2.1.7 习题

2.1.8 创新习题

2.2 模块和客户端

2.2.1 使用其他程序中的函数

2.2.2 模块化程序设计的抽象概念

2.2.3 随机数

2.2.4 数组处理API

2.2.5 迭代函数系统

2.2.6 标准统计

2.2.7 模块化程序设计

2.2.8 问题和解答

2.2.9 习题

2.2.10 创新习题

2.3 递归

2.3.1 你的第一个递归程序

2.3.2 数学归纳法

2.3.3 欧几里得算法

2.3.4 汉诺塔

2.3.5 函数调用树

2.3.6 指数时间

2.3.7 格雷码

2.3.8 递归图形

2.3.9 布朗桥

2.3.10 递归的陷阱

2.3.11 展望

2.3.12 问题和解答

2.3.13 习题

2.3.14 创新习题

2.4 案例研究:渗透原理

2.4.1 渗透原理

2.4.2 基本脚手架代码

2.4.3 垂直渗透

2.4.4 测试

2.4.5 估计概率

2.4.6 渗透原理的递归解决方案

2.4.7 自适应绘制图形

2.4.8 经验总结

2.4.9 问题和解答(字符串)

2.4.10 习题

2.4.11 创新习题

第3章 面向对象的程序设计

3.1 使用数据类型

3.1.1 方法

3.1.2 字符串处理

3.1.3 字符串处理应用:基因组学

3.1.4 用户自定义数据类型

3.1.5 颜色

3.1.6 数字图像处理

3.1.7 输入和输出(进一步讨论)

3.1.8 内存管理

3.1.9 问题和解答

3.1.10 习题

3.1.11 创新习题

3.2 创建数据类型

3.2.1 数据类型的基本元素

3.2.2 秒表

3.2.3 直方图

3.2.4 海龟绘图

3.2.5 递归图形

3.2.6 复数

3.2.7 曼德布洛特集合

3.2.8 商业数据处理

3.2.9 问题和解答

3.2.10 习题

3.2.11 创新习题

3.3 设计数据类型

3.3.1 设计API

3.3.2 封装

3.3.3 不可变性

3.3.4 实例:空间向量

3.3.5 元组

3.3.6 多态性

3.3.7 重载

3.3.8 函数是对象

3.3.9 继承

3.3.10 应用:数据挖掘

3.3.11 契约式设计

3.3.12 问题和解答

3.3.13 习题

3.3.14 数据类型设计习题

3.3.15 创新习题

3.4 案例研究:多体模拟

3.4.1 多体模拟

3.4.2 问题和解答

3.4.3 习题

3.4.4 创新习题

第4章 算法和数据结构

4.1 性能

4.1.1 观察

4.1.2 假说

4.1.3 增长量级分类

4.1.4 预测

4.1.5 注意事项

4.1.6 性能保证

4.1.7 Python列表和数组

4.1.8 字符串

4.1.9 内存

4.1.10 展望

4.1.11 问题和解答

4.1.12 习题

4.1.13 创新习题

4.2 排序和查找

4.2.1 二分查找法

4.2.2 插入排序算法

4.2.3 归并排序算法

4.2.4 Python系统排序方法

4.2.5 应用:频率计数

4.2.6 经验总结

4.2.7 问题和解答

4.2.8 习题

4.2.9 创新习题

4.3 栈和队列

4.3.1 下堆栈(后进先出栈)

4.3.2 基于Python列表(可变数组)实现栈

4.3.3 基于链表实现栈

4.3.4 堆栈的应用

4.3.5 FIFO队列

4.3.6 队列的应用

4.3.7 资源分配

4.3.8 问题和解答

4.3.9 习题

4.3.10 链表习题

4.3.11 创新习题

4.4 符号表

4.4.1 符号表API

4.4.2 符号表客户端

4.4.3 基本符号表实现

4.4.4 哈希表

4.4.5 二叉搜索树

4.4.6 BST的性能特点

4.4.7 BST的遍历

4.4.8 可迭代对象

4.4.9 有序符号表操作

4.4.10 字典数据类型

4.4.11 集合数据类型

4.4.12 展望

4.4.13 问题和解答

4.4.14 习题

4.4.15 二叉树习题

4.4.16 创新习题

4.5 案例研究:小世界现象

4.5.1 图

4.5.2 图数据类型

4.5.3 Graph客户端例子

4.5.4 图的最短路径

4.5.5 小世界图

4.5.6 经验总结

4.5.7 问题和解答

4.5.8 习题

4.5.9 创新习题

后记

词汇表

索引

应用程序编程接口

程序设计导论 Python语言实践 精彩文摘

2.非主导地位的内循环

内循环占主导地位的假设并不总是正确。问题规模大小n也许不足够大,在其数学描述中,内循环指令执行频率的主导项目相对于次要项目并没有很大差异,所以不能忽略次要项目。许多程序在内循环外包含大量的代码,必须加以考虑。

3.系统考虑

典型情况下,计算机中运行了许多其他程序。Python仅仅是竞用资源的很多程序之一,Python本身包含许多可以显著影响性能的选项和控制。这种考虑可能会干扰科学方法中的基本原则:实验应该是可再生的,因为此时发生在你计算机上的事件将永远不会再发生。不管你的计算机系统在运行什么,原则上都应该可以忽略,因为它们超出了控制。

4.势均力敌

当我们比较同一个任务的两个不同程序时,一个程序可能在某种情况下比较快,但在另一种情况下比较慢。上述讨论的一种或多种考虑可能导致差异。另外,在某些程序员(以及某些学生)中存在一种自然倾向,就是喜好投入大量精力运行这种赛马程序以发现“*佳”实现,但是这种工作最好交给专家完成。

5.对输入值的强烈依赖

我们确定一个程序运行时间的增长量级的假设之一是运行时间相对于输入值无关。如果这个条件不成立,则可能获得不一致的结果,或者无法验证我们的假说。我们采用的程序threesum.py就不存在这个问题,但本章的若干例子表明运行时间确实与输入值有关。通常,设计的主要目标是消除这种对输入值的依赖。如果不能实现这个目标,则必须仔细建立所需解决问题中待处理的输入数据类型的模型,而这是一种巨大的挑战。如果编写一个处理基因组的程序,我们如何判别其针对不同基因组的效果?然而,一个良好地描述自然界基因组的模型则是科学家所寻求的,所以,针对我们的程序在实际自然界数据上运行时间的评估将对模型做出有价值的贡献。

图书网:程序设计导论 Python语言实践pdf

继续阅读

→→→→→→→→→→→→→→→→→→→→查找获取

程序设计

重构 改善既有代码的设计(中文版)pdf

《重构:改善既有代码的设计》(中文版)所提的这些重构准则将帮助你一次一小步地修改你的代码,这就减少了过程中的风险。很快你就会把这些重构准则和其名称加入自己的开发词典中,并且朗朗上口...
程序设计

数据结构 C语言版 第2版pdf

适读人群 :普通高校电子信息大类本科生学习、考研,同时也适合零售和培训。 采用“案例驱动”的编写模式。书中结合实际应用,将各章按照“案例引入——数据结构及其操作——案例分析与实现”...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

评论:11   其中:访客  11   博主  0
    • Pop Pop
      Pop Pop 0

      请问如何下载?

      • 1446678619
        1446678619 0

        我就看看行吧

        • 江左梅郎
          江左梅郎 9

          非常好的

          • 宛若大侠
            宛若大侠 9

            我想下载

            • 便
              便 9

              换个接口开发

              • bababbalong
                bababbalong 9

                看看

                • bababbalong
                  bababbalong 9

                  下载

                  • 半页童话i
                    半页童话i 0

                    书很棒,请问如何下载

                    • snoopy
                      snoopy 9

                      网站不错

                      • snoopy
                        snoopy 9

                        下载