PAT真题满分代码

Github仓库地址

TraningOfPAT [一下链接不可用, 使用上面的Github仓库可以访问]

对练习后的PAT代码存储地方

(^-^)PAT 真题网站传送门

(^-^)POJ 北大OJ

Content

Basic Level(乙级)

  • NULL

Advanced Level(甲级)

  • 1001 A+B Format - Skr-Long

  • 1002 A+B for Polynomials - Skr-Long

  • 1003 Emergency - Skr-Long

  • 1004 Counting Leaves - Skr-Long

  • 1005 Spell It Right - Skr-Long

  • 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

  • 1043 Is it a Binary Search Tree -Mark

  • 1052 Linked List Sorting -Mark

  • 1053 Path of Equal Weight -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 - 二叉查找树的判断(插入序列==先序序列),以及其镜像树的判断(插入序列==先序序列)其各种操作,都与原二叉查找树相反,例,先右后左孩子

  • 1053 Path of Equal Weight - 遍历二叉树(数的静态写法:即指针域用数组或者vector代替),记录顶到叶子结点的结点权和,找出符合要求的路线 并输出路线

链表

  • 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 - 二分法查找进制, 需要找到比较函数, 上下界

  •  

转载于:https://www.cnblogs.com/skrlong/p/10688947.html

你可能感兴趣的:(PAT真题满分代码)