请问数据结构该怎么学啊?

2024-12-16 13:13:53
推荐回答(2个)
回答1:

先说说什么是数据结构:
数据结构是在整个计算机科学与技术领域上广泛被使用的术语。它用来反映一个数据的内部构成,即一个数据由那些成分数据构成,以什么方式构成,呈什么结构。数据结构有逻辑上的数据结构和物理上的数据结构之分。逻辑上的数据结构反映成分数据之间的逻辑关系,而物理上的数据结构反映成分数据在计算机内部的存储安排。数据结构是数据存在的形式。 数据结构是信息的一种组织方式,其目的是为了提高算法的效率,它通常与一组算法的集合相对应,通过这组算法集合可以对数据结构中的数据进行某种操作。
数据结构课程的主要目的是介绍一些常用的数据结构,阐明数据结构内在的逻辑关系,讨论它们在计算机中的存储表示,并结合各种数据结构,讨论对它们实行的各种运算的实现算法。很多算法实际上是对某种数据结构施行的一种变换,研究算法也就是研究在实施变换过程中数据结构的动态性质。
如果真想学好编程,这门课程是非常有用的。想学好它,主要是掌握C语言中的指针的用法,要知道指针的具体含义,以及它在程序运行时的移动方向。这一点只能靠多练习编程来实现,没有捷径可走,另外需要你有逻辑思维方面的天赋,并不是所有人都适合当程序员的。举个简单的例子,比如链表,在内存中分配一个空间,这个空间被分成两部分,一部分用来存放数据,一部分用来存放一个指针,这个指针是指向下一个数据的,这构成了一个存储单元。同样下一个单元也有两部分,一部分是数据,一部分是指针,指向另一个数据地址。许多这样的单元存储在内存中就构成了链表。你如果能非常好的理解这个存储过程,就没什么会不明白了。剩下的就是如何用C去实现它了,这需要多练习。其它的堆栈,树,无非都是如此。
下面是常见的疑问:
问:我对此题产有疑义!将F=1+1/2+1/3+……+1/n用递归函数编程!

徐孝凯:是递归问题,请仔细琢磨。

问:数据结构太不好学了

殷人昆:数据结构需要下工夫,必须作题,这与其他课程的规律都一样。重点把各种结构的定义、特点,存储表示搞清楚,对每一种结构的实现方法有所了解,考试时的基本分数就有了。书上的算法的思路要掌握,它给出解决问题的方法。

问:数据结构我已经考了两次了,还是没有过关。不知道有没有什么窍门?请有心得的朋友指点一下,非常感激。

殷人昆:可能你过去程序设计的基础没有打好,所以继续学习就会发生困难。现在考试的重点在基本概念的理解和基本结构的构造和分析,对算法编写要求的比重不太高。如果基本概念和各种数据结构的基本特点也不清楚,考试必然不合格。努力把书本看一遍,该记的记,该背的背。考试的范围比较大,不好划重点。

问:我们是贵州电大贵阳分校的几位学生,我们今年已是第五次考数据结构了,但我们已有2年没有得到中央电大的《期末复习指导》了,不知现在的考试要求是什么,若能为我们提供该资料,我们将万分感谢!

徐孝凯:请到该课程网页上查找。

问:数据结构的考试重点在那?

徐孝凯:请注意以下复习:

1.该课程期末复习指导

2.该课程形成性作业

3.该课程实验教材后面附录中的综合练习题

4.该课程中央电大网页上发表的各种题型的综合练习题。

问:程序步数的计算要注意些什么?

殷人昆:注意掌握每一类型语句的基本程序步数,再学会统计程序中各个语句的执行频度,就可以计算出程序的总程序步数。

问:稀疏矩阵一般用在什么情况下?

殷人昆:稀疏矩阵主要用在工程和科学计算中,例如,在做大坝的结构计算时,用有限元法将整个大坝划分成三角网格,在每一个节点上列出方程。经过一系列变换,最后形成一个大型稀疏系数线性方程组,其系数矩阵即为稀疏矩阵。此外,在解电路问题也会遇到稀疏矩阵。因此,稀疏矩阵的表示和计算有其工程背景。

tlddcl:教课书上P220页习题六一题6小题由权值分别为3,8,6,2,5的叶子结点生成一棵哈夫曼树,它的带权路径长度为( )A.24 B.48 C.72 D.51

我计算应为55而中央电大期未复习中同样题选的D.53 不知应为多少

贺桂英:经过我的计算,这棵哈夫曼树的带权路径长度应为:53

