认识编程以Python语言讲透编程的本质

认识编程以Python语言讲透编程的本质
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2021-09
版次: 1
ISBN: 9787111687610
定价: 89.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 224页
4人买过
  • 本书是关于计算机编程的科普书,它包含了计算机软件的发展历史、原理、数据结构,以及基本算法等内容,并进一步探讨了动态规划、概率统计和神经网络等进阶知识。作者通过轻松的笔调,由浅入深地对编程的本质进行了直观、具体的讨论。虽然书中的例子都是用Python编写的,但是介绍的编程方法和思想却是通用的。书中的实例都有对应的完整代码实现,涉及初等数学、数据结构、排序与查找、数理统计、动态规划及神经网络等多个方面。这些实例把编程原理讲解和程序代码结合在一起,从而让概念更加容易理解。 

    本书适合学习Python,以及编程的读者阅读。 

    郭屹:中国Java研发工程师鼻祖之一,JDBC Driver、Minis开发者,Norming软件国际CTO。曾在Sun Microsystems公司Java研发中心担任J2EE研发工程师。 目 录 

    前言 

    第1章 程序、数字与进制1 

    11 概述1 

    12 何谓程序?1 

    13 计算机只有两根手指?3 

    131 为什么偏偏是二进制?3 

    132 计算机与十进制4 

    14 Python怎么掰手指?4 

    15 Python语言入门5 

    第2章 计算机内部探秘8 

    21 计算机本来就叫计算机8 

    22 化计算为加法9 

    221 从小学的1+1开始9 

    222 计算机的移位操作10 

    223 不单单是乘除法实现12 

    23 进制转换及数据存储14 

    231 进制的转换14 

    232 计算机如何存储数据?15 

    233 形象一点来看晶体管16 

    234 抽象一点来看数据存储逻辑19 

    235 字符的编号20 

    24 从加法到芯片20 

    241 万法归加法20 

    242 自己做个加法器21 

    25 101页报告改变了世界23 

    251 又笨又快的图灵机23 

    252 从101页报告到极简计算机25 

    253 跟着“极简”执行代码26 

    第3章 编程基础概念31 

    31 计算机的外包装31 

    32 计算机的高级语言32 

    33 Goto语句有害33 

    34 说说数据结构34 

    35 面向对象编程36 

    351 什么是面向对象编程?36 

    352 Python的混合编程36 

    36 进程与线程37 

    37 递推与递归38 

    38 关于分治39 

    39 算法及性能分析39 

    第4章 数学与编程是一家41 

    41 什么是函数?41 

    411 先算一个阶乘41 

    412 往前走一步―求平方根43 

    413 再往前走一步―求阶乘的 

    平方根46 

    414 Python常见的库49 

    42 面向对象编程,再来求一求 

    素数50 

    421 捋清思路50 

    422 过程执行52 

    423 验证哥德巴赫猜想53 

    424 验证与证明55 

    43 递归,还记得斐波那契数列吗?55 

    431 斐波那契数列55 

    432 生活中的斐波那契数列56 

    433 用递归重写阶乘57 

    44 深入递归,汉诺塔问题58 

    441 汉诺塔传说58 

    442 塔也是递归,递归也是树59 

    45 Python解方程61 

    451 二次方程61 

    452 高次方程63 

    453 Python解同余方程64 

    46 Python用刘徽割圆术求面积66 

    461 刘徽割圆术求面积66 

    462 进入递推,交给Python68 

    47 跟着Ada计算伯努利数 

    (向Ada致敬)70 

    471 分析计算伯努利数70 

    472 为什么要向Ada致以敬意?72 

    第5章 字符处理73 

    51 先来谈谈字符编码73 

    511 首先是Unicode73 

    512 有了Unicode还不够74 

    52 Python如何操作字符串75 

    521 丰富的字符串操作75 

    522 开始造个轮子76 

    53 凯撒密码(Caesar cipher)78 

    54 字符串查找(KMP算法)80 

    541 从最笨的方法开始80 

    542 聪明一点的方法83 

    55 Python如何操作文件88 

    551 操作文件的方式88 

    552 简单地演练一下88 

    56 JSON是谁90 

    561 JSON对象90 

    562 解析JSON91 

    563 解析复杂JSON93 

    57 关于正则表达式95 

    571 正则表达式的功用95 

    572 正则解释器97 

    573 正则表达式的应用99 

    第6章 数据结构103 

    61 Python的序列103 

    611 ArrayList和LinkedList操作103 

    612 首先是ArrayList104 

    613 接下来是LinkedList107 

    62 关于栈―先进后出112 

    63 括号如何匹配114 

    64 数学表达式解析115 

    641 计算机读取数学表达式115 

    642 获取操作数与操作符序列116 

    643 开始计算119 

    65 关于HashMap121 

    651 Python中的字典操作121 

    652 手动做HashMap122 

    653 增删改查123 

    654 HashMap遍历127 

    655 成果验收128 

    66 树之遍历130 

    661 先构建一棵二叉树130 

    662 再遍历二叉树131 

    663 换一种方式遍历133 

    67 树之构建和查找134 

    671 还是先构建树134 

    672 然后查找特定元素136 

    673 让树更加泛用137 

    68 平衡树(AVL算法)138 

    681 平衡二叉树138 

    682 平衡二叉树增加节点140 

    683 不平衡就旋转142 

    69 图的表示146 

    610 拓扑排序148 

    611 最短路径(Dijkstra算法)151 

    612 关键路径CP154 

    第7章 查找与排序160 

    71 查字典―冒泡排序160 

    72 每次吃最甜的葡萄―选择 

    排序161 

    73 抓牌看牌―插入排序162 

    731 先来描述一下场景162 

    732 进入Python162 

    74 向左向右看齐―快速排序164 

    741 先来分而治之164 

    742 开始编写快速排序程序166 

    75 先分叉再排序―堆排序167 

    751 先理解堆排序思路167 

    752 Python的时间169 

    76 不会淘汰的季后赛―归并 

    排序170 

    77 以上排序的比较172 

    78 插入排序20―希尔排序173 

    79 桶排序―计数排序174 

    710 二分查找(试着做一个 

    字典)176 

    第8章 动态规划182 

    81 游戏币贪心算法―DP导入182 

    811 游戏币的动态规划182 

    812 随机数字三角的动态规划184 

    82 序列的最大公约数―LCS186 

    83 基因序列比对(Levenshtein 

    算法)187 

    84 背包问题192 

    841 背包问题解析192 

    842 开始变成程序194 

    第9章 数理统计与人工智能196 

    91 人均收入统计196 

    911 先从数据出发196 

    912 进入程序世界198 

    913 来看点经济学(基尼系数)199 

    92 用贝叶斯公式智能诊断201 

    921 先来谈谈概率201 

    922 “智能医生”的训练202 

    93 预
  • 内容简介:
    本书是关于计算机编程的科普书,它包含了计算机软件的发展历史、原理、数据结构,以及基本算法等内容,并进一步探讨了动态规划、概率统计和神经网络等进阶知识。作者通过轻松的笔调,由浅入深地对编程的本质进行了直观、具体的讨论。虽然书中的例子都是用Python编写的,但是介绍的编程方法和思想却是通用的。书中的实例都有对应的完整代码实现,涉及初等数学、数据结构、排序与查找、数理统计、动态规划及神经网络等多个方面。这些实例把编程原理讲解和程序代码结合在一起,从而让概念更加容易理解。 

    本书适合学习Python,以及编程的读者阅读。 

  • 作者简介:
    郭屹:中国Java研发工程师鼻祖之一,JDBC Driver、Minis开发者,Norming软件国际CTO。曾在Sun Microsystems公司Java研发中心担任J2EE研发工程师。
  • 目录:
    目 录 

    前言 

    第1章 程序、数字与进制1 

    11 概述1 

    12 何谓程序?1 

    13 计算机只有两根手指?3 

    131 为什么偏偏是二进制?3 

    132 计算机与十进制4 

    14 Python怎么掰手指?4 

    15 Python语言入门5 

    第2章 计算机内部探秘8 

    21 计算机本来就叫计算机8 

    22 化计算为加法9 

    221 从小学的1+1开始9 

    222 计算机的移位操作10 

    223 不单单是乘除法实现12 

    23 进制转换及数据存储14 

    231 进制的转换14 

    232 计算机如何存储数据?15 

    233 形象一点来看晶体管16 

    234 抽象一点来看数据存储逻辑19 

    235 字符的编号20 

    24 从加法到芯片20 

    241 万法归加法20 

    242 自己做个加法器21 

    25 101页报告改变了世界23 

    251 又笨又快的图灵机23 

    252 从101页报告到极简计算机25 

    253 跟着“极简”执行代码26 

    第3章 编程基础概念31 

    31 计算机的外包装31 

    32 计算机的高级语言32 

    33 Goto语句有害33 

    34 说说数据结构34 

    35 面向对象编程36 

    351 什么是面向对象编程?36 

    352 Python的混合编程36 

    36 进程与线程37 

    37 递推与递归38 

    38 关于分治39 

    39 算法及性能分析39 

    第4章 数学与编程是一家41 

    41 什么是函数?41 

    411 先算一个阶乘41 

    412 往前走一步―求平方根43 

    413 再往前走一步―求阶乘的 

    平方根46 

    414 Python常见的库49 

    42 面向对象编程,再来求一求 

    素数50 

    421 捋清思路50 

    422 过程执行52 

    423 验证哥德巴赫猜想53 

    424 验证与证明55 

    43 递归,还记得斐波那契数列吗?55 

    431 斐波那契数列55 

    432 生活中的斐波那契数列56 

    433 用递归重写阶乘57 

    44 深入递归,汉诺塔问题58 

    441 汉诺塔传说58 

    442 塔也是递归,递归也是树59 

    45 Python解方程61 

    451 二次方程61 

    452 高次方程63 

    453 Python解同余方程64 

    46 Python用刘徽割圆术求面积66 

    461 刘徽割圆术求面积66 

    462 进入递推,交给Python68 

    47 跟着Ada计算伯努利数 

    (向Ada致敬)70 

    471 分析计算伯努利数70 

    472 为什么要向Ada致以敬意?72 

    第5章 字符处理73 

    51 先来谈谈字符编码73 

    511 首先是Unicode73 

    512 有了Unicode还不够74 

    52 Python如何操作字符串75 

    521 丰富的字符串操作75 

    522 开始造个轮子76 

    53 凯撒密码(Caesar cipher)78 

    54 字符串查找(KMP算法)80 

    541 从最笨的方法开始80 

    542 聪明一点的方法83 

    55 Python如何操作文件88 

    551 操作文件的方式88 

    552 简单地演练一下88 

    56 JSON是谁90 

    561 JSON对象90 

    562 解析JSON91 

    563 解析复杂JSON93 

    57 关于正则表达式95 

    571 正则表达式的功用95 

    572 正则解释器97 

    573 正则表达式的应用99 

    第6章 数据结构103 

    61 Python的序列103 

    611 ArrayList和LinkedList操作103 

    612 首先是ArrayList104 

    613 接下来是LinkedList107 

    62 关于栈―先进后出112 

    63 括号如何匹配114 

    64 数学表达式解析115 

    641 计算机读取数学表达式115 

    642 获取操作数与操作符序列116 

    643 开始计算119 

    65 关于HashMap121 

    651 Python中的字典操作121 

    652 手动做HashMap122 

    653 增删改查123 

    654 HashMap遍历127 

    655 成果验收128 

    66 树之遍历130 

    661 先构建一棵二叉树130 

    662 再遍历二叉树131 

    663 换一种方式遍历133 

    67 树之构建和查找134 

    671 还是先构建树134 

    672 然后查找特定元素136 

    673 让树更加泛用137 

    68 平衡树(AVL算法)138 

    681 平衡二叉树138 

    682 平衡二叉树增加节点140 

    683 不平衡就旋转142 

    69 图的表示146 

    610 拓扑排序148 

    611 最短路径(Dijkstra算法)151 

    612 关键路径CP154 

    第7章 查找与排序160 

    71 查字典―冒泡排序160 

    72 每次吃最甜的葡萄―选择 

    排序161 

    73 抓牌看牌―插入排序162 

    731 先来描述一下场景162 

    732 进入Python162 

    74 向左向右看齐―快速排序164 

    741 先来分而治之164 

    742 开始编写快速排序程序166 

    75 先分叉再排序―堆排序167 

    751 先理解堆排序思路167 

    752 Python的时间169 

    76 不会淘汰的季后赛―归并 

    排序170 

    77 以上排序的比较172 

    78 插入排序20―希尔排序173 

    79 桶排序―计数排序174 

    710 二分查找(试着做一个 

    字典)176 

    第8章 动态规划182 

    81 游戏币贪心算法―DP导入182 

    811 游戏币的动态规划182 

    812 随机数字三角的动态规划184 

    82 序列的最大公约数―LCS186 

    83 基因序列比对(Levenshtein 

    算法)187 

    84 背包问题192 

    841 背包问题解析192 

    842 开始变成程序194 

    第9章 数理统计与人工智能196 

    91 人均收入统计196 

    911 先从数据出发196 

    912 进入程序世界198 

    913 来看点经济学(基尼系数)199 

    92 用贝叶斯公式智能诊断201 

    921 先来谈谈概率201 

    922 “智能医生”的训练202 

    93 预
