前言

今天考了18年9月份的PAT甲级考试,虽然成绩不理想,但是也给一个阶段划上了句号。有一些心得和反思,写给自己,也希望能帮助他人。


正确认识PAT

首先正确的认识PAT很关键:

如果你是考研的同学,如果成绩优异可以替换掉浙大的计院和软院的研究生复试的机试部分(据说其他的学校也有,这一点我不太清楚,可以针对具体院校咨询一下)。

如果你是工作的同学,成绩特别优异的话还是比较有帮助的,但是也不要过分的夸大这个考试,因为考试的总体难度不高,PAT对外宣称成绩优异是可以收到邀请的,但是也只是面试邀请,面试不仅仅会考察算法,技术面试还是主要针对你研究方向内的问题去提问的,如果这方面不够扎实也是不行的,其实如果你有考到接近满分或者满分的能力,直接去参加会给你发邀请的大厂的笔试也是可以通过的。所以不要过分看重这个考试的含金量,理性认识即可。(仅仅是个人关于甲级及以下考试的观点,如果是参加顶级的大神,另当别论)

如果你是在校同学,没有考研和工作压力,那么非常推荐你去,因为算法对于计算机学生来说是非常重要的,我个人现在是JAVA方向,今年在准备实习的时候因为算法不过关,在笔试阶段惨遭网易拒绝。其他的方向也是一样 ,就算你是前端也会考算法,这是一门基础课,大厂大企业比较看重基础知识牢固的同学。所以推荐那些没有各种压力的同学去考一下,算是对自己学习算法的一些督促,并且尽量考甲级,个人感觉不是特别难,这次的题目都会只是时间不够充裕决策也有问题(这个下边会讲)。


前期准备和心得

前期准备:

准备PAT考试有一本公认的教材名叫《算法笔记》,就是下边这一本。

只要跟着书和配套练习题一章一章的学,基本上知识点就全部掌握了。

然后就是多刷一刷题目巩固知识点,pat官网上的题库就可以,到我写这篇文章的时候是151道题目,算法笔记只收录了前107道题目结合知识点进行讲解,在我刷题的时候只有147道,最新更新的四题也就是我们刚刚考试的四道题目。前面的不敢保证,后边的基本都是历次的真题了,可以在刷完书之后找一组(四道题,分值分别为 20、25、25、30)模拟一下。

准备时间:

推荐两个月吧,如果没有数据结构算法基础的可以适当延长,但是感觉两个月已经很充裕了,一定要监督自己,规划好整体计划和每一天的计划,克服拖延和懒惰。计划的话看个人能力吧,网上有人说来回刷两遍肯定就100分了,但是我这个人不是很喜欢题海战术,整理也是很有必要的,不管是在错题本还是在博客上,写写思路然后反思错误也会有很大的提升。

前期心得:

这应该算是一个失败心得吧,我觉得我前期的规划不是很好,而且拖延症使我最后都没能刷完题目,付出了努力和收获不是正比关系但是至少也是正相关关系,很大程度的提升了你高收获的概率。希望我和有同样缺点的读者,都能克服这个问题。还有一点是,前期要注重训练自己找思路快速做决策的能力,找出解题做方便的办法,这次翻车有一部分原因也在于此。


考前准备

需要带的东西:准考证(官网找到自己的准考证想办法打印)、身份证、笔。前两件是必须有的。

考试时间: 3个小时

题量:4个题目(分值分别为20、25、25、30)


考试过程和体会

我是在浙江传媒PAT考点考试的,比较幸运分到了电脑好一点的一体机教室,然后开始考试,就觉得键盘很难受,而且第一道题是一道关于狼人杀的题目,判断哪两个是狼人,当时还是有点紧张的,并且思路也没有规划好,导致开始的一个小时既没有AC掉第一道,还浪费了大量的时间。

看到已经过了一个小时,于是当机立断不做了,看下一道题目,第二道题目一下子就知道是什么样的思路,然后才静下心来做题,安静的AC了第二道,开始做第三道也很顺利,只不过有一个case没有过,扣了3分。

到了第四道题的时候还有一个小时多一点,第四题的思路也很清晰,因为是要构建二叉树,然后再寻找给出的两个key的第一个共同的祖先。我当时脑子里第一反应是静态树很方便,因为比较大小就可以了,然后较大的除2,直到两者相等就可以求出来了,看了一眼节点的个数,N <= 10000,这时候心里想只要开一个10010大小的数组就可以了。整个过程都进行的很顺利,给出的样例测试也通过了。

