编辑推荐
                                      跨学科,兼顾广度与深度,理论与技能相结合。
  实例丰富且源自生活,可读性强。
  计算机基础知识作为计算思维的案例,更易理解。
  读者对象广泛,零基础要求。      
内容简介
     本书兼顾计算机科学基础知识和计算思维,以通俗易懂的方式介绍计算思维如何应用于各学科领域(含计算机科学)解决问题。本书以Python作为实践语言,展现利用计算思维解决问题方法的实现。通过这种跨学科应用问题求解的学习和实践,希望培养学生主动在各专业学习中利用计算思维的方法和技能,进行问题求解的能力和习惯,并能动手解决具有一定难度的实际问题。
  本书适合作为高等院校计算机及相关专业的教材,也可以作为计算思维爱好者的读物。     
内页插图
          目录
   第一部分计算思维导论
第1章计算概论31.1计算3
1.2小结9
习题9
第2章Python简介10
2.1Python基本元素10
2.1.1对象、表达式和数值类型11
2.1.2变量和赋值12
2.2分支语句14
2.3str类型与输入15
2.4循环16
2.5内置数据结构18
2.5.1列表18
2.5.2元组20
2.5.3字典22
2.6函数22
2.7文件25
2.8小结26
习题26
第3章计算思维与计算机问题求解29
3.1计算思维29
3.2计算机问题求解32
3.3算法复杂度36
3.4计算机问题求解的核心方法38
3.5小结42
习题42
第二部分计算机科学篇
第4章递归494.1定义及应用49
4.2递归与数学归纳法53
4.2.1最大子集问题53
4.2.2排序56
4.3动态编程58
4.4小结60
习题60
第5章信息、信息表示及处理62
5.1信息论基础62
5.2信息的数字化64
5.2.1数值的数字化65
5.2.2字符的数字化67
5.2.3声音的数字化69
5.2.4图像的数字化70
5.3数据压缩71
5.3.1Huffman编码72
5.3.2Python实现75
5.4信息加解密78
5.5小结87
习题87
第6章面向对象程序设计89
6.1Python面向对象基础90
6.2一个实际的例子: 按揭贷款94
6.3数据的图形化97
6.4小结102
习题102
第7章计算机系统103
7.1概述103
7.2数字电路105
7.2.1逻辑门的建模与模拟106
7.2.2加法器110
7.2.3存储电路113
7.3计算机硬件系统115
7.4小结121
习题121
第8章图灵机与图灵测试123
8.1图灵机123
8.2图灵测试129
8.2.1正则表达式简介131
8.2.2简单图灵测试程序133
8.3小结138
习题138
第三部分应用篇
第9章模拟、概率与统计143
9.1随机与概率143
9.2数据分布152
9.3正态分布与置信区间155
9.3.1均匀分布156
9.3.2指数分布156
9.3.3几何分布156
9.3.4Benford分布158
9.4随机数生成160
9.5小结170
习题170
第10章蒙特卡洛模拟方法172
10.1概述172
10.2初探——模拟赌局173
10.3计算π177
10.4游荡的醉汉179
10.5高手赢面就大吗188
10.6小结192
习题193
第11章数据分析概览194
11.1概述194
11.2乳腺癌的诊断195
11.3小结204
习题204
第12章排队问题205
12.1排队论基础205
12.2SimPy简介207
12.3需要多少小便斗216
12.4小结222
习题223
第1章图像处理基础1
1.1位图与矢量图1
1.1.1位图1
1.1.2矢量图2
1.2分辨率2
1.3颜色模式3
1.4常用文件的存储格式6
1.5转换图像文件格式实例8
第2章Photoshop基本操作10
2.1熟悉工作区10
2.2图像处理基本工作流程13
2.2.1创建新图像文件 13
2.2.2存储图像文件14
2.2.3打开和关闭文件15
2.2.4颜色的设置16
2.2.5填充颜色18
2.2.6使用标尺、网格与参考线19
2.2.7图像编辑的基本操作21
2.3改变图像大小操作实例24
第3章选区的使用27
3.1创建选区27
3.1.1创建规则选区27
3.1.2创建不规则选区29
3.1.3智能化的选取工具30
3.2编辑选区32
3.2.1移动选区33
3.2.2反向选区33
3.2.3取消选区33
3.2.4再次选择刚刚选取的选区33
3.2.5变换选区33
3.2.6增加选区33
3.2.7减少选区34
3.2.8修改选区34
3.2.9羽化选区35
3.2.10选区描边35
3.2.11存储与载入选区35
3.2.12复制、剪切、移动和粘贴选区的内容35
3.3绘制一个太极图图标36
第4章图像的绘制与修饰40
4.1绘制图像40
4.1.1画笔工具40
4.1.2铅笔工具42
4.1.3颜色替换工具42
4.1.4擦除工具43
4.2修饰工具44
4.2.1修复画笔工具组44
4.2.2图章工具组47
4.2.3模糊工具组48
4.2.4历史记录画笔工具组49
4.3绘制花纹图案50
第5章色彩的调整53
5.1使用调整工具53
5.2色彩调整的基本方法54
5.2.1去色54
5.2.2反相54
5.2.3阈值55
5.2.4色调分离56
5.2.5色调均化56
5.2.6自动色调56
5.2.7自动对比度56
5.2.8自动颜色57
5.3色彩调整的中级方法57
5.3.1亮度/对比度57
5.3.2色彩平衡57
5.3.3替换颜色58
5.3.4照片滤镜59
5.3.5通道混合器60
5.4色彩调整的高级方法61
5.4.1色阶61
5.4.2曲线62
5.4.3色相/饱和度64
5.4.4渐变映射65
5.4.5可选颜色66
5.4.6匹配颜色66
5.5照片白天变黑夜67
第6章图层的应用72
6.1图层的基础知识72
6.1.1图层面板和菜单72
6.1.2图层的类型73
6.2图层的编辑74
6.2.1新建、复制、移动和删除图层74
6.2.2图层的链接、对齐、合并74
6.2.3图层的变换75
6.2.4图层的编组75
6.2.5调整图层的不透明度76
6.3图层的混合模式76
6.4图层样式80
6.4.1图层样式命令80
6.4.2图层样式效果80
6.5填充图层和调整图层87
6.5.1填充图层87
6.5.2调整图层 87
6.5.3编辑图层内容88
6.6制作水晶按钮88
第7章蒙版和通道91
7.1蒙版的创建与基本操作91
7.1.1蒙版及类型91
7.1.2快速蒙版91
7.1.3蒙版面板93
7.1.4图层蒙版94
7.1.5矢量蒙版95
7.1.6剪贴蒙版96
7.2通道及其基本操作96
7.2.1通道及类型96
7.2.2通道的基本操作 97
7.2.3专色通道的使用99
7.2.4通道运算100
7.3使用“贴入”命令创建日落风光101
7.4使用“矢量蒙版”命令创建春色满园102
7.5用通道作为选区载入的技术制作黄花效果104
第8章文本编辑106
8.1输入文字106
8.1.1输入横排、直排文字106
8.1.2输入段落文字107
8.1.3输入蒙版文字107
8.2编辑文字108
8.2.1“字符”面板108
8.2.2“段落”面板108
8.2.3路径文字109
8.3转换文字109
8.3.1将文字转换为路径109
8.3.2将文字转换为形状110
8.3.3将文字层转换为普通层110
8.4变形文字110
8.4.1通过“变换”菜单制作变形文字111
8.4.2利用预设的样式制作变形文字111
8.5段落文字的创建和编辑实例112
第9章路径和形状的绘制115
9.1绘制路径115
9.1.1钢笔工具 115
9.1.2自由钢笔工具116
9.1.3添加锚点工具117
9.1.4删除锚点工具117
9.1.5转换点工具117
9.2路径的选择和编辑117
9.2.1路径选择工具组118
9.2.2“路径”面板118
9.2.3填充路径119
9.2.4描边路径119
9.2.5路径转换为选区119
9.2.6选区转换为路径120
9.2.7路径的变形121
9.2.8保存与输出路径121
9.3绘制形状图形122
9.3.1矩形工具122
9.3.2圆角矩形工具122
9.3.3椭圆工具123
9.3.4多边形工具123
9.3.5直线工具124
9.3.6自定形状工具124
9.4制作邮票125
第10章滤镜的应用128
10.1滤镜128
10.1.1滤镜的功能128
10.1.2滤镜的分类128
10.1.3滤镜的使用规则128
10.1.4滤镜菜单129
10.2滤镜库129
10.3液化130
10.4常用滤镜的应用131
10.4.1风格化131
10.4.2模糊132
10.4.3扭曲134
10.4.4锐化135
10.4.5像素化136
10.4.6渲染137
10.4.7杂色138
10.4.8画笔描边140
10.4.9视频142
10.4.10素描142
10.4.11转换为智能滤镜144
10.4.12纹理144
10.4.13艺术效果145
10.4.14作品保护(Digimarc)147
10.5利用滤镜制作水波147
第11章综合案例150
11.1制作证件照150
11.2绘制手镯153
11.3利用滤镜制作放射文字158
附录Photoshop CS6常用快捷键164
参考文献168      
前言/序言
     从2008年开始,以计算思维的培养为主线开展计算科学通识教育,逐渐成为国内外计算机基础教育界的共识。2010年首届“钱学森创新拓展班”开始,作者就不断地在“大学计算机基础”课程中尝试计算思维基本概念、能力和技能的讲授以及能力培养。通过调整课时和授课内容比例,不断加大计算思维内容的比重。经过近5年的摸索,对计算思维的教学内容、授课方式、实践环节等有了很清楚的认识,形成了明确的思路,积累了大量的资料,才有了本书的成书。
  编写本书的指导思想是兼顾计算机科学基础知识和计算思维,以计算思维授课内容为主,将原来的数据表示、计算机硬件、网络等知识穿插进来,选择Python作为实践语言,授课内容更偏重于计算思维如何应用于各领域解决问题,各领域包括计算机科学领域。实践内容将在授课内容的基础上进行拓展,并要求运用Python及相关的配套库进行问题求解练习。最终,我们希望通过这种跨学科应用求解的讲授和实践,培养学生在理解计算机系统的基础上,主动在各自专业学习中利用计算思维的方法和技能,进行问题求解的能力和习惯,能动手解决具有一定难度的实际问题。
  考虑到对大部分学生来说,“大学计算机基础”课可能是大学期间的少数几门计算机科学相关课程之一,因此,本讲义更强调广度,涉及很多领域,使得学生在今后的学习、生活和工作中碰到问题时,可以考虑该问题是否能有计算的解决方法,并能借助计算思维和计算装置完成任务。本书在选择应用领域和案例时,着重在那些易于理解、不需要掌握算法和程序设计就能解决的问题上,因此,本书不会讲解算法,而是着重于如何利用计算思维理解和解决问题,展现计算思维在问题求解、系统构造、理解人类行为等方面发挥的重要作用。
  本书的主要目标是帮助读者理解和掌握计算思维解决问题的基本方法和技能,并能较为熟练地应用这些方法和技能有效地解决其他问题。通过本课程的学习,将学会如何利用计算思维构造问题◆计算思维导论——一种跨学科的方法求解框架、如何对问题进行抽象和建模、如何将数学或物理上的模型转换为能自动执行的模型等。总之,理解和掌握计算思维及计算机问题求解的艺术。
  本书适用于计算机专业和非计算机专业一年级新生,不要求有计算机程序设计经验,并且也不是以程序设计为主要内容,而是要求学生专注于理解计算思维求解问题的方法和技能。一些Python语言基础知识的介绍是帮助学生阅读和理解讲义中给出的Python程序,并能在理解的基础上,对这些程序进行小修改就能实践自己的问题求解方法。
  本讲义的内容分为三部分,强调系统化的问题求解和计算思维两个A(Abstraction & Automation)的威力。
  (1) 第一部分是计算导论,介绍计算思维的基本概念和基本技能、计算机问题求解的方法和本质,以及Python语言简介。
  (2) 第二部分结合计算机科学相关的知识,探讨计算思维在这些问题的解决上的体现,以及一些基本的问题求解策略。
  (3) 第三部分结合一些实际的应用背景和热点话题,介绍计算思维在解决实际问题上的体现。
  通过本书的学习,希望读者最后将能:
  (1) 列出计算思维的基本概念,较为熟练地利用本书所讲计算思维技术进行问题求解。
  (2) 说出计算思维和计算机问题求解的本质。
  (3) 能用程序设计语言,如Python,表达计算。
  (4) 能利用系统化的问题求解方法,完成从规划问题求解步骤,到用程序正确地表达计算整个完整的问题求解过程。
  (5) 掌握一些常用的计算方法和计算工具,如随机方法、图、模拟等。
  (6) 列出一些计算思维在各领域的应用案例,以及计算思维在其中发挥的重要作用。
  由于本书编写时间仓促,加之作者水平有限,书中难免出现谬误,恳请读者不吝赐教。    
				
 
				
				
					算法的脉络,逻辑的思辨:开启探索未知世界的钥匙  在信息爆炸的时代,我们身处一个前所未有的复杂世界。从浩瀚的宇宙到微观的原子,从人类社会的运转到数字信息的洪流,无处不隐藏着精妙的规律和深刻的联系。如何理解这些规律?如何驾驭这些信息?如何解决日益严峻的挑战?答案就蕴藏在一种强大的思维模式之中——计算思维。  《算法的脉络,逻辑的思辨:开启探索未知世界的钥匙》 并非一本枯燥的技术手册,而是一场引领读者穿越思维迷宫的智力冒险。它旨在揭示计算思维的核心理念,阐释其普适性与跨学科的应用价值,帮助您构建一种更加高效、系统、富有创造力的解决问题的方式。这本书将带您领略算法的优雅,体验逻辑的严谨,解锁发现问题本质、拆解复杂挑战、并设计最优解决方案的强大能力。   第一篇:思维的基石——理解计算的本质  第一章:超越代码的思考——什么是计算思维?  本章将深入浅出地探讨计算思维的定义与内涵。我们并非讨论如何编写程序,而是聚焦于一种思考和解决问题的方式。您将了解到,计算思维并非计算机科学独有的能力,而是源于对计算过程的深刻理解,并将这种理解迁移到其他领域。我们将剖析计算思维的四个核心要素:     分解(Decomposition): 如何将一个复杂的问题或系统分解成更小、更易于管理的部分。这就像解构一封复杂的信件,将其拆分成句子、词语,然后理解每个部分的含义,最终把握整体信息。我们将探讨分解的策略、原则,以及它如何帮助我们化繁为简。    模式识别(Pattern Recognition): 在看似杂乱无章的信息中发现规律、相似性和趋势。这好比一位侦探,通过搜集线索,发现其中的关联性,从而推断出事件的真相。我们将学习如何识别数据中的重复模式、相似结构,以及这些模式所蕴含的意义。    抽象(Abstraction): 忽略不必要的细节,专注于问题的本质和核心要素。这是一种提炼和概括的能力,如同绘制一幅地图,只保留关键的地标和道路,忽略沿途的每一棵树和每一栋房屋。我们将理解抽象的原理,学习如何构建模型,以及如何从具体案例中提炼出普遍适用的规则。    算法设计(Algorithm Design): 设计一系列清晰、有序的步骤来解决特定问题。这如同制定一份详细的旅行计划,明确了出发时间、交通方式、住宿地点、游览路线等每一个环节。我们将探讨算法的设计思想、评价标准,以及如何通过迭代和优化来改进算法的效率。  第二章:逻辑的语言——算法的优雅与力量  本章将聚焦于算法的设计与表达。您将不再视算法为枯燥的数学公式,而是将其看作一种精妙的逻辑表达,一种解决问题的“食谱”。     算法的构成要素: 我们将解析算法的五大特征:有限性、确定性、可行性、输入和输出。理解这些特征是构建有效算法的基础。    常见的算法范式: 介绍几种基础的算法设计思想,如顺序结构、选择结构(分支)、循环结构。我们将通过生动的例子,展示这些结构如何组合运用,解决各种实际问题。例如,如何通过顺序和循环来计算一系列数字的和,如何通过选择结构来判断一个数是奇数还是偶数。    可视化算法: 采用图示、流程图等直观的方式,将抽象的算法过程具象化。例如,用流程图展示一个简单的搜索算法,用动画演示一个排序算法的执行过程。    算法的效率: 初步介绍算法的时间复杂度和空间复杂度概念,理解为什么在解决相同问题时,有的算法比其他算法更优。我们将通过简单的分析,让读者体会到效率的重要性。  第三章:数据的故事——理解信息的组织与运用  信息是计算思维的载体,理解如何组织和处理信息是关键。本章将介绍数据结构的基本概念,以及它们如何影响算法的效率。     数据结构概览: 介绍几种基础的数据结构,如数组、链表、栈、队列。我们将重点阐述它们的特点、适用场景以及基本操作。例如,数组的随机访问优势,链表的插入删除灵活性。    数据的表示与转换: 探讨不同类型的数据(如整数、浮点数、字符串、布尔值)如何被计算机表示,以及它们之间如何进行转换。    信息的可视化: 介绍如何将数据以图形化的方式呈现,以便更直观地理解数据的分布、趋势和关联。例如,柱状图、折线图、散点图的应用。   第二篇:思维的实践——计算思维在各领域的应用  第四章:科学探索的助手——用计算思维理解世界  本章将展示计算思维在科学研究中的强大应用。     模拟与建模: 如何利用计算思维构建数学模型,模拟复杂的物理、化学、生物过程。例如,模拟天气变化,预测疾病传播,研究基因演化。    数据分析与挖掘: 如何运用计算思维处理海量科学数据,发现隐藏的规律和洞察。例如,分析天文观测数据,识别新的化学物质,研究气候变化的影响。    实验设计与优化: 如何利用计算思维优化实验方案,提高实验效率和准确性。例如,设计高效的药物筛选实验,优化材料合成工艺。  第五章:工程设计的利器——用计算思维解决工程难题  工程领域是计算思维的天然试验场。     系统设计与优化: 如何运用计算思维来设计、分析和优化复杂的工程系统,如交通网络、电力系统、通信系统。    故障诊断与预测: 如何通过分析系统运行数据,运用计算思维预测潜在的故障,并设计有效的排除方案。    自动化与控制: 介绍计算思维如何驱动自动化系统,实现智能控制,提高生产效率和安全性。例如,智能制造、自动驾驶。  第六章:人文社会的透视——用计算思维理解人类行为与社会现象  计算思维并非仅限于理工科领域,它同样能为人文社会科学带来新的视角。     行为建模与分析: 如何运用计算思维构建模型,分析人类行为模式,理解社会互动,如社交网络分析、舆情分析。    历史事件的重构与解读: 如何通过数据分析和模拟,对历史事件进行更深入的解读和重构。    城市规划与管理: 如何运用计算思维优化城市交通流量,提升公共服务效率,预测城市发展趋势。  第七章:商业决策的指南——用计算思维驱动商业创新  在瞬息万变的商业环境中,计算思维是企业保持竞争力的关键。     市场分析与预测: 如何运用计算思维分析市场数据,预测消费者行为,把握市场趋势。    产品设计与优化: 如何通过用户数据分析,迭代优化产品设计,提升用户体验。    供应链管理与优化: 如何运用计算思维优化供应链的各个环节,降低成本,提高效率。    风险评估与管理: 如何运用计算思维进行风险量化和分析,制定有效的风险应对策略。   第三篇:思维的升华——面向未来的计算思维  第八章:从问题到解决方案——构建你的计算思维解决框架  本章将引导读者将前述的理论知识付诸实践。我们将提供一套通用的计算思维解决框架,帮助读者系统地应对各种问题。     问题定义与理解: 如何清晰地界定问题,明确问题的边界和目标。    分解与抽象: 如何将复杂问题拆解,并提取核心要素。    模式识别与假设: 如何在数据和信息中寻找规律,形成初步的解决方案假设。    算法设计与验证: 如何设计具体的步骤来验证假设,并优化解决方案。    评估与迭代: 如何评估解决方案的效果,并进行持续的改进。  第九章:拥抱变化——计算思维与终身学习  计算思维是一种动态的能力,它需要不断地学习和更新。     持续学习的必要性: 强调在快速发展的技术浪潮中,保持学习能力的重要性。    工具与资源的运用: 介绍一些辅助学习和实践计算思维的工具和资源。    跨学科的视野: 鼓励读者将计算思维与其他学科知识相结合,产生新的火花。  第十章:未来的方向——计算思维的无限可能  展望计算思维在未来可能的发展方向。     人工智能与机器学习: 探讨计算思维在这些前沿领域的核心作用。    量子计算与复杂系统: 介绍计算思维在应对更深层次复杂性时的潜力。    计算思维的普及与教育: 讨论如何将计算思维的理念更广泛地传播,培养下一代的问题解决者。  《算法的脉络,逻辑的思辨:开启探索未知世界的钥匙》 是一次思维的启蒙,一次能力的塑造。它将帮助您以一种全新的视角审视世界,用一种更具力量的方式解决问题。无论您是学生、研究人员、工程师、商业人士,还是任何渴望提升自身解决问题能力的人,这本书都将是您不可或缺的伙伴。它将为您打开一扇通往无限可能的大门,让您在这个充满挑战与机遇的时代,游刃有余,创造非凡。