查看详情
12
相关图书 / 更多
认识编程以Python语言讲透编程的本质
认识数学3 席南华著
席南华
认识编程以Python语言讲透编程的本质
认识期货
叶春和
认识编程以Python语言讲透编程的本质
认识人参 科学使用人参
张伯礼 著
认识编程以Python语言讲透编程的本质
认识电竞
[加拿大]威廉·科利斯 后浪
认识编程以Python语言讲透编程的本质
认识数学1
席南华
认识编程以Python语言讲透编程的本质
认识你的情绪朋友 给孩子的情绪管理入门书 5种基本情绪变身亲密朋友
[比利时]马里安·杰拉特斯
认识编程以Python语言讲透编程的本质
认识你自己:从古希腊到当代的哲学史考察
乌苏拉·伦茨
认识编程以Python语言讲透编程的本质
认识我的人慢慢忘了我(艺文志?心声。黄灿然选编,撰写万字编后记推荐)
周慧
认识编程以Python语言讲透编程的本质
认识中国湖
薛滨 郭娅 龚伊 陈怡嘉
认识编程以Python语言讲透编程的本质
认识数学2 席南华著
席南华
认识编程以Python语言讲透编程的本质
认识海洋·中国海洋意识教育推荐阅读丛书海洋宝库
盖广生 总主编
认识编程以Python语言讲透编程的本质
认识流动,认识流体力学——从时间权重到相似理论
周晓泉 周文桐