提交,显示后三个case段错误,也就是越界了,当时反应是看看是不是特殊值导致的,检查了一下没有。于是检查哪里有数组访问,逐个检查后发现可能在根节点下标在5000以上的时候使用 2 * r 和 2 * r + 1 访问他的子节点有越界的风险。于是增大数组并且加了一些判断语句。提交仍然错误,重新分析题目,突然想到如果使用静态树,建立的树恰好是那种完全偏斜的树,就是100个节点的树,每个节点只有左子树这种。那么第100个节点的下边就应该是  !一个完全不能被整型或者长整型接受的下标。

方向完全错误了,这个时候只剩下了半个小时。决定放弃修改,试试第一题还能不能抢救,然后尽力做第一题,只把特殊的no solution解出来了,然后考试结束。

有点失败。

考试小技巧:

考试的时候浏览器界面右键没有复制选项,而且我不小心点到右键的时候还会有点卡,所以如果复制示例的话请使用Ctrl+C。

将示例输入到控制台有两种方法,

1.将输入输出重定向:

freopen("D:\\input.txt","r",stdin);//输入重定向
freopen("D:\\output.txt","w",stdout);//输出重定向

使用freopen函数将输入输出重定向到D盘中的两个文件,这样只要在input.txt文件中粘贴示例即可在output.txt文件中查看结果。当然还有c++的fstream可以使用,如果同学们有兴趣的话可以自行查阅。

2.如果不喜欢用(比如我),或者考试一着急忘记了这个语句怎么写,可以使用这一种方法。在我考试的时候使用的编译器是codeblocks,但是当我复制示例之后发现使用Ctrl+V的时候是粘贴不出来的(显示^V),这时别急在控制台的白色框上右键:编辑—>粘贴 即可。

考后心得:

1.第一道题大多数是数学问题,如果没有思路的话不要硬头皮去做,可以看看后边的题,因为后边的肯定会有树、图之类的题目,这些题目的思路会比较清晰,而且难度也不会很大,放松心态、让自己进入状态很关键。

2.键盘可能不顺手,但是还是那句话,别让次要的点总是吸引你的注意,静下心来思考题目。

3.注意把握时间,3个小时规划好,不要铁头去做一道题,最大程度的去拿分。

4.想好思路之后再仔细考虑一下是否合理,因为思路确定之后如果在修改将会耗费更多的时间。

5.做好考前准备,如果你准备足够充分,即使条件再不利,发挥的也会比一般人好,当你的水平特别高的时候,应试技巧就不是那么关键了。

另外一些的友情提醒:

希望大家在考试中减少一些自己的小习惯,比如频繁的叹气和自言自语之类的,示意老师的时候也尽量轻一点,因为这可能会影响到你旁边的同学,如果你旁边的同学还没来状态的话,估计会恨死你,O(∩_∩)O哈哈~

希望大家都能学好算法,都能在PAT考试中考出好成绩。

如果你是过来人有一些什么经验,也可以在评论中分享给大家,谢谢~

