怎么样学好数据结构和怎么样理解数据结构????????

wld1993 2011-10-11 08:22:13
本人现在已经大二了,大一时也学完了C++和C语言。
这个学期学数据结构,已经学了四章,脑子里还是糊里糊涂的,不明白数据结构到底是用来干什么的,C或C++里不就已经可以插入数据,存储数据么?建个数组,运用指针不就可以很方便么?为什么还要自己写一大串代码插入删除数据。真的有很多疑问。。。怎么样才能够掌握它,我知道数据结构很重要,所以请各位老师告诉我几点学习它的建议。。。
...全文
168 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Indifferent_Wind 2011-10-12
  • 打赏
  • 举报
回复
提高程序运行时的时间和空间效率。
测试NULL 2011-10-12
  • 打赏
  • 举报
回复

数据结构是计算机专业最重要最基础的一门课,对于有过编程经验的人,结合自己的编程体会去悟它的思想;对于初学者,捡一种自己最熟悉的语言去分析它总之千万不要陷在语言的

细节上要高屋建瓴的去领会数据结构的思想。而且我觉得随着编程经历的丰富对它的体会越深入,最初接触是对一些思想可能只是生硬的记忆,随着学习的深入逐渐领悟了很多。奉劝

孔孔不要灰心,对于实在弄不懂的东东,就先记住,应付过考试再说
不同意楼上所有人的说法,因为他们似乎不太重视数据结构。
首先回答你的问题,我认为学习数据结构之前应该学习离散数学和线性代数。这两门课中就有一些数据结构的算法,比如哈希函数、最短路进算法等等,此外还有一些运算的技巧,比

如矩阵的运算技巧和存储技巧。当你对离散和线性代数有一定基础后,接触数据结构课程就比较容易了。我们当初学习的是高等教育出版社的用C语言描述的数据结构,基本上前几章

在C中讲过,但必须要仔细听,因为他渗透了更多的、更有变化的算法,比如链表的各种操作和类型,尤其注意的是双向循环链表、十字链表。此外队列要注意循环队列。第二个重点

就是树,首先要知道书的存储结构和逻辑结构是怎样的,然后要重点了解树的各种遍历,因为不同遍历形成不同种(前,中,后)缀表达式。此外哈夫曼树的建立,哈夫曼编码解码也

是很重要的,因为他是当今数据压缩的最经典的算法之一。然后就是排序和查找算法,大多数用到树的知识,一定要记住排序和查找算法,因为他几乎是程序的灵魂模块。各算法的事

件复杂度和稳定性的比较也要当作重点。总之学习数据结构不要看他的用什么语言描述,应该看他的实质,太在乎C中的指针的操作只会影响你的学习。


至于书籍吗,我个人推荐一本入门书 《数据结构C语言版》铁道出版社

有篇文章你可以看看 http://www.doc88.com/p-45423315229.html

这里也有个帖子,你看看http://topic.csdn.net/u/20110131/09/90376388-1cf0-4661-b7fb-9ce08148b68d.html
dragonzht 2011-10-11
  • 打赏
  • 举报
回复
数组、链表、Hash表、二叉树、堆栈、B树、邻接矩阵等等,都是最基本的工具
将它们组合在一起能得到复杂的数据结构
数据结构是为算法服务的,为具体应用服务的,脱离应用学习数据结构是枯燥的,没法深入理解的
要给自己出个具体的应用,看看用什么样的数据结构最好,好理解、占用内存少、算法效率高

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