Bootstrap

数据结构学习有感

杂谈

这两天已经开始看数据结构了,尽管c语言还是懵懵懂懂。我学习的课本是 严蔚敏老师的《数据结构》(c语言版)。其实我数买了一段时间,但是一直摸有开始,原因很简单,看不懂结构体。经常看到一大堆莫名其妙的引用 访问什么的,瞬间头大。所以我就抽时间去吧结构体学了一下。 学完结构体我寻思着,可以看看看数据结构了吧,我还是太年轻了。
数据结构 主要是数据和数据之间的关系 以及存储形式(我目前的认知)。单说书上的结构,概念其实很简单,数据之间的关系一讲其实也就全都明白了。但是,我觉得这本书确实有点难学。因为书上有很多算法知识(我的感觉)。我们把数据 和数据之间的关系用特定的方式存储进来,要实现某种目标,就必须用某种方法来对这些数据进行有效的推导、计算、剖析等。就拿一个很简单的 表达式求值来说。要用栈结构,这个我知道,但是如何把表达式存入,又如何取出,最后又如何计算呢?他并不是无脑的读一个、压一个。书上的例子卸载哪里,我却看不懂,最后去问百度爸爸,才知道中间涉及到一个中缀转后缀的过程。还有一道书上的字符串模式匹配的例子。

那个next数组的求法,以及意义很简单,我可以通过手工算出来,无非就是字符串前缀模式和后缀模式相同时最大字符串长。

但是如何通过编程让机器去运算的。 我逐渐发现,一旦将某些简单问题的规模扩大化,虽然原始的解决方法同样适用,但是从计算成本上来就显得并不合适。我们就需要通过某种具有数学归纳思想的解决办法,将同种问题不同规模的解决办法归纳成一个模板。最后只要套用模板,由计算机去代替人力运算,就能得到结果。

这个模板就是我所理解的泛型

;