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

我是学编程的!学的c++,教师上课的时候基本上不打代码。全是理论。

zhao_admin1年前 (2022-05-19)科学课件45

呵呵。编程是工科的东西。要靠自学自练的。空看代码,不写够一定量的程序是不行的。我没接触过大学课程(我只是一名搞编程竞赛的高中生),不过你们老师讲的应该也是算法和数据结构吧?算法和数据结构主要是了解精髓,然后靠自己多练才能熟练运用和掌握。她的代码不对,咱又不是要背下来,能理解意思就成。她空谈理论不写代码,咱就私下按照她理论练,编程着重的是理解,你能理解,不管她用什么教学方法都成。很多算法书,数据结构书,基本打的都是伪代码,为什么?就是方便学生理解。等编程能运用自如的时候,就嫌阅读代码浪费时间了,只看精髓就成。她毕竟是教师,试着接受她吧。呵呵cpp确实是很难的编程,课下一定要多练习多看啊!只听课没什么用的。仅献以薄见,望君采纳~

另外 你自身也应该找问题。。我就不信 他当了老师就没有一个学好的学生。。大学老师么 差不多都这样的吧。。就算他打代码了 和看书又什么区别。。这种事情 主要还是在于你自己 你自己应该多练习的 而不是让老师练习给你看的 主要还是你自己。。。多练。。。。

数据结构问题 在邻接表中什么是表节点?什么是表头节点?什么是头节点?

邻接表,存储方法跟树的孩子链表示法相类似,是一种顺序分配和链式分配相结合的存储结构。如这个表头结点所对应的顶点存在相邻顶点,则把相邻顶点依次存放于表头结点所指向的单向链表中。

对于无向图来说,使用邻接表进行存储也会出现数据冗余,表头结点A所指链表中存在一个指向C的表结点的同时,表头结点C所指链表也会存在一个指向A的表结点。

数据结构中,在单链表的第一个结点之前附设一个结点,它没有直接前驱,称之为头结点。

扩展资料:

头结点是链表里面第一个结点,他的数据域可以不存放任何信息(有时候也会存放链表的长度等等信息),他的指针区域存放的是链表中第一个数据元素的结点(就是传说中的首元结点)存放的地址。

1、防止单链表是空的而设的.当链表为空的时候,带头结点的头指针就指向头结点.如果当链表为空的时候,头结点的指针域的数值为NULL.

2、是为了方便单链表的特殊操作,插入在表头或者删除第一个结点.这样就保持了单链表操作的统一性!

3、单链表加上头结点之后,无论单链表是否为空,头指针始终指向头结点,因此空表和非空表的处理也统一了,方便了单链表的操作,也减少了程序的复杂性和出现bug的机会[1] 。

4、对单链表的多数操作应明确对哪个结点以及该结点的前驱。不带头结点的链表对首元结点、中间结点分别处理等;而带头结点的链表因为有头结点,首元结点、中间结点的操作相同,从而减少分支,使算法变得简单,流程清晰。

对单链表进行插入、删除操作时,如果在首元结点之前插入或删除的是首元结点,不带头结点的单链表需改变头指针的值,在TurboC算法的函数形参表中头指针一般使用指针的指针(在C++中使用引用&);

而带头结点的单链表不需改变头指针的值,函数参数表中头结点使用指针变量即可,对初学者更易接受。

参考资料来源:百度百科-头结点

参考资料来源:百度百科-邻接表

邻接表是图的一种最主要存储结构,用来描述图上的每一个点。

参见

再给你看一下数据结构的课件解释

第二个图是个标准的邻接表实例  右上角是图,共有5个点,v1到v5

按照每个点来建立单链表组成邻接表。

首先 以v1作为头结点,和v1相邻的有v2和v4,则v1指向地址3即v3,v2的指向地址1即v2,v2指向空说明单链表结束。以此类推构成整个邻接表。

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

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

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

分享给朋友:

相关文章