首页 > 常见问答

怎么学好数据结构?

网友解答:

作为一个写了十几年c/c++的程序员,数据结构对于程序员来讲非常重要,这也是区分学校的理论和实践一个非常关键分水岭,可能在校大学生能看到数据结构书籍有c语言版本有cpp版本,主要针对实现代码而言,本质上差异不大,基本上在学校期间对于数据结构都有一个大概的抵触,很多逻辑串联不一定能看明白,主要原因还是指针问题,想学好数据结构指针搞不透彻很难真的弄明白。

数据结构里面的链表,队列,二叉树等等基础概念都是学习算法的基础,所以很多人在研究算法之前都会先把数据结构弄好,再复杂的算法也是基础的算法组合起来的,有一句话优秀的程序员首先是算法要过关,算法过关的前提是数据结构基本理论要弄清楚。

如何学好数据结构?

1.学好c语言指针,在指针没有彻底了解清楚之前不要想着如何去学,数据机构内在串联全靠指针作用,指针主要难在本身是带地址的变量,再加上指针的指针串联导致很多人误解,指针学习先要理解,在学习指针之前要对计算机的内存结构有个大概了解,特别是一些常见的进制之间的转化以及字节对齐等有个大概的认识,很多人之所以不理解主要计算机思维还不具备,了解完周边的概念再去认识就轻松多了。

2.理解概念,抽象模型要建立起来,比如简单的队列,先进先出模式,在设计数据模型的时候,就需要有一个对头和队尾的概念,数据需要从队尾插入队头出来,基本上三个属性就出来了,一个对头指针,一个队尾指针,一个结构体数值,常见的方法有删除清空队列,有插入队列操作,出队操作,创建初始队列操作等等,这样子抽象数据模型,基本上在大脑上就有一个大概的意思,然后开始设计代码。

怎么学好数据结构?

3.需要变通实践,不能只是纸上谈兵,需要写代码调试变通方法使用,数据结构的组合无穷变着花样写代码,很多人在课堂学的很带劲,只要稍微一变通就完蛋,掌握细节还不够灵活。算法的奥妙就是在于变换,放在数据结构也是这个样子,再厉害的大神也需要掌握基本的数据机构算法,在学好数据结构的前提下可以学习下一本经典的算法书《算法导论》这个是算法的经典书籍。

学习数据机构不要想着有什么技巧或者方法,学习最好的方法是让自己进入状态,把自己调整到最佳的学习状态,方法自然就有了,不要给自己设置什么限制,设置底线只会让自己处在一个围墙之内,学习新东西就是突破自我的一个过程,不要在开始学习的时候给自己附加情绪因素,听说这个东西很难,还没怎么开始就把自己吓得够呛,也不用持续向下进行了,所谓的难易更多是心理上的恐惧而已。

希望能够帮到你。

网友解答:

最近在学习数据结构,虽然大学的时候,每个老师都说数据结构很重要。包括对我们找工作、代码的逻辑性都起决定性作用。但最后还是没有多少人学好了数据结构,包括我。所以代价就是,工作的时候又得抽时间重新来一遍。

入门学习数据结构时应主要是这两个过程:

选择一本合适的书。(初学者应从c语言实现开始学习)编程实现和应用。(不断的刷题、看课程、同时做实验)

1.阅读书籍

一定要看书,一定要看书。数据结构和语言不一样,他不是锻炼我们编程能力,更多时候考察的是我们逻辑问题,也就是一种优化。

若果是纯小白的话:建议去图书馆借一本大学的比较薄一些的教材《数据结构》,然后建议尽量快的往后学习。如果一个知识点实在不懂,就可以跳过,学习到后面与前面知识点联系起来,说不定你会觉得很简单。

如果本来就有基础的话,就可以选择另一本比较经典的教材。这本书里面使用的代码,不是所谓的伪代码,而是正经可以运行的c代码,所以新人如果能照着做一遍下来,收获应该不小。

2.在线视频

数据结构有些问题是比较抽象的问题,所以当我们遇到不懂的部分的时候,如果有视频通过动态的讲解,能更好的帮助我们理解一个知识点。其次,现在网络课程非常发达,其实网上的数据结构的课程也已经足够我们理解、学习和分析了。

这里我放几个关于数据结构的课程:

(1)小甲鱼(https:///video/av2975983?from=search&seid=5449026242951100793)

(2)严蔚敏数据结构视频教程(https:///video/av6239731?from=search&seid=5449026242951100793)

(3)中国大学mooc

每个学期都会定期开课,但是开课的时间不固定,并且有期限。所以一旦跟了哪个老师,就一定要坚持下来,慢慢学完。

3.实现与应用

每学习完一个部分,都要尝试着不看书,写出来。这样子学过的东西才能真正变成自己的东西。这里我推荐一个实验课程,实验不多,但也能锻炼我们的动手能力。

实验楼数据结构实验(https:///courses/20)

原文标题:怎么学好数据结构?,如若转载,请注明出处:https://www.saibowen.com/wenda/23110.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「赛伯温」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。