《数据结构与算法分析--c语言描述》之第一章:引论

本文介绍了作者为何决定深入学习《数据结构与算法分析--c语言描述》的原因,强调了数据结构和算法对于编程的重要性。书中涵盖了算法设计、数学知识复习、递归的基本法则等内容,并通过练习解释了如何使用模运算求解2^100 (mod 5)的问题。
摘要由CSDN通过智能技术生成

课本封面

学习《数据结构》与《算法设计与分析》这两门课程已经有一段时间了。但在设计编写代码时,还是不能做到游刃有余。怎么说呢?平时在编写代码的时候不会去考虑很多。诸如:是否要用哪个数据结构?是否可以用哪个算法?之类的问题很少会在脑海浮现。原因是:当想到用哪个数据结构或者哪个算法时,往往发现实现起来很麻烦,很难,总得花不少时间去重翻课本,对自己的要求就是写出能工作的程序就行了。久而久之也就对这样的想法敬而远之了。这样编程写的代码无法突破顺序,简单的模式,不仅如此,代码没有使用很好的算法,还有一个致命的缺点:效率低下。除非特意去花时间突破这些瓶颈。我所说的游刃有余是:编写代码时,无意识地,潜意识地使用高级数据结构,使用高效算法。无需去特意要求自己,对于自己,这样的编写代码不是一种要求,而是一种习惯。使用好的数据结构,使用好的算法就是理所当然的,就像吃饭,有谁不吃饭的呢?有谁编程不使用好的数据结构,好的算法呢?还有一个原因,长期以来的学习,我深深的意识到:数据结构与算法设计好比程序员的内功。掌握了内功心法,学什么东西都快,都跟容易。就好比张无忌练就乾坤大挪移内功心法,龙爪手片刻精通,就好比周星驰韦小宝得了神龙教内功,一跳冲天。

  基于以上原因,我买了《数据结构与算法分析--c语言描述》这本书,决定好好修炼我的内功。内功修炼,不比套路,需要很高的悟性,需要很有耐心,会让你很痛苦,会花掉你很多时间。当绝不能半途而废。

 

1.1 本书讨论的内容

生活中的问题可以用很多种算法来解决,小规模的问题上,看不出不同算法孰优孰劣。大规模的问题,好的算法体现的优势让你惊叹不已,坏的算法几天的计算才能得出的结果,用好的算法有时几秒中就可以出来,甚至时间更短。设计算法,掌握好的算法,辨别算法的好坏,就是接下来要学习的。

1.2 数学知识复习

指数

 指数1

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值