Github仓库地址html
对练习后的PAT代码存储地方git
(^-^)PAT 真题网站传送门github
Content
Basic Level(乙级)
-
NULL数组
Advanced Level(甲级)
-
1001 A+B Format - Skr-Long数据结构
-
1002 A+B for Polynomials - Skr-Long函数
-
1003 Emergency - Skr-Longpost
-
1004 Counting Leaves - Skr-Long网站
-
1005 Spell It Right - Skr-Longui
-
1006 Sign in and Sign out -Skr-Long
-
1007 Maximum Subsequence Sum -Skr-Long
-
1008 Elevator - Skr-Long
-
1009 Product of Polynomials - Skr-Long
-
1010 Radix - Skr-Long
-
1011 Word Cup Betting - Skr-Long
-
1012 The Best Rank - Skr-Long
-
1013 Battle Over Cities - Skr-Long
-
1014 Waiting in Line - Skr-Long
-
1015 Reversible Primes - Skr-Long
-
1016 Phone Bills - Skr-Long
-
1017 Queuing at Bank - Skr-Long
-
1018 Public Bike Management - Skr-Long
-
1019 General Palindromic Number - Skr-Long
-
1020 Tree Traversals - Skr-Long
-
1020 Tree Traversals -Mark
-
1021 Deepest Root - Skr-Long
-
1022 Digital Library - Skr-Long
-
1023 Have Fun with Numbers - Skr-Long
-
1024 Palindromic Number - Skr-Long
-
1025 PAT Ranking - Skr-Long
-
1026 Table Tennis - Skr-Long
-
1032 Sharing -Mark
-
1034 Head of a Gang -Mark
-
1052 Linked List Sorting -Mark
-
1076 Forward on Weibo -Mark
Top Level(顶级)
-
NULL
other Online-Judges
-
POJ 1384 Piggy-Bank - Skr-Long
Algorithm
图
-
1003 Emergency - 最短路径生成 Dijkstra
-
1013 Battle Over Cities - 图的连通性以及连通数量(图的遍历DFS算法)
-
1018 Pulic Bike Management - 图的最短路劲计算, 包含节点权值以及边权的计算 Dijkstra + DFS
-
1021 Deepest Root - 图的遍历以及连通块的计算, DFS算法或者BFS算法, 注意回溯或者避免无向图的回路搜索
-
1034 Head of a Gang - 图的DFS遍历单连通块,使用map实现字符与编号的映射,使用邻接矩阵存储图,点权等
-
1076 Forward on Weibo - 图的BFS带层数遍历单连通块,使用邻接表存储图
树
-
1004 Counting Leaves - 计算每层的叶子节点
-
1020 Tree Traverals - 树的遍历, 后序以及中序还原树, 以及BFS层次遍历树, 树的链式存储
-
1043 Is it a Binary Search Tree - 二叉查找树的判断(插入序列==先序序列),以及其镜像树的判断(插入序列==先序序列)其各类操做,都与原二叉查找树相反,例,先右后左孩子
链表
-
1032 Sharing - 使用链表(静态链表:即指针域使用整形,表明下个结点在结点组中的下标位置)查询相同后缀下的单词 后缀起始点
-
1052 Linked List Sorting - 对链表进行排序(静态链表)
map的使用
-
1006 Sign in and Sign out - 对于map数据结构的运用, 主要利用key的排序,优先输出, 准确来讲就是模拟
-
1002 A+B for Polynomials - 使用map来进行多项式加法的计算
-
1009 Product of Polynomials - 同理使用map, 经过排序key值, 还有更新value来模拟多项式乘法
-
1022 Digital Library - 经过 map以及set来进行书籍信息与id的映射, 而后输出对应信息
queue的使用
-
1014 Waiting in Line - 经过使用queue来模拟
数学
-
1015 Reversible Primes - 计算素数和进制转换, 以及相应进制的十进制转换
-
1023 Hava Fun with Numbers - 大整数的运算, 使用struct模拟正数之间的运算, 存储更大的数字
-
1024 Palindromic Number - 大整数的运算, 会编写大整数的加法, 以及大整数的反转
模拟
-
1005 Spell It Right - 字符串操做, 模拟
-
1008 Elevator - 直接模拟, 简单一遍过
-
1011 World Cup Betting - 简单模拟, 使用了map存储数据
-
1017 Queuing at Bank - 按照数据规则, 筛选适合条件的数据, 排序, 进行时间处理
-
1019 General Palindromic Number - 进制转换以及判断回文数
-
1022 Digital Library - 经过 map以及set来进行书籍信息与id的映射, 而后输出对应信息
-
1026 Table Tennis - 当前我所遇到的最难的模拟, 主要是逻辑比较复杂, 不容易实现 (对1017的一个扩展)
排序
-
1012 The Best Rank - 主要是快速排序以及查询
-
1016 Phone Bills - 使用快排, 须要重写cmp, 直接使用字典序排序, 时间可以使用字符串, 后面转换便可
-
1025 PAT Ranking - 排序
动态规划
-
1007 Maximum Subsequence Sum - 最大和子序列查找
-
POJ 1384 Piggy-Bank - 彻底背包问题, 虽然不知道什么叫彻底背包问题,不妨碍我吹一下
二分法
-
1010 Radix - 二分法查找进制, 须要找到比较函数, 上下界
-