《算法第一步》出版啦!

笔者最近出版了一本书,先给大家亮个相吧:

首先说明一下,这里的“算法”不是人工智能领域的目标函数最优化算法,而是计算机领域的更通常意义上的算法。即,一个接受输入数据,对其进行某些操作并产生输出有限指令序列

此种意义上的算法,是编程的核心

与编程结缘的过往

第一次接触编程是 20 世纪 80 年代:

当时参加的是宋庆龄儿童活动中心举办的一 项编程体验活动,就是照着前面黑板上写的代码在现场的机器上敲一遍,然后运行。

当时到底用的是什么语言已经记不清了,但是当年却花费了好大力气,摸索着敲了一遍完全不清楚 其含义的字符串,然后按照说明运行,最终毫无动静。

虽然请教了巡场的工作人员,但他们也不知道是什么问题,到离场时都没能让程序“跑”起来。

难道,编程就是要用计算机“写” 一堆“密码”吗?如果这堆密码“跑”起来了,又会是怎样的效果呢? 

初次不成功的体验后,直到 20 世纪 90 年代,因为学校开设了计算机课,笔者才再度接触编程:

老师在课堂上讲了一点 Basic 语言知识,编写的是 a+b=c 之类的程序,然后运行得出结果。

笔者由此知道了编程语言,期末考试成绩也不错,但对于编程是什么,计算 机能干什么,还是不明所以。

国外的影视剧中用计算机能做生意,能管理企业,但我们编写 的程序只能做算术题,这是为什么呢? 

算法与计算思维

上大学后,除了编程语言,笔者还学习了“数据结构”、“计算机原理”、“计算机体系结构”、 “编译原理”、“操作系统”和“软件工程”等专业课程,这才逐渐明白了:算法是什么,计算机是如何运行的…… 

后来进入职场,当时十几年程序员,开发过不同类型的实践项目,在工作中不断学习、揣摩,才逐渐领悟到抽象算法和现实问题之间的关系 :软件开发就是通过各种算法实现具体的业务逻辑,把繁杂的过程抽象化、可计算化的过程。 

而软件开发工作背后的思维逻辑——将一个个具体的问题及其解决方案表达成计算机可 以处理的形式,并设计计算的方式,将客观世界解释为一个复杂的信息处理过程——则被称为计算思维

世界上的问题有大有小,所需要的资源有多有少,但抽象到最高层面的方法论可以是一致的。计算思维是各行各业都需要的。

通过对经典算法的研习和实践,掌握“用数值表达现实事物,用运算描述任务目标,再通过算法处理数据找到到达目标的最优路径”的方法。

如此,既是一种有效的思考力训练,又是形成计算思维的过程。由此形成的思维能力是内力,而同步掌握的编程技能则属外功。

综上,就是笔者写作本书的目的。

关于《算法第一步》

本书针对没有任何程序设计基础的读者,同步讲解两方面内容 :使用 Python 语言编写程序 ;基础经典算法。由编程学算法,以算法促编程。

同时,为了帮助读者理解算法,本书还介绍了计算机的基础运行原理。在大学计算机专业课程中,本书所介绍的内容往往被拆分在如下几门课程中:

  • 程序设计语言(如 Python)

  • 数据结构

  • 计算机组成原理和体系结构

本书将几个领域的知识融合在一起,从日常事物开始,介绍软件、程序和算法的基础知识,接着讲解了编程的两大要素:控制流程和数据结构。

由数据结构的限制和实现引出现代电子计算机的基础——二进制和冯·诺依曼结构。

然后进入算法阶段,由简至难,一边讲述算法原理,一边展示它们的编程实现。还介绍了作为算法思维基础的分治和引递归等算法策略。

为了使零基础的读者能够上手编程,本书从操作角度阐述了编程工具的使用和程序编写、运行、调试的过程。

下面放几张实拍图:

感谢专业的设计师帮我改图片,专业的编辑帮我审稿,一起打造出《算法第一步》这个产品。手捧新书,还是挺激动的,希望这本书能够大卖!

想入手的朋友建议趁早,优惠非常划算,点击链接或长按识别下方二维码就可以购买:

京东: 

https://item.jd.com/13034396.html

当当: 

http://product.dangdang.com/29162832.html

京东二维码

当当二维码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值