资讯动态

山东大学数据方向四门课复习笔记:考点提炼与高分攻略

发布时间:2026/10/6 4:02:50 来源:尧图企业网站定制
这样学才能拿高分——山东大学数据方向四门课复习笔记2021版每年期末考试季总有一批人抱着手机问数据可视化要考什么OS重点是什么我也曾经是其中一员。2021年那个学期我同时修了数据可视化、数据科学导论、操作系统和数据库这四门硬课临考前三周才开始系统整理最后踩着踩过的坑才摸索出一套考点优先、手写为主、画图为辅的复习路径。这份从试题回想到知识点梳理的内容前后整理了两三遍现在分享出来给后来的学弟学妹做个参考——不管你是想拿高分还是只想少挂一科这套整理思路都值得你花十分钟读一遍。先交代一下适用背景。资料对应的是2021年山东大学数据科学方向课程涉及课程包括数据可视化、数据科学导论、操作系统和数据库考试形式偏向综合题加少量概念的简答填空。不同老师和不同年份的题会变但重点范围变化不大尤其是基础概念和常考题型几乎年年重复。我这份整理的价值在于把散落在PPT和课本里需要背的知识浓缩成一份可以直接拿来记忆和串联的内容。1. 这份整理的由来三轮复习法逼出来的东西第一轮复习时我只是把PPT从头到尾翻了一遍效率极低看完第四章忘了第一章。后来我干脆换了一个思路先把每个科目的往年试题和老师划的重点全部收集齐再针对每一个考点去翻书、补笔记、画脑图形成自己的知识框架。具体做法是这样的先把四门课的PPT和教材章节列成一张总表标注课时覆盖范围和老师强调过的章节。然后回忆和收集历年题型包括选择题、填空题、简答题、计算题、SQL写作题、画图题等按科目分类整理。之后针对每个题型倒推知识点把可能考到的名词解释、流程步骤、对比表格全部做一遍。最后每门课整理一份手写版后来誊成电子版的重点提纲把容易混淆的和必考的内容用表格对比出来。三轮下来每门课的笔记大概控制在十页A4纸范围内信息密度高考试前翻起来很顺手。这比我最初堆了四十多页笔记的方法高效太多。这就是为什么在这份整理里你会看到大量表格、对比、公式和代码片段而不是大段大段的文字——这些全是从可能出题的角度倒推出来的基本属于考场上能用得上的内容。2. 数据可视化画图只是手段视觉编码才是核心考点数据可视化这门课在2021年的考核里最有意思的一点是手绘图表和给图表纠错占了很大分值反而ECharts的具体代码写不写得出是次要的。这也说明了课程的重点不在工具而在原理。2.1 视觉编码优先级几乎是必考的一道简答题再怎么考都绕不开的一个知识点就是视觉通道的优先级。记住这个顺序会非常有用位置优于长度长度优于角度角度优于面积面积优于颜色饱和度颜色饱和度优于颜色色相。简单说人眼对位置的感知最敏锐对色相的感知最弱所以在设计图表时需要表达最重要的数据关系时优先级应该给位置和长度而不是用一堆花花绿绿的颜色。考题最常见的方式是给你一张设计得很丑的图让你指出哪里不合理并提出改进方案。这时候套优先级顺序来分析就很好用。2.2 图表选型对照看见数据先想关系再选图考试里也会让你为特定数据设计可视化方案。我的经验是先分析数据关系类型再套图表数据关系推荐图表慎用趋势变化折线图、面积图柱状图类别多时排名对比条形图水平饼图构成占比堆叠柱状图、饼图3D饼图相关性散点图雷达图比较维度多时可用地理分布地图、热力图表格流程关系桑基图、流程图饼图在作答时记得写清楚选图理由——比如用折线图因为它适合展示连续时间序列的趋势变化这种表述。2021年考试里就有一道给城市气温数据选图的题用折线图加散点图双组合作答通常能拿高分。2.3 ECharts上手时最容易踩的坑option配置项虽然ECharts代码考察没那么严格但作为数据可视化方向的学生工具实战还是得掌握。我当时写ECharts踩了不少坑整理出来给同专业的同学提个醒。第一个坑是series的类型别搞混。line是折线bar是柱状pie是饼图scatter是散点地图是map。同一个图表里想混搭类型可以放多个series对象但每个series都需要单独的type字段。第二个坑是坐标轴类型。类目轴category和数据轴value如果设错图表会直接不显示或者显示成空白。判断方法是横轴是比如月份名称、城市名称这类离散值就用category横轴是数值范围就用value。第三个坑是数据格式。数据量大的时候不要直接在series.data里手写数组优先用dataset配置项来管理数据这样组件之间好联动切换维度也方便。下面这个例子是一个简单的折线图入门配置option { title: { text: 2021年气温变化 }, tooltip: { trigger: axis }, legend: { data: [最高气温, 最低气温] }, grid: { left: 3%, right: 4%, bottom: 3%, containLabel: true }, xAxis: { type: category, data: [周一, 周二, 周三, 周四, 周五, 周六, 周日] }, yAxis: { type: value, name: 温度(℃) }, series: [ { name: 最高气温, type: line, data: [11, 11, 15, 13, 12, 13, 10] }, { name: 最低气温, type: line, data: [1, -2, 2, 5, 3, 2, 0] } ] };这份配置是我当年练手用的核心是把option对象的三要素data、xAxis、yAxis、series理清楚。真正考试不要求默写这么完整的配置但理解结构对笔试中关于图表组成的简答有直接帮助。2.4 常见图表错误清单数据可视化知识点里有一类题是判断某个做法是对是错。总结起来就几种常见错误饼图超过5个扇区还硬用应该改用条形图3D饼图更是灾难透视会严重干扰面积判断。配色混乱用了高饱和对比色但数据类别根本没有可比性。坐标轴不从零开始却硬撑柱状对比在视觉上夸大了趋势差异。双坐标轴滥用两个不同的量纲放在同一张图却不在标注中说明。颜色只用纯色忽略色盲用户。2021年试卷里就有一道题是让指出一张双轴图的问题我当时列了三条错误和修订方案得分很稳。建议把这几个点背熟。3. 数据科学导论统计思维比代码能力更拉分数据科学导论名字听起来偏概念实际上考试里最狠的是统计推断和Python结果解读这类题。很多人以为这门课就是讲什么是大数据、什么是机器学习结果在假设检验上栽了跟头。3.1 数据科学全流程从问题到决策整门课的骨架是数据科学的完整流程业务理解、数据采集、数据清洗、探索性数据分析、特征工程、建模、评估、部署、决策、反馈。考试喜欢让你把几个阶段排序或者指出某个操作属于哪个阶段。我当时整理了一个口诀业务定问题采集定范围清洗定质量探索定方向建模定核心评估定优劣部署定价值。这套口诀配合例子挺好用比如处理缺失值属于数据清洗阶段用箱线图看离群点属于探索性数据分析阶段。3.2 必考的统计基础置信区间与假设检验数据科学导论不会考太深的高数但最基本的描述统计和推断统计一定会涉及。需要掌握的包括均值、中位数、方差、标准差、四分位数、相关系数、协方差等概念以及p值、显著性水平、置信区间、假设检验的基本步骤。尤其需要记住假设检验的四步流程提出原假设和备择假设、选择检验统计量、计算p值、对比显著性水平得出结论。考题可能出现一个具体案例比如某产品改进后平均时长下降是否显著让你完成上述步骤。2021年印象里有一道题给出了一个数据集的均值和标准差要求计算95%置信区间。公式得上场置信区间公式均值 ± (z或t临界值) × (标准差/√样本量)如果样本量大于30可以用z值近似1.96小于30用t分布。考试允许带简单计算器所以思路比计算过程更重要。3.3 用Python做数据分析pandas操作经常出现在选择题和填空题中即使不让你写完整代码也会考你一行代码的功能或者输出结果。复习时值得掌握的操作有几个import pandas as pd df pd.read_csv(data.csv) df.head() df.info() df.describe() df.isnull().sum() df.dropna() df.fillna(df.mean()) df[column].value_counts() df.groupby(category)[value].mean()如果考试让写代码像加载数据、查看缺失值、填充缺失值、按列分组聚合的这种基础操作是最容易出的题。建议把这几个函数熟记尤其注意fillna里传的是填充值dropna是删除含有缺失值的行两者别搞混。3.4 机器学习中的基础术语数据科学导论也会涉及机器学习的入门概念包括监督学习和无监督学习的区别、训练集和测试集划分的意义、过拟合与欠拟合、常见的评估指标准确率、精确率、召回率、F1值、AUC等。考题可以结合一个例子比如用分类模型预测用户流失然后问你精确率和召回率哪个更重要。这类题没有绝对标准答案关键是逻辑自洽。我当时的回答思路是用户流失场景一般更看重召回率因为流失用户没被识别出来损失更大但如果干预成本很高可以更看重精确率。考试时写出权衡逻辑就能得分。4. 操作系统不要背概念要在纸上走流程OS这门课在2021年的考试风格很偏向给你一个场景让你动手推流程纯概念背诵题比例不高。这一点很重要因为很多同学把时间花在背定义上忽略了对原理的推演考场上遇到计算题就傻眼。4.1 进程与线程的对比出简答题的概率极高进程和线程的区别是每年必考的一道题关键在于对比要完整进程是资源分配的基本单位线程是CPU调度的基本单位。同一进程内的线程共享地址空间不同进程之间的地址空间互相独立。进程切换开销大线程切换开销小。进程间通信更复杂线程间通信更简单通过共享变量。一个进程崩溃通常不影响其他进程而一个线程崩溃可能拖垮整个进程。最好再补充一个具体的例子比如浏览器每个标签页是一个进程还是一个线程不同浏览器设计不同但用这个例子能说明独立性和共享性的概念。4.2 调度算法比较那张对比表一定要记住进程调度算法是必考内容。需要掌握的算法包括FCFS先来先服务、SJF短作业优先、RR时间片轮转、优先级调度、多级反馈队列。考试可能直接给你一组进程到达时间和执行时间让你求平均等待时间、平均周转时间。我当时整理了一张表把每个算法的核心特征压到一行里算法特点缺点适用场景FCFS公平简单长作业可能导致 convoy effect批处理SJF平均等待时间短需要预知执行时间可能饥饿非抢占式批处理RR公平响应快时间片设置不当则开销大分时系统优先级调度按紧急程度低优先级可能无限等待实时系统需配合老化技术多级反馈队列兼顾响应和吞吐实现复杂参数难调通用操作系统考场上如果给你具体的到达时间和执行时间最稳妥的做法是先画甘特图再一步步算等待时间。绘图的过程本身就能帮你理清思路也能保证步骤分。4.3 死锁四大条件与银行家算法推理题的重头戏死锁必考这一点没什么悬念。四大条件是互斥、持有并等待、不可抢占、循环等待。考题往往让你分析一个场景是否会造成死锁并设计破坏其中一个条件的方案。2021年的试题中有一道银行家算法的题给出系统资源总量、各进程已分配资源和最大需求问当前状态是否安全并找出安全序列。这类题的做法是计算每个进程还需要的资源数。计算系统当前可用资源数。依次尝试找一个进程其需求可以被现有可用资源满足。假设分配给它回收它占用的资源继续下一轮。如果能找到一条序列分配完所有进程则系统安全。记住做题步骤多练几道基本能稳拿分。4.4 页面置换算法计算题中的常青树虚拟内存管理部分最经典的考法是页面置换算法包括FIFO先进先出、LRU最近最久未使用、OPT最优置换。考试会给一个页面引用串和物理块数让你写缺页次数和缺页率。有一个容易丢分的坑FIFO在分配块数增加时缺页率反而上升Belady异常而LRU和OPT没有这种问题。这个点考试经常以判断题或简答题形式出现。计算的时候注意区分刚开始内存为空时算不算缺页一般算但不同教材口径可能不同答题前如果题目没有明确说明可以在草稿上标注自己的假设避免因口径问题丢冤枉分。4.5 信号量与PV操作2021年考了一道原题信号量的P操作wait和V操作signal是进程同步的经典考点。考题通常是生产者-消费者问题、读者写者问题或哲学家就餐问题让你用信号量实现同步。复习时至少要能手写出生产者-消费者模型的伪代码semaphore mutex 1; // 互斥访问缓冲区 semaphore empty n; // 空缓冲区数量 semaphore full 0; // 满缓冲区数量 // 生产者 while (true) { produce_item(); P(empty); P(mutex); put_item(); V(mutex); V(full); } // 消费者 while (true) { P(full); P(mutex); take_item(); V(mutex); V(empty); consume_item(); }建议把P、V操作封装成申请资源、互斥访问、释放资源三步来理解即使换了题目只要识别出这三步就能套用。这个思路在应对OS考试的主观题时非常管用。5. 数据库SQL是基本功设计才是分水岭数据库这门课知识点密度是四门课里最高的。SQL写作题、关系代数题、范式判断、ER图转关系模式、事务隔离级别几乎每个章节都能出大题。刚开始复习时感觉无从下手后来按基础语法—约束设计—范式理论—事务并发四层拆解后思路清晰了很多。5.1 SQL高频题型增删改查之外的三个隐藏考点大多数人都知道SELECT、INSERT、UPDATE、DELETE但考试想拉开差距通常会考三类平时容易被忽略的内容。第一类是聚合查询配合GROUP BY和HAVING。记住WHERE在分组前过滤HAVING在分组后过滤。比如查询平均成绩大于80分的课程SQL顺序应该是先GROUP BY course_id再HAVING AVG(score) 80。第二类是JOIN多表连接尤其是LEFT JOIN和INNER JOIN的区别。考试常让你写查询所有学生及其选课情况没选课的也要列出来这时候必须用LEFT JOIN而不是INNER JOIN否则没有选课记录的学生会被筛掉。第三类是子查询和EXISTS。比如查询选了所有课程的学生这类题在关系代数里叫除法运算在SQL里通常用NOT EXISTS双重否定来实现。下面是一个可能用到的示例-- 查询选修了课程号为C001的学生姓名 SELECT s.name FROM student s INNER JOIN sc ON s.stu_id sc.stu_id WHERE sc.course_id C001; -- 分组统计每个学生的选课数和平均分 SELECT stu_id, COUNT(*) AS cnt, AVG(score) AS avg_score FROM sc GROUP BY stu_id HAVING COUNT(*) 2;这些题其实难度不大关键是平时多练尤其注意表名和字段名的大小写、字符串用单引号、别名习惯等细节错误在笔试中也容易被扣分。5.2 范式理论从1NF到BCNF判断步骤要烂熟于心范式判断是数据库考试中计算题的主阵地。复习的时候我把每一步判断压缩成了一条流程链1NF属性不可再分表中的每个字段都必须是原子值。2NF在1NF基础上消除非主属性对候选键的部分依赖。3NF在2NF基础上消除非主属性对候选键的传递依赖。BCNF在3NF基础上消除主属性对候选键的部分依赖和传递依赖即每个决定因素都含有候选键。做判断题的步骤我自己总结为先找候选键再找函数依赖然后看是否存在部分或者传递依赖。这个流程需要多练几道例题才能熟练。2021年的考题给了一个选课表包含学生、老师、课程、教室等字段让你判断最高满足第几范式并分解到3NF。解法是先把函数依赖写出来再依据流程逐步规范化。5.3 ER图转关系模式必修的转换规则ER图的相关考题一般分两部分画ER图和将ER图转换为关系模式。转换规则比较固定实体转成一个关系模式实体的属性就是关系的属性。1对1联系可以在任一侧加对方的主键。1对多联系在多方加一方的外键。多对多联系单独转成一个关系模式两端的主键作为联合主键必要时再加自己的属性。考试时最容易丢分的是多对多联系不少人把关联属性也塞进关系模式里导致冗余。我的做法是先把规则背下来然后在草稿上画一个简单的例子比如学生-选课-课程练一遍转换五分钟搞定。5.4 事务ACID与隔离级别简答题高频库数据库的事务部分ACID四个特性必须能用口语解释清楚原子性要么全做要么全不做、一致性事务前后数据满足完整性约束、隔离性并发事务互不干扰、持久性提交后数据不丢失。隔离级别从低到高依次是读未提交Read Uncommitted读已提交Read Committed可重复读Repeatable Read可串行化Serializable考试如果问某个隔离级别解决什么问题要注意区分脏读、不可重复读、幻读这三种异常情况。我整理的口诀是读未提交可能脏读读已提交解决脏读但可能不可重复读可重复读解决不可重复读但可能幻读可串行化全部解决但性能最差。2021年复习时我把这几个级别画成了一张阶梯图每抬一级解决的问题多一层但并发性能也随之下降考场作答时描述这种权衡会显得理解得更透彻。5.5 索引与存储引擎选择题常客索引方面需要掌握B树和哈希索引的对比以及什么时候索引会失效比如对索引列使用函数、左模糊查询、隐式类型转换等。存储引擎的对比也是数据库考核的重要考点重点区别InnoDB和MyISAM。2021年的填空里就考了InnoDB支持事务MyISAM不支持事务分值不高但丢了可惜。6. 跨科目复习的排雷指南我踩过的坑希望你不要踩四门课同时复习最大的问题是知识点多而杂互相干扰。我在复习过程里踩过几个很真实的坑分享出来大家可以少走弯路。第一个坑是直接用别人整理的资料而不做二次加工。别人的笔记再详细也是别人的逻辑你只看不写考场上的记忆唤起效果很差。我的方法是拿到资料后自己动手把关键的知识点转成表格、公式或思维导图。比如把OS的调度算法表重新画一遍把数据库范式的判断步骤用自己的话写一遍相当于做了一次深度加工记忆效果好得多。第二个坑是只看不算。OS的调度算法、页面置换、银行家算法数据库的函数依赖和范式分解都必须在纸上完整地算过几遍才能真的掌握。比如SJF的调度计算我第一遍看觉得懂了第二遍做题却算错因为非抢占式SJF在作业到达后可能不是按初始顺序执行而是按完成时间重新选择。这种细节不亲手做几遍根本发现不了。第三个坑是轻视数据可视化里的设计原则。很多人觉得可视化就是画图考前不用复习结果考试考了视觉编码和选图题只拿了一半分。实际上数据可视化的很多概念和硬核知识一样需要理解加记忆还要能对比和评价。第四个坑是数据库的SQL题只看不写。SQL的语法习惯和易错点非常多比如JOIN顺序、GROUP BY子句与聚合函数的配合、NULL值的处理。如果不亲自敲一遍或者在纸上写一遍到考场上容易提笔忘句。我复习时安排了一个专项训练每天写三到五个SQL查询坚持十天效果非常明显。7. 考前一晚怎么用这份整理冲刺最后分享一个考前一晚的具体操作方式这部分是纯个人经验适合那些时间紧、任务重的复习场景。考前一晚先把所有科目的知识点大纲用思维导图的方式过一遍不要深究细节只做无脑扫盲看到关键字能对应出大概的知识点即可。然后做一件更重要的事把最容易混淆的知识点找出来对比记忆。一些容易搞混但常考的对比包括数据可视化的视觉编码优先级 vs 图表选型规则。数据科学里监督学习和无监督学习的典型算法。OS里进程调度算法和页面置换算法的特点和适用场景。数据库的三种表连接INNER、LEFT、RIGHT在结果集上的差异。数据库脏读、不可重复读、幻读分别对应哪个隔离级别被解决。把这些对比过一遍比摊开书本通读一遍高效很多。第二天进考场前只需要浏览一下自己整理过的重点表格和手写公式心里会比较踏实。遇到没见过的题也不慌按步骤拆解多写推导过程基本上都能拿分。而这份整理如果只是躺在网盘里不动它的价值就发挥不出来建议大家都动手改成适合自己的版本再使用。操作系统的PV操作直接在纸上反复默写生产者-消费者问题的伪代码写完再对照标准答案直到完全不出错。数据可视化则抽半小时画一张重点图表选型表把常见的数据关系对应的图表类型写在纸上看到题目能第一时间反应出来。我自己的体会是这些课程本身并不难难的是平时没有及时消化期末抱佛脚的强度太大。如果能把这份整理当成一个开始在平时学习时就按照考点框架去理解课程内容考试周的复习压力会小非常多。这大概也是所有课程学习的通用逻辑——知识不怕散就怕你没有框架把它们串起来。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