PAT(pat.zju.edu.cn)是一个面向 C/C++程序的 Online Judge 系统。相比 ZOJ,HDOJ,POJ 等 ACM 题库,PAT 的题目非常基础,对于数据结构、算法的入门是比较有助益的。

本文按照自己的认识,给 PAT advanced level 做出了分类。由于很多题目实际上兼顾有多种解法和思路,我给每道题打上了 tag,来应对分类的独占性局限,供大家参考。

简单题

这类题几乎不需要数据结构、算法基础,主要通过简单的逻辑流程和判断实现。

  • 1001 A+B
  • 1002 多项式相加
  • 1005 简单 hash
  • 1006 选极值
  • 1008 模拟电梯
  • 1009 多项式乘法
  • 1011 选极值
  • 1019 数字/字符处理
  • 1024 数字/字符处理
  • 1027 数字/字符处理,简单 hash
  • 1031 数字/字符处理
  • 1035 简单 hash
  • 1036 选极值
  • 1037 简单模拟
  • 1040 数字/字符处理
  • 1046 数字/字符处理
  • 1050 数字/字符处理
  • 1058 数字/字符处理
  • 1060 数字/字符处理

模拟题

这类题也相对简单,需要使用到一些简单的数据结构或者相对复杂的逻辑流程实现。

  • 1022 倒排索引
  • 1023 数字/字符处理
  • 1032 链表
  • 1049 计算数字中的 1
  • 1051 模拟栈
  • 1052 链表
  • 1054 dominant color
  • 1056 模拟分组淘汰赛

排队模拟

下面三道模拟题是针对排队模型处理的:

  • 1014 排队问题
  • 1017 排队问题
  • 1026 排队问题

排序模拟

这几道模拟题侧重在使用排序方法:

  • 1012 排序
  • 1016 排序,模拟电话账单计算
  • 1025 排序
  • 1028 排序
  • 1029 归并排序
  • 1038 递归,排序

时间优化

这几道题需要做好时间优化才能 ac。

  • 1044 搜索,时间优化
  • 1039 倒排索引,hash,时间优化
  • 1047 倒排索引,hash,时间优化
  • 1055 排序,时间优化

素数判定

  • 1015 素数
  • 1059 素数

  • 1003 最短路径
  • 1018 最短路径
  • 1030 最短路径
  • 1034 dfs

搜索

  • 1010 二分搜索,优化剪枝
  • 1013 并查集/dfs
  • 1021 并查集,dfs,图的直径
  • 1054 dfs,优化剪枝

  • 1004 dfs,树遍历
  • 1020 二叉树遍历
  • 1043 二叉树遍历

Hash

  • 1041 hash
  • 1042 hash
  • 1048 hash

分治

  • 1007 最大子连续序列

贪心

  • 1033 贪心

动态规划

  • 1045 DP,最长递增子序列

树状数组

树状数组是一种神奇的数据结构,在 1057 题中其神奇的效果得到了很好的体现。

  • 1057 树状数组,模拟栈,二分搜索

题解

截止 2013-08-03,PAT advanced level 的 60 道题全部题解和代码已经发布在本博客中,链接如下:欢迎讨论大家;)

附博客的 PAT 专题区链接:请戳

 原文地址:http://biaobiaoqi.github.com/blog/2013/08/03/overcome-pat/
 版权声明:自由转载-非商用-非衍生-保持署名| Creative Commons BY-NC-ND 3.0