个人关于PAT的认识心得和体会相关推荐

  1. php成绩查询系统的学习心得_PHP学习心得与体会

    PHP 学习心得与体会 我想在讲述自己的学习方式前,对那些期望能从我的文 章中获得有用信息的人说一句心里话: 我的文章不会对您的学习起到实质性的作用,您能否成 功, 还得靠自己的,坚持,坚持,再坚持, ...

  2. 我这些年对游戏外挂辅助开发的一些心得和体会

    今天闲来无事,游戏也上不了,就写点东西吧,很少在濮阳吧里发贴子,今天我也来点贡献吧,以下内容对于有些人来说,也许很有用,但对于一些不懂装懂的人来说呢,你不懂就不要乱拍砖,你可以保持沉默,大家都是有文化 ...

  3. matlab的程序设计心得和体会,程序设计心得体会(多篇).doc

    程序设计心得体会(多篇) 程序设计心得体会(精选多篇) 第一篇:程序设计的心得体会 数据结构程序设计心得和体会 学号:1004011025 姓名:常新亚 数据结构是计算机存储.组织数据的方式.数据结构 ...

  4. Office计算机心得,OFFICE心得学习体会.ppt

    OFFICE心得学习体会.ppt 会专61001 唐林 21 会专61001 唐林 21 会专61001 唐林 21 记在大一结束前 * 会专61001 唐林 21 * 我学word 我学习计算机,就 ...

  5. 学计算机会不会做ppt,学习计算机心得与体会.ppt

    学习计算机心得与体会,学习计算机心得体会,学习计算机的心得体会,计算机实习心得体会与,计算机培训心得体会,计算机实训心得体会,计算机实习心得体会,计算机心得体会,计算机网络心得体会,学习心得与体会 * ...

  6. 我自己对英语学习的心得与体会

    我自己对英语学习的心得与体会 一.写这篇文章的目的: 我身边有许多的朋友和同学,一直找我请教和追问,我是如何考过英语六级的.每一个问我的朋友和同学,我都把我的心得和想法,说给对方听. 但是,一直没有整 ...

  7. 线程小游戏制作的心得与体会

    可能是由于上学期期末的原因,加上开学以来一直蛮忙的,感觉很久没有写过博客了.今天,回顾下寒假期间做的线程游戏,也顺便谈谈自己的心得与体会. 首先我们是以一个简单的马里奥模型为背景,结合之前学习的多线程 ...

  8. 上海交通大学保研计算机,经验分享 | 上海交通大学保研,一丢丢心得和体会。...

    原标题:经验分享 | 上海交通大学保研,一丢丢心得和体会. 本人情况 学校:非211一本 英语:六级 获奖:国家级奖项五项,省级奖项若干:专利两项:"三好学生"等荣誉称号若干. 排 ...

  9. [心得]编写服务端的相关设计心得及体会

    最近接手公司服务端接口的相关编写工作,遇到了一些问题,提出了一些想法,讨论了一些问题,与项目经理在方案选择上有了一番争吵(当然,这种争吵是家常便饭的事儿).特此有了一些心得体会. 方法入参的设计 我们 ...

  10. 计算机组装技术的心得与体会,计算机技术心得体会

    顶岗实习对学生走出校园.认识社会起着桥梁作用,它能够培养学生职业技能与职业意识.以下是由出国留学网小编为大家整理的"计算机技术与软件专业顶岗实习心得体会",仅供参考,欢迎大家阅读. ...

最新文章

  1. 两句话动态修改table数据并提交到后台
  2. 使用LS2J技术在LotusScript中使用Java
  3. Java的类装载器(Class Loader)和命名空间(NameSpace)
  4. php5.2的配置方,Windows IIS PHP 5.2 安装与配置方法
  5. 残差网络(Residual Networks, ResNets)
  6. mybatis基于注解的入门案例
  7. springmvc+mybatis+spring+redis
  8. View和View的参数传递
  9. mycat1.5~1.6的一个bug
  10. 一步步编写操作系统 17 显存,显卡,显示器 上
  11. 2.c++模式设计-工厂模式
  12. 1.2.4 List.contains方法——判断列表中是否包含指定元素
  13. windows控制台命令: 快捷键大集合
  14. 那些优美的英文句子一
  15. 使用电脑微信扫描二维码
  16. AR技术简谈:相关原理,技术应用以及设备推荐,带你感受虚拟信息与真实世界巧妙融合。
  17. android:简单包装实现伪自定义DatePickerDialog和TimePickerDialog
  18. 数据库实体间关联关系:一对一、一对多、多对多
  19. 1029: 三角形判定 C语言
  20. Transition Docbook

热门文章

  1. Unity使用BMFont制作字体
  2. OpenCV学习笔记_图像扭曲及旋转操作
  3. 高并发数据缓存池(基于EHcache)
  4. 7-11 How Long Does It Take(25 分)
  5. 灵剑问道服务器维护到几点,问道手游2020年12月31日维护公告_问道手游12月31日更新了什么_玩游戏网...
  6. react实战笔记172:navigate组件
  7. 开源的去马赛克神器 修复受损漫画无压力
  8. 机器认知、人机交互、边缘计算……在这里,他们谈论了关于AI的关键议题...
  9. SIFT、SURF、Harris、BRIEF、FAST、DAISY、FAST经典描述子简介
  10. 2015总结与新年计划