可能是选择题的答案印刷有误!

tlddcl:能将运算式子写出来

贺桂英:ASL=(2+3)*3+(5+6+8)*2=53

徐孝凯:谢谢贺老师回答。

贺桂英:构造的哈夫曼树在附件中!

ASL=(2+3)*3+(5+6+8)*2=53

tlddcl:按你的计算式子5,6,8三个叶子结点应在一个层上呀

贺桂英:请问徐老师:B_树的插入与删除还作考核要求吗?对于 B_树的插入、删除,学生们学起来有些困难,这部分是否作为本次考试的内容?

徐孝凯:基本不做要求,考核较多的是B_的概念,即B_树的结构特点。

贺桂英:徐老师:排序算法太多,关于希尔排序我没时间给学生讲解,这部分是否作为考核内容?

徐孝凯:不做为考核要求,因为它不是一个好的排序算法。

贺桂英:外排序的内容是否要求掌握?

徐孝凯:只有很少一些概念是要求的,如最佳归并树的概念,不过可以放弃,因为涉及的分数很少。

问:求广义表的表头与求它的第一个元素是一回事吗?

贺桂英:我的理解是一样的.广义表的算法比较难,应该不作考核要求的.

徐孝凯:贺老师回答是对的,关于广义表的表头和表尾的知识,有时作为概念来考核。

问:已知三叉树的结点个数,怎么求它的最小和最大深度?

贺桂英:对了,这是一个值得探讨的问题!请问徐老师:三叉树中是否至少有一个结点的度为3才行?

徐孝凯:在专科数据结构教材中介绍树的性质时,给出了树的结点数与最小深度的关系,其最大深度应等于其结点数,不一定非得存在度为3的结点。

问:老师,你好。我是广西电大桂林电大的一名01级学生,我觉得这门课程很难考,考了4次,每次都差那么几分,虽然专科时也是这个专业,但却很难考,有什么好的资料吗

徐孝凯:请多练习该课程实验教材后面的综合练习题。

贺桂英:我个人觉得:作业和实验指导书后的综合练习题很重要!

徐孝凯:这学期新增加了网上教学综合练习题辅导文章。在该课程的中央电大网页上的教学辅导专栏中,新发表有期末综合练习题,请注意参考。

问:该课是否有模拟题型?望指导。

徐孝凯:请注意以下复习:

1.该课程期末复习指导

2.该课程形成性作业

3.该课程实验教材后面附录中的综合练习题

4.该课程中央电大网页上发表的各种题型的综合练习题。

问:什么是数据结构

殷人昆:数据结构是所要处理的数据元素之间的关系,这些数据元素依据这种关系构成适合各种问题求解的数据表示。

问:数据结构的抽象层次

殷人昆:数据结构分逻辑结构和存储结构。逻辑结构是面向问题的,存储结构是逻辑结构的存储表示。通常所说的“数据结构”是指数据的逻辑结构,包括线性结构(线性表)和非线性结构(树、图、多维数组、广义表),存储结构包括一维数组、链接表、索引表、散列表。

问:广义表的递归算法

殷人昆:广义表的读归算法看书。不知你要问什么问题?是否希望知道重点?

问:老师你讲的这资料“课程实验教材后面的综合练习题和验指导书后的综合练习题”我们都没有。在哪找到?

殷人昆:中央广播电视大学出版社出版的“数据结构实验(本科)”中有,请购买。

徐孝凯:该课程的实验教材由中央广播电视大学出版社出版

教材名称为“数据结构实验(本科),徐孝凯、殷人昆编著,中央广播电视大学出版社出版,联系电话为:010-68214437转发行部

问:图的基本概念

徐孝凯:请看书。

问:数据结构基本概念

徐孝凯:请看实验教材后面的练习题。

问:求一个算法的时间复杂度应该从哪几个方面来算

徐孝凯:主要看循环体执行的次数。

问:排序的算法考试是否作要求?

徐孝凯:一般考方法的情况较多,考算法的情况较少。 试题范围同实验教材后的练习题,请注意分析可知。

问:简单的搜索结构

徐孝凯:此概念较模糊,简单的搜索应该是顺序搜索。

问:抽象数据类型及面向对象概念

徐孝凯:看书第一章

殷人昆:答疑时间到,请大家把书多看几遍,再见!
还有什么疑问可以给我留言或直接Hi我。

回答2:

当然是多看(指多看程序),还有就是最基本的性质得要会,不然说再多都是白说,祝你尽快学好数据结构。