从数据结构难学谈起

我想先说说为什么起这个名字,林群院士写过一本书作为微积分的入门读物,就叫做,从微积分难学谈起。我个人对数据结构这门课的理解必定比不上林群老先生对微积分的认识,起这个名字只是调侃自己的三脚猫功夫,也有激励自己将数据结构这门课学好,学精之意。

何为数据结构?起初了解到这个名词是在大一刚刚入学的时候,那时请教一个学长如何将大学过的有意义一些,他说要参加一些信息类的竞赛比如ACM什么的。为了在这门竞赛中取得良好的成绩,需要学好两门课,一门是C语言,一门是数据结构。C语言大一上学期就学过了,个人感觉教的东西过于肤浅,本人能力有限难以学到C语言的真谛。数据结构是这学期开的,学了这么长时间,感觉数据结构这们课的许多东西实为鸡肋。食之无味,弃之可惜。就我个人愚见,如果把写一个cpp作为写成一本书的话,数据结构便是本书的各个章节的名字,或者就以本课程的名字其中两字来说,就是本书的结构和框架。一本书的结构再清晰,再完美,也抵不上自己拙劣的笔法,以及思想的肤浅。数据结构用的是伪代码,而不是一种语言,伪代码介于计算机语言和高级语言之间。你对计算机说人类语言,他听不懂,你说伪代码,他还是听不懂。人类语言还好,你和其他人说你想编一个什么程序,别人还能听懂,你跟一个人说伪代码,他没学过数据结构可能他都听不懂你想说什么。鸡肋之处,便在于此。

当然存在的即是合理的,一门课程的存在当然有他的道理。就我个人在这几个月学习当中,我觉得这门课确实给我提供了不少的思维训练,这毋庸置疑是非常重要的。在当今的知识爆炸时代,思维的重要性在此不再赘述。个人拙见,这是目前数据结构这门课给我带来的唯一益处。

数据结构为何难学?首先数据结构对我们来说是一种新鲜事物。我们本学期的其他一些课,在高中都是有基础的,上手也相对容易。大物,英语,高数弃之不谈,电路的大部分内容也是基于高中的一些知识在进行扩展的。而数据结构的唯一基础便是C语言了。掐指一算,C语言不过学了十几周,三十几节课。这地基显然是不够结实的。数据结构的知识过于复杂,知识点概念过多。有队,栈,树等,旗下在划分为好几个小层面。其中哪一个环节落下,对以后的知识点的理解便产生了不便。畏难情绪一上来,便使问题积少成多,达到最后难以解决的程度了。

数据结构这门课分为两部分,一部分为理论的学习,一部分为上机实践。我觉得这个设计是十分合理的。汪友生如他的名字一样,真正意义上把学生看成自己的朋友,每次上课的课堂气氛都出奇的好。课堂上汪友生老师循循善诱,和蔼可亲,讲授内容深入浅出,每次听老师的讲课都觉得受益匪浅,身为学生的我十分佩服。上机实践上的几位研究生老师对我们也提供了不少的帮助,解决了许多问题。但我觉得,上机实践的形式可以改一下,不以我们自己编程序为主,而已老师带着编程序为主。我的C语言学的不是太好,但总归不至于是最差,应该位于班级中上水平。我个人做上机实践留下的作业时,感觉十分吃力。有一些程序师直接在网上下一份,看懂了直接交上去的。这很难否定确实是一个提升的过程,但在网上找代码的时间费得可能比看代码的时间还要长,依我所见,不如直接老师讲一下自己的代码,也就是老师给我们的例子。讲解完之后,再让我们完成实验的基本内容让我们做到举一反三,我觉得这不会使我们感到难以上手。也利于我们培养编程的热情。

写到这里,这篇文章也就接近尾声了。一些指责数据结构这门课的语言很有可能是我才艺不精,难以体会数据局结构之博大精深所造成的。很有可能有很多贻笑大方之处,还希望老师斧正。如有冒犯之处,希望老师见谅。

v

