当前位置:首页 > 科学课件 > 正文内容

我现在没学完C语言,但是学校已经开了数据结构课程,感觉像听天书一样,如何更好地理解数据结构?

zhao_admin1年前 (2022-05-21)科学课件36

第一,我觉得作为一个大学生,自学能力很强。对于C语言没有学完,可以自己抽时间认真学会。不会的可以到图书馆查阅资料,或者上网也可以自学。现在网络平台有好多优质资源,你可以试试。

第二,数据结构的算法比较抽象,必须认真研究。他是编程序的依据,这与C语言没有必然的联系。只是用C语言可以实现一些算法。也可以用别的语言实现。

第三,要对自己有信心。不会的问题可以和老师,同学交流。既然选择好专业,就应该深入研究。

这就是我的一些看法,希望能够帮到你!

c语言没有学好,如何学习数据结构?

题主应该先厘清两个概念:编程语言和数据结构。

数据结构的本质是一种思维,它的目标是将现实世界中各种各样的数据放入到内存中,在内存中操作这些数据,并尽可能优化这些存储方案和操作方法。

编程语言是将数据结构这种思维实现出来的一种工具。

而学习数据结构最重要的就是边学边做,只学习书上的思维方法不用编程语言写出来的话,效率将非常低下,就好比学习数据只看例题不做题,其实往往收获甚微。既然要边学习边实践,那么在学习数据结构之前,掌握一些基础的编程知识是很有必要的。

这里把个人的一些经验分享给题主。

零、快速学习基础C语言

前面说道,在学习数据结构之前,应该掌握一定的编程知识,但是不必精通某个语言,知道基本语法即可。题主可以去中国大学MOOC,或者网易云课堂上,找一个自己喜欢的课程,跟着视频把基础的语言过一遍,这里推荐浙江大学翁凯老师的C语言课程。链接:

一、记住算法思想(是什么)

这一部分的目标是,你能给人说明白,什么是”堆栈“,什么是”平衡二叉树“等。题主应当形成长久记忆,存储到你的”硬盘“里,而不仅仅在学习的时候过了一遍你的”内存“。

第一步,记住数据结构最直观的东西。这种直观的记忆会在不知不觉中就完成,但为了更好的记住,还需去刻意记忆和偶尔的复习。

第二步,记忆该数据结构的定义与性质与特点等。例如,学习哈夫曼树的时候。哈夫曼树的定义:WPL(带权路径长度)最小的二叉树;哈夫曼树的特点:(1)没有度为1的结点(2)n个叶子结点的哈夫曼树共有2n-1个结点(3)哈夫曼树的任意非叶节点的左右子树交换后仍是哈夫曼树。关于”数据结构“,需要记忆的内容也需要自己在其中慢慢领悟。

二、进行大量相关编程练习,用编程语言去实现某一数据结构上的算法(怎么办)

必须承认,理解一个算法很容易,很容易在纸上去模拟一个算法的实现过程。但,具体实现,则是另一回事。一定得先自己思考,然后再去看书中给的编程语言实现。在我看来,这一过程已经不属于“数据结构与算法”的内容了。而是你综合素质的体现,如何真正理解问题和用编程技巧实现,很考验自己。

三、”记住“特定情景下,利用某一特定的数据结构,去解决问题 (为什么+怎么办)

每介绍一种数据结构,浙大数据结构与算法的MOOC课程都会有一个实际问题来作为“引子”,回答了“这种数据结构为什么会出现”。有的是为了实现特定的操作,有的是为了时间和空间上(大部分考虑的是时间复杂性)效率的更高。这些东西,我们也须理解记忆。

最终,希望题主能自己根据自己的理解,针对某个问题,熟练的给出下图这样的解决方案,我认为就算是入门了。

扫描二维码推送至手机访问。

版权声明:本文由PPT写作技巧发布,如需转载请注明出处。

本文链接:http://www.ppt3000.com/post/62493.html

分享给朋友:

相关文章