c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)...

c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第1张图片 c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第2张图片

这是 北航士谔书院 的第 1368 篇推送

经历了上周的淑芬指导

大家有没有豁然开朗的赶脚

c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第3张图片

今天

数据结构考前指导闪亮登场

带你一网打尽

那些de到头秃的bug

让你面对线上考试不再焦虑

c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第4张图片

面对错误的输出

你疑惑吗

面对明明样例通过

却就是不得满分的代码

你暴走吗

若果是这样

不如来听听身边的学神

Debug届王者们

有什么复习方法与建议

趁考前飞速学上几招吧

c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第5张图片

★ 田旗舰同学的建议

01

重点内容

线性表、栈与队、树与二叉树、图的数据结构以及构建、插入、删除、修改数据、遍历等基本操作。其中,树与二叉树的内容在编程题中考察较多,可着重复习,熟练掌握3种遍历,掌握二叉查找树、哈夫曼树等,而编程题不涉及图,可着重复习选择填空涉及的部分,例如一些基本定义、AOV网等,对于最小生成树、最短路径、流量问题等对应的算法了解思路即可。此外,查找、排序在选择填空和编程题中都有可能遇到,也应熟练掌握,包括顺序表、索引、二叉查找树、散列等查找方法,冒泡、选择、插入、谢尔、堆、二路归并、快速排序等排序方法。

02

备考材料

课程网站的七套作业,课程网站的ppt标记了重点的课本(如果没有标记重点,建议从现在开始查找课本的时候进行标记,否则不易精确查找到所需的知识点),自己的作业代码

03

复习方法

我的复习方法分为两部分:整理+做题

整理是建立一个word文档,对知识进行分块整理。内容包括基本的数据结构和算法,例如 链式存储的二叉树的基本结构、字符串的读入方法、文件输入输出的相关操作……,这些内容虽然简单,但却是几乎每个编程题必不可少的部分,可以帮助构建编程的框架。此外,还要包括一些重要的算法,例如KMP,以及一些典型的例题,例如用栈实现的表达式计算,可以是ppt里源代码的截图,也可以是自己编写的程序或者伪代码。另外,这个文档里还包括自己做作业时写出的bug,例如变量反复调用时忘记重新赋值,循环的边界条件写错。因为每个人都有一定的编程习惯,对于习惯性犯下的错误,下一次还可能写出同样的错误,有了这样的一种错误提醒,下次再出错的可能会大大减小。

这个文档的整理是随着复习同步进行的,比如今天要看ppt,那么就将ppt的重点内容或者自己没有掌握的知识,同步整理到文档中的相应位置。如果今天在看以前的代码,那就把以前代码中de了很久的bug记录到文档里。这样整理文档的过程是一遍复习,回顾文档的过程又是一遍。

做题最重要的是动手去做,最好还是依靠课程平台。对于选择填空,可以将作业的选择填空部分再做一遍,对于不熟悉的内容,再查看课本加以确定。如果时间充足,编程题最好也是如此。如果复习时间比较紧张,也可以看着题目去想思路,对于思路不清晰的题再尝试编程实现,编程时注意时间,如果很久也没有调出来,最好去查看助教提供的解答视频或者在群里求助,千万不要在一道题上“死磕”,浪费太多时间。另外,编程时养成用注释记录思路的习惯,每一步的作用是什么,输出的结果应该是什么,用注释在程序的对应部分随手记录,这样调试的时候会方便很多。

★ 高世伟同学的建议

01

备考思路

留给大家的复习时间并不是特别的充裕,因此更要抓住手上优质的复习资源,包括我们的教材、ppt、平时的习题。对于理论知识的掌握,大家可以首先通过温习PPT的方式重新进行一遍梳理,主要了解各个数据结构所有的基础概念和操作。随后可以对平时作业理论部分的错题或者当时不清楚的题进行回顾,再学有余力的同学可以完成教材后的练习题作为巩固。对于编程题,大家要掌握各数据结构基础操作的编程实现,最好在考试之前就形成一套自己固有的实现方式。同时大家还可以回顾作业中各数据结构的经典编程题,比如用链表实现的约瑟夫环、用栈实现的表达式计算、用多叉树实现的喜鹊筑巢等。编程题考察的知识点相对比较明确,只要大家对基础操作烂熟于心,相信大家都能做到以不变应万变。

02

重点内容

由于本学期学习的都是最基础而又最重要的数据结构,因此它们都可以算是本门课的重点。我们本学期学过的主要数据结构包括链表、栈、队列、树、图等,下面我简单列举一些这些数据结构的重点操作(不完全)。链表的重要操作是它的插入与删除。栈和队列主要需要关注用它们进出顺序的特点,以及和表达式结合的相关题目,如下面这道题逆向转化的题目大家可以尝试完成。

c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第6张图片

树的重点比较多,主要包括树的搜索(BFS、DFS)与遍历(前序、中序、后序)等。老师也向我们强调了多叉树会是一个考试编程题中的重点,希望大家能在复习中予以关注。如这道题目。

c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第7张图片

BFS会是一个很好的实现方式,如果没有做过的同学同样可以作为练手尝试。关于图这一部分,虽然本次考试不会考察大题,但仍有许多重要的知识概念有可能会在填空选择中出现,比如有向图与无向图,邻接表与邻接矩阵、AOE网络等。除了数据结构之外,本学期学习的一些常用算法同样有可能是考试的重点,比如查找算法中的折半查找与hash,排序算法中的快速排序与堆排序等。而不同算法之间的时空复杂度差异大家也要学会计算。

03

重点内容

一、填空选择题记得审题,关注每一个概念(大家可千万不要像我平时作业一样屡屡看漏关键字而做错题目)。

二、编程题建议大家选择自己熟悉而便捷的方法来实现,如链表用数组替代等。这样虽然可能会牺牲一些时空复杂度,但可以降低自己出错的概率与调试的难度。

三、填空题无从下手可以在草稿纸上手动模拟相关过程,或再次审题确认自己概念是否理解正确。编程题出错不要心慌,可以用调试器一步一步跟踪查看变量,也可以选择直接输出自己需要的调试信息。如果本地正确而评测机出错,可以自我构造数据点进行测试。

四、调试好设备,放平心态

THE

END

听完大佬的分享

你是否找到了更高效的学习方法

士小信祝愿每位同学

数据结构考试如有神助

分分钟de出bug冲冲冲!

c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第8张图片 c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第9张图片

文案//庄文慧

排版//姚炳昌

责编//刘小煜 粉老师

数据结构大考来临

你准备好了吗?

c++数据结构代码整理_士说烤漆丨考前急救车!年级前10的dalao助你通关!(数据结构专题)..._第10张图片

你可能感兴趣的:(c++数据结构代码整理)