PTA刷题
请叫我Oscar
这个作者很懒,什么都没留下…
展开
-
c++中vector如何插入元素
words.insert(words.begin()+3,“插入”); //插入到了words动态数组的第三个元素之后#include <cstdio>#include <vector>#include <algorithm>#include <iostream> using namespace std; int main() { string s[7] = {"aa","bb","cc","dd","ee","ff","gg"}; v原创 2021-09-16 15:55:53 · 3808 阅读 · 0 评论 -
DFS递归版本-java
大体思路:1.思路:递归方法的输入一共4个1.当前树,2.当前节点的值,3.当前递归到的树的层数,4.递归中到达过的最大层数(即整个树的最大高度)。返回值:树的最大高度2.数据结构:1.树使用HashMap<Integer,ArrayList>来代表,其中Integer代表树中节点的值,ArrayList代表节点对应的孩子节点。2.使用ArrayList存储当前层的孩子节点。3.代码:public static int dfs(HashMap<Integer,Array原创 2021-08-26 08:23:11 · 306 阅读 · 0 评论 -
BFS(非递归实现)通过LinkedList充当队列-java
大体思路:1.数据结构:使用到LinkedList来实现队列,BFS要使用到队列来实现,层次顺序存储在ArrayList对象中2.思路:构建一个TreeNode对象,存储对应的值和孩子节点(如果只是二叉树,则只需要有TreeNode left,TreeNode right;如果为多叉树,可以使用ArrayList来存储孩子节点),初始在LinkedList中加入根节点。遍历队列中的值(使用isEmpty函数查看LinkedList中是否为空),将当前队列中的最先进入的元素Parent取出(原创 2021-08-24 16:23:17 · 198 阅读 · 0 评论 -
1020. Tree Traversals (25)-PAT甲级真题-Java
参考了柳婼思路,在此感谢柳神。她的是用C++写成的:传送门自己是用Java写的。java中的TreeMap函数可以根据键自动正序排序的,这个跟C++中的Map异曲同工之妙。import java.util.TreeMap;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { static int[] InOrder; st原创 2021-08-23 20:44:57 · 158 阅读 · 0 评论 -
PAT乙级题1006
题目让我们用字母 B 来表示“百”、字母 S 表示“十”,用 12…n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超过 3 位的正整数。例如 234 应该被输出为 BBSSS1234,因为它有 2 个“百”、3 个“十”、以及个位的 4。输入格式:每个测试输入包含 1 个测试用例,给出正整数 n(<1000)。输出格式:每个测试用例的输出占一行,用规定的格式输出 n。输入样例 1:234结尾无空行输出样例 1:BBSSS1234结尾无空行输入样例 2:原创 2021-08-04 10:14:37 · 121 阅读 · 0 评论