我想先说说为什么起这个名字,林群院士写过一本书作为微积分的入门读物,就叫做,从微积分难学谈起。我个人对数据结构这门课的理解必定比不上林群老先生对微积分的认识,起这个名字只是调侃自己的三脚猫功夫,也有激励自己将数据结构这门课学好,学精之意。

何为数据结构?起初了解到这个名词是在大一刚刚入学的时候,那时请教一个学长如何将大学过的有意义一些,他说要参加一些信息类的竞赛比如ACM什么的。为了在这门竞赛中取得良好的成绩,需要学好两门课,一门是C语言,一门是数据结构。C语言大一上学期就学过了,个人感觉教的东西过于肤浅,本人能力有限难以学到C语言的真谛。数据结构是这学期开的,学了这么长时间,感觉数据结构这们课的许多东西实为鸡肋。食之无味,弃之可惜。就我个人愚见,如果把写一个cpp作为写成一本书的话,数据结构便是本书的各个章节的名字,或者就以本课程的名字其中两字来说,就是本书的结构和框架。一本书的结构再清晰,再完美,也抵不上自己拙劣的笔法,以及思想的肤浅。数据结构用的是伪代码,而不是一种语言,伪代码介于计算机语言和高级语言之间。你对计算机说人类语言,他听不懂,你说伪代码,他还是听不懂。人类语言还好,你和其他人说你想编一个什么程序,别人还能听懂,你跟一个人说伪代码,他没学过数据结构可能他都听不懂你想说什么。鸡肋之处,便在于此。

当然存在的即是合理的,一门课程的存在当然有他的道理。就我个人在这几个月学习当中,我觉得这门课确实给我提供了不少的思维训练,这毋庸置疑是非常重要的。在当今的知识爆炸时代,思维的重要性在此不再赘述。个人拙见,这是目前数据结构这门课给我带来的唯一益处。

数据结构为何难学?首先数据结构对我们来说是一种新鲜事物。我们本学期的其他一些课,在高中都是有基础的,上手也相对容易。大物,英语,高数弃之不谈,电路的大部分内容也是基于高中的一些知识在进行扩展的。而数据结构的唯一基础便是C语言了。掐指一算,C语言不过学了十几周,三十几节课。这地基显然是不够结实的。数据结构的知识过于复杂,知识点概念过多。有队,栈,树等,旗下在划分为好几个小层面。其中哪一个环节落下,对以后的知识点的理解便产生了不便。畏难情绪一上来,便使问题积少成多,达到最后难以解决的程度了。

数据结构这门课分为两部分,一部分为理论的学习,一部分为上机实践。我觉得这个设计是十分合理的。汪友生如他的名字一样,真正意义上把学生看成自己的朋友,每次上课的课堂气氛都出奇的好。课堂上老师循循善诱,和蔼可亲,讲授内容深入浅出,每次听老师的讲课都觉得受益匪浅,身为学生的我十分佩服。上机实践上的几位研究生老师对我们也提供了不少的帮助,解决了许多问题。但我觉得,上机实践的形式可以改一下,不以我们自己编程序为主,而已老师带着编程序为主。我的C语言学的不是太好,但总归不至于是最差,应该位于班级中上水平。我个人做上机实践留下的作业时,感觉十分吃力。有一些程序师直接在网上下一份,看懂了直接交上去的。这很难否定确实是一个提升的过程,但在网上找代码的时间费得可能比看代码的时间还要长,依我所见,不如直接老师讲一下自己的代码,也就是老师给我们的例子。讲解完之后,再让我们完成实验的基本内容让我们做到举一反三,我觉得这不会使我们感到难以上手。也利于我们培养编程的热情。

写到这里,这篇文章也就接近尾声了。一些指责数据结构这门课的语言很有可能是我才艺不精,难以体会数据局结构之博大精深所造成的。很有可能有很多贻笑大方之处,还希望老师斧正。如有冒犯之处,希望老师见谅。

你可能感兴趣的:(数据结构,吐槽)