PAT练习题概览的更多相关文章

  1. 转:PAT练习题概览

    AT(pat.zju.edu.cn)是一个面向 C/C++程序的 Online Judge 系统.相比 ZOJ,HDOJ,POJ 等 ACM 题库,PAT 的题目非常基础,对于数据结构.算法的入门是比 ...

  2. PAT练习题目录

    点题号就能查看题解了,另外代码也放在了开源中国码云上: 甲级:代码集合:https://git.oschina.net/firstmiki/PAT-Advanced-Level-Practise 10 ...

  3. PAT天梯赛练习题 L3-002. 堆栈(线段树查询第K大值或主席树)

    L3-002. 堆栈 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 大家都知道“堆栈”是一种“先进后出”的线性结构,基本操作有 ...

  4. PAT天梯赛练习题 L3-010. 是否完全二叉搜索树(完全二叉树的判断)

    L3-010. 是否完全二叉搜索树 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 将一系列给定数字顺序插入一个初始为空的二叉搜 ...

  5. PAT天梯赛练习题 L3-011. 直捣黄龙(多关键字SPFA+DFS)

    L3-011. 直捣黄龙 时间限制 150 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 本题是一部战争大片 —— 你需要从己方大本营出发,一路 ...

  6. PAT天梯赛练习题 L2-013 红色警报(并查集+逆序加边)

    L2-013. 红色警报 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 战争中保持各个城市间的连通性非常重要.本题要求你编写一 ...

  7. PAT乙级(Basic Level)练习题-NowCoder数列总结

    题目描述 NowCoder最近在研究一个数列: F(0) = 7 F(1) = 11 F(n) = F(n-1) + F(n-2) (n≥2) 他称之为NowCoder数列.请你帮忙确认一下数列中第n ...

  8. 牛客网 PAT乙级(Basic Level)练习题 1023 考新郎

    题目描述 过年期间,老家举行了一场盛大的集体婚礼,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做“考新郎”,具体的操作是这样的: 1. 首先,给每位新娘打扮得几乎一模一样,并盖上大大 ...

  9. PAT甲级练习题1001、1002

    1001 A+B Format (20 分)   Calculate a+b and output the sum in standard format -- that is, the digits ...

随机推荐

  1. ORACLE RMAN备份--差异增量与累积增量的策略实例图

    转自原文 ORACLE RMAN备份--差异增量与累积增量的策略实例图

  2. Oracle 中的Interger类型

    引自 wolfAone, oracle有没有integer类型,这种类型的最大值是多少啊. Integer是Number类型的子类型: NUMBER Type You use the NUMBER d ...

  3. 为什么通过空指针(NULL)能够正确调用类的部分成员函数

    #include <iostream> using namespace std; class B { public: void foo() { cout << "B ...

  4. 《你不知道的JavaScript(上)》笔记——let和const

    笔记摘自:<你不知道的JavaScript(上)>第3章 函数作用域和块作用域 let 1.let 关键字可以将变量绑定到所在的任意作用域中 2.let 为其声明的变量隐式地劫持了所在的块 ...

  5. 4、runtime电源管理模式(内核文档runtime_pm.txt有详细描述)

    系统睡眠模型是让整个系统休眠,而runtime是在系统正常工作的时候单独控制某个设备休眠和唤醒 1. runtime PM流程怎样动态地打开或关闭设备的电源?最简单的方法:在驱动程序里,在open函数 ...

  6. [Algorithms] Binary Search Algorithm using TypeScript

    (binary search trees) which form the basis of modern databases and immutable data structures. Binary ...

  7. OCulus Rift 游戏开发六原则

    本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/46685477 作者:car ...

  8. 一位90后程序员的自述:如何从年薪3w到30w!

    初入职场之时,大多数人都应该考虑过这样的一个问题,如何找到一种实用,简化web流程的方法,在工作之中能有所提升和突破. 学好哪些?基础必须精通! 九层之塔,起于垒土;千里之行,始于足下.入门之前,这些 ...

  9. [Javascript] Validate Data with the Every() Method

    The every method returns true or false based on whether or not every item in the array passes the co ...

  10. JNI——Java调用C/C++函数

    从C/C++到Java,再从Java回到C/C++,今天终于有机会了解了连接Java.C/C++的桥梁——JNI.哈哈!分享一下!   一.简介 JNI是Java native interface的简